
مبانی طراحی دامنهمحور (DDD)
در این دورهی آموزشی با اصول طراحی دامنه محور (DDD) آشنا خواهید شد. شما در طی این دوره با عناصر یک مدل دامنه، مفاهیم aggregate، bounded context و همچنین مشکلات متداول در مدلسازی و نحوهی مدیریت پیچیدگی آشنا خواهید شد.

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

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

مدلسازی بصری با استفاده از استاندارد یو.اِم.اِل (UML)
یک محصول نرمافزاری و زمینهی کسبوکار مرتبط با آن، اغلب پیچیده است و درک جنبههای مختلف آن، بدون مدلسازی ممکن نیست. در این دورهی آموزشی با زبان مدلسازی بصری یو.اِم.اِل (UML) و کاربردهای آن در صنعت نرمافزار آشنا خواهید شد. با کامل کردن این دورهی آموزشی شما قادر خواهید بود ضمن درک دیاگرامهای پر کاربرد این زبان، برای مدلسازی در زمینهها و کاربردهای مختلف از این دیاگرامها استفاده کنید. دیاگرامهایی که در این دورهی آموزشی مطرح میشوند، عبارتند از: دیاگرامهای کلاس (Class)، مؤلفه (Component)، بسته (Package) و استقرار (Deployment) به عنوان دیاگرامهایی که جنبههای ساختاری را مدلسازی میکنند و همچنین، دیاگرامهای مورد کاربرد (Use Case)، توالی (Sequence)، وضعیت (State) و فعالیت (Activity) به عنوان دیاگرامهایی که جنبههای رفتاری را مدلسازی میکنند.

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