طراحی سیستم System Design

توضیحات کوتاه

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

در طی این دوره با ابزارها و الگوهای معماری آشنا میشویم و سناریوهای دنیای واقعی را میشونیم.

همچنین یادمیگیریم که چطور باید تصمیمات طراحی را مستند کرده و همچنین بررسی بر روی این مستندات را انجام دهیم.

ثبت نام و برنامه کلاسی

استاد پرهام درویشی | سماتک

پرهام درویشی

از ۲,۷۰۰,۰۰۰ تومان

تومان

سرفصل‌های دوره طراحی سیستم design system

  • مبانی و مقدمه و آشنایی با مفاهیم معماری و اصول توسعه نرم افزار
  • اصول مقیاس پذیری و تعادل بار
  • انواع معماری ها
  • مدیریت داده
  • ارتباط بین سرویس ها
  • پایداری سرویس ها/سیستم
  • بهینه سازی عملکرد
  • مانیتورینگ

پیرامون چالش های دنیای واقعی شبیه به افزایش درخواست ها و نحوه پاسخگوئی ما با نگاه System Design:

  • مقیاس‌پذیری (Scalability): چگونه می‌توان سیستمی طراحی کرد که با افزایش کاربران یا داده‌ها بدون افت عملکرد رشد کند؟ (افقی در برابر عمودی)
  • دسترس‌پذیری بالا (High Availability): چگونه سیستم را طوری طراحی کنیم که حتی در صورت بروز خطا، سرویس‌دهی قطع نشود؟
  • توزیع‌شدگی سیستم‌ها (Distributed Systems): چگونه بین چندین سرور یا دیتاسنتر سیستم را تقسیم کنیم، بدون از دست رفتن هماهنگی یا سازگاری داده‌ها؟
  • طراحی دیتابیس برای مقیاس‌پذیری: چه زمانی باید از SQL استفاده کنیم و چه زمانی از NoSQL؟ Sharding و Replication را چطور پیاده کنیم؟
  • مدیریت بار ترافیکی بالا (Load Balancing):  چگونه ترافیک کاربران را بین چند سرور به‌درستی توزیع کنیم تا هیچ سروری بیش از حد بار نگیرد؟
  • طراحی برای Fault Tolerance: چگونه سیستم را طوری طراحی کنیم که در صورت خرابی بخشی از سیستم، بقیه بخش‌ها به کار ادامه دهند؟
  • سازگاری داده‌ها (Data Consistency): در یک سیستم توزیع‌شده، چگونه تضمین کنیم که داده‌ها بین نودها سازگار بمانند؟ (CAP Theorem)

  • طراحی API های قابل نگهداری و توسعه: چگونه API هایی طراحی کنیم که با رشد سیستم، همچنان ساده، امن و قابل توسعه باقی بمانند؟

  • تأخیر و کارایی (Latency vs Throughput): چگونه تصمیماتی بگیریم که بین پاسخ‌گویی سریع و پردازش حجم زیاد، تعادل ایجاد کنیم؟
  • سیستم‌های صف و پردازش آسنکرون (Asynchronous Processing): چه زمانی استفاده از Message Queue مثل Kafka یا RabbitMQ ضروری است؟ چگونه سیستم را Event-Driven طراحی کنیم؟
  • نحوه عیب یابی: بررسی راهکارها مناسب لاگ زدن.

 

مخاطب این دوره:

  • توسعه‌دهندگان نرم‌افزار (Frontend / Backend / Full-stack).
  • مهندسان DevOps یا Cloud.
  • دانشجویان علاقه‌مند به ورود به دنیای مهندسی نرم‌افزار سطح بالا.
  • افرادی که می‌خواهند برای مصاحبه‌های فنی شرکت‌های بزرگ آماده شوند.
  • مدیران محصول که می خواهند دید فنی به دست آورند.
  • مالکان محصول که می خواهند دید فنی به دست آورند.

محل برگزاری

دوره‌های مرتبط

برنامه نویسی مقدماتی C#
برنامه نویسی مقدماتی C#

دوره MS .NET Fundamentals آموزش برنامه نویسی مقدماتی C#

دوره آموزش سی‌شارپ (C#) – مقدماتی تا پیشرفته

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

قیمت :

از ۲,۵۰۰,۰۰۰ تومان

دوره حضوری / آنلاین برنامه نویسی Programming in C#1 - Windows Forms
دوره حضوری / آنلاین برنامه نویسی Programming in C#1 - Windows Forms

دوره برنامه نویسی Programming in C#1 – Windows Forms

شما می توانید پس از گذراندن دوره آموزشی .NET Fundamentals یا دوره آموزش برنامه نویسی C# مقدماتی، به سراغ دوره آموزشی برنامه نویسی Programming in C#1 بروید. دوره برنامه نویسی Programming in C#1 دوره ای کامل است و پس از گدراندن آن شما قدر خواهید بود یک اپلیکیشن ویندوزی یا Windows Application برنامه نویسی کنید. دوره آموزشی برنامه نویسی سی شارپ در سماتک فارغ التحصیلان بسیار زیادی را برای ورود به بازار کار برنامه نویسی در شرکت های توسعه دهنده نرم افزار آماده نموده است.

قیمت :

از ۴,۹۰۰,۰۰۰ تومان

دوره آنلاین روش کاربردی تحلیل نیازمندی های نرم افزار Software Requirements Analysis
دوره آنلاین روش کاربردی تحلیل نیازمندی های نرم افزار Software Requirements Analysis

دوره روش کاربردی تحلیل نیازمندی های نرم افزار Software Requirements Analysis

«اگر نیازمندی ها را به درستی شناسایی نکنید، خوب انجام دادن بقیه پروژه، دیگر اهمیتی نخواهد داشت» کارل ای ویِگرز
حوزه نیازمندی های نرم افزاری یکی از مهم ترین حوزه ها در توسعه نرم افزار است و با وجود پیشرفت های چشم گیر، مهندسی نیازمندی ها جزء ضعیف ترین حلقه ها در زنجیره مهندسی نرم افزار است. هدف این دوره، ارائه چارچوبی برای تحلیل نیازمندی های نرم افزار است و به تحلیل گران می آموزد که چگونه نقش خود را در پروژه های تولید نرم افزار ایفا کنند.

قیمت :

از ۴,۹۰۰,۰۰۰ تومان

MCSA
MCSA

دوره MCSA کاربردی ( دوره جامع Active Directory و سرویس های کلیدی ویندوز سرور)

دوره MCSA (Microsoft Certified Solutions Associate) اولین قدم برای افرادی است که به دنبال فعالیت در حوزه شبکه‌های مبتنی‌بر سیستم عامل مایکروسافت هستند. همچنین دوره MCSA پیش‌نیاز دوره‌های پیشرفته‌تر مایکروسافت از جمله دوره MCSE است.

قیمت :

از ۷,۹۰۰,۰۰۰ تومان

توضیحات کوتاه

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

در طی این دوره با ابزارها و الگوهای معماری آشنا میشویم و سناریوهای دنیای واقعی را میشونیم.

همچنین یادمیگیریم که چطور باید تصمیمات طراحی را مستند کرده و همچنین بررسی بر روی این مستندات را انجام دهیم.

قیمت :

از ۲,۷۰۰,۰۰۰ تومان

امتیاز
0 از 0 رأی
بدون امتیاز 0 رای
از ۲,۷۰۰,۰۰۰ تومان
نوع دوره : حضوری و آنلاین
پیش نیاز : یک سال تجربه برنامه‌نویسی
15 ساعت
پرهام درویشی
پرهام درویشی
حوزه برنامه نویسی

اشتراک در
اطلاع از
بازخورد (Feedback) های اینلاین
مشاهده همه دیدگاه ها