تکنولوژی کامپیوتر

توضیحات درس

درس سه واحدی «تکنولوژی کامپیوتر» با کد درس 22844، از دروس اختیاری سبد سیستم‌های دانشکده علوم ریاضی برای رشته‌ی علوم کامپیوتر است.
عموما در این درس، با برخی از تکنولوژی‌های تولید نرم‌افزار آشنا می‌شویم.

در ارائه‌ی پیش رو، ابتدا با مفاهیم توسعه‌ی نرم‌افزار‌های سمت وب آشنا خواهیم شد.
پس از آن، به طراحی نرم‌افزار‌ها در مقیاس بالا می‌پردازیم. تمرکز اصلی ما با اپلیکیشن‌های داده محور خواهد بود که در این مسیر، مفاهیمی از داده‌های حجیم، سیستم‌های توزیع‌شده و طراحی رویداد محور خواهیم خواند.
در پایان، تعدادی نمونه از طراحی اپلیکیشن‌های بزرگ را بررسی خواهیم کرد.

پیش‌نیاز این درس، تسلط زیاد به برنامه‌نویسی و آشنایی با مفاهیم سیستم عامل و مفاهیم اولیه‌ی شبکه است.
اگر قبلا یک وب‌سایت شخصی ساخته باشید و به مباحث پایگاه‌های داده و شبکه هم مسلط باشید، این مباحث در طول درس به کمک شما خواهد آمد. اما سعی ما این است که این موارد را در طول درس پوشش دهیم.

ساعت ملاقات و رفع اشکال

برای مشاوره، رفع اشکال یا موارد مختلف. می‌توانید از طریق ایمیل alirtofighim+ct1403@gmail.com یا تلگرام t.me/ATofighi با استاد درس در ارتباط باشید. متاسفانه بنده به شکل منظم در دانشکده حضور ندارم، اما با گرفتن وقت قرار قبلی، در اتاق ۱۱۴، واقع در طبقه‌ی اول دانشکده در خدمت شما خواهم بود.

تقویم درس

این تقویم در طول ترم بروز خواهد شد.

بارم‌بندی

  • تمرین‌های عملی:، ۵ سری، ۱۵ نمره در مجموع
  • آزمون میان‌ترم: ۳ نمره
  • آزمون پایان‌ترم: ۳ نمره

کوئرای درس

ریز مواد درس

ریز مواد هنوز نهایی نشده است. یک پیش‌نویس کاملاً ابتدایی، در زیر قرار می‌دهم:
  • Part 1: Fundamentals of Web Programming
    • Introduction to Web Programming
    • Web APIs and Data Exchange
    • Front-End Basics and Backend Integration
    • Databases
    • Containerization with Docker
  • Part 2: Distributed Systems Concepts
    • Core Distributed Systems Basics
    • Replication & Partitioning
    • Consensus & Coordination
  • Part 3: Big Data Ecosystem
    • SSTable & Cassandra
    • Event-Driven Architecture with Kafka
    • Hadoop Ecosystem
    • Spanner & Global Databases
    • Modern Big Data Tools