در این دوره به مفاهیمی مانند معکوس سازی وابستگیها و تزریق وابستگیها پرداخته خواهد شد. بسیاری از برنامه نویسها مفاهیم DIP، IoC و DI را با هم مخلوط کرده و بجای هم بکار میبرند. بنابراین قصد داریم هر یک را به تفصیل بررسی کرده و تفاوتهای آنها را برشماریم. سپس سعی خواهیم کرد تا یک کتابخانه تزریق وابستگیهای ابتدایی را ایجاد کرده و نهایتا نحوه استفاده از چندین فریم ورک IOC موجود بررسی خواهند شد. این سری پیشنیاز درک مفاهیمی است که در لایه بندی اجزای مختلف برنامهها مورد نیاز میباشند.
- آشنایی ابتدایی با مباحث Reflection
- مخزن کد مثالهای آن
پیشنیازهای دوره
- آشنایی با زبان سیشارپ- آشنایی ابتدایی با مباحث Reflection
- مخزن کد مثالهای آن
سطح دوره
متوسطلیست سرفصلها
- اصل معکوس سازی وابستگیها
- الگوی معکوس سازی کنترل چیست؟
- تزریق وابستگیها
- آشنایی با نحوه ایجاد یک IoC Container
- بایدها و نبایدهای استفاده از IoC Containers
- استفاده از StructureMap به عنوان یک IoC Container
- Lazy loading در تزریق وابستگیها به کمک StructureMap
- تزریق خودکار وابستگیها در برنامههای ASP.NET Web forms
- تزریق خودکار وابستگیها در برنامههای ASP.NET MVC
- استفاده از StructureMap جهت تزریق وابستگیها در برنامههای WPF و الگوی MVVM
- استفاده از Factories برای حذف Service locators در برنامههای WinForms
- تزریق خودکار وابستگیها در ASP.NET Web API به همراه رها سازی خودکار منابع IDisposable
- اصول طراحی یک سیستم افزونه پذیر به کمک StructureMap
لیست مطالب تکمیلی
- مراحل Refactoring یک قطعه کد برای اعمال تزریق وابستگیها
- تزریق وابستگیها و سناریوهای بسیار متعدد موجود
- استفاده از Delegates بجای اینترفیسها در تزریق وابستگیها
- مدیریت استثناهای رخ داده در Application_Start یک برنامهی ASP.NET
- رها سازی منابع IDisposable در StructureMap
- تزریق وابستگیها در حالتیکه از یک اینترفیس چندین کلاس مشتق شدهاند
- تزریق وابستگیها در فیلترهای ASP.NET MVC