کتاب های برچسب dependency-injection
تاریخ: ۱۴:۴۷:۴۴ ۱۳۹۷/۵/۱۱ پنج شنبه
توسط: MotoMan
امتیاز: ۲

فریمورک NET Core.، نسبت به همیشه کنترل بیشتری برای معماری برنامه‌های وب ارائه می‌دهد. از دیدگاه معماری نرم افزار، یکی از نکات کلیدی این است که این کنترل بیشتر بر اساس استفاده از تزریق وابستگی است که به عنوان روشی برای پیاده سازی صحیح اصل معکوس سازی وابستگی پیشنهاد شده در اصول SOLID است که توسط Robert C. Martin ایجاد شده است.

با ظهور NET Core.، با DI تعبیه شده در سیستم، چیزها بسیار ساده‌تر شدند. هدف این کتاب دادن دیدی عمیق از نوشتن کد‌های loosely-coupled با استفاده از آخرین ویژگی‌های موجود در NET Core. است. در این کتاب در مورد تزریق سازنده ها، پارامتر، setter‌ها و اینترفیس صحبت می‌شود که با جزئیات و به کمک مثال‌ها توضیح داده شده است که چه تزریقی در چه شرایطی استفاده شود. در این کتاب به شما نشان داده می‌شود که چگونه کلاسی را پیاده سازی کنید که کلاس‌های دیگر را به همراه وابستگی هایشان ایجاد می‌کند، که به آن‌ها IoC Container نیز گفته می‌شود و سپس وابستگی‌ها برای هر کامپوننت MVC از ASP.NET Core را می‌سازند. شما یاد خواهید گرفت تا بین IoC Container ها، کاربرد معکوس سازی کنترل و خود DI که تنها روشی از پیاده سازی IoC از طریق این container‌ها است تمایز قائل شوید. شما همچنین چگونگی ساخت وابستگی ها  برای هر ابزار frontend دیگری مثل Angular را یاد می‌گیرید. شما می‌توانید از سرویس‌های تعبیه شده ارائه شده توسط NET Core. برای ساخت وابستگی‌های شخصی سازی شده خود نیز استفاده کنید.

در انتها، ما درباره‌ی بعضی از الگو‌ها و ضد الگو‌ها برای تزریق وابستگی به همراه تعدادی تکنیک برای ریفکتور کردن برنامه‌های قدیمی و تزریق وابستگی‌ها صحبت می‌کنیم.

تعداد بازدید: ۳۶۵
دیدگاه ها: ۰
تاریخ: ۰:۸:۱۸ ۱۳۹۳/۲/۱۲ جمعه
توسط: MotoMan
امتیاز: ۹
برچسب ها: C Sharp | Dependency Injection | WPF | MVVM | Unity | Design Patterns | XAML |

بعد از "Hello, World" چه چیزی پیش رو دارید؟  توسعه دهندگان WPF و Silverlight ، از فراوانی کتاب‌های عالی، ویدئوها و مقالات آنلاین خوشبخت هستند، چرا که می‌توانند نحوه‌ی ساخت یک برنامه تک صفحه ای را یاد بگیرند.این منابع data binding،dependency properties ، resources ، styles،  effects، control templating و دیگراصول برنامه نویسی xaml را آموزش می‌دهند.
کمبودی در وجود آموزش‌های Mode-View-ViewModel) MVVM) که الگوی غالب و محبوبی برای ساختن یک صفحه‌ی تنهاست وجود ندارد، اما آموزش‌های آن‌ها برای وقتی که شما احتیاج به تحویل یک برنامه‌ی کامل غیر بدیهی دارید ،خیلی کوتاه و ناقص هستند.
صفحه‌ی اول شما به خوبی پیش می‌رود و صفحه‌ی دوم و سوم را هم اضافه می‌کنید.چون شما solution خود را بر اساس قالب راهبری برنامه توکار(Built-in Navigation Application Template) شروع کرده اید و اضافه کردن صفحات جدید، حس آویزان کردن بلوز روی میله‌ی گنجه را دارد.کار شما روی غلتک افتاده تا وقتی که با حقیقت تلخ احتیاجات واقعی یک برنامه روبرو می‌شوید و این وقتی رخ می‌دهد که برنامه‌ی شما به جای سه صفحه دارای سی صفحه است و دیگر فضایی روی میله‌ی گنجه برای سی صفحه وجود ندارد.بعضی از صفحات به صورت pop-up هستند، بعضی دیگر از صفحات وابسته به فعالیت‌های کاربر در صفحه ای دیگر هستند و تغییرات را در قالب رابط کاربری نمایش می‌دهند، بعضی اختیاری هستند  یا فقط به کاربران مجاز نمایش داده خواهند شد،صفحاتی نیز هستند که دائمی اند در حالی که دیگر صفحات در هر لحظه ای که بخواهید می‌توانند گشوده یا بسته شوند.
شما پی خواهید برد که هدایت کردن به صفحه ای که پیش از این نمایش داده می‌شده، احتیاج به ساختن نمونه ای جدید دارد، در صورتی که این چیزی نیست که شما انتظار آن را داشته باشید و برای وحشت زده کردن شما، نمونه‌ی قبلی بدون ذخیره کردن تغییرات از بین رفته است. شما به لاین نتیجه می‌رسید که راهبری(Navigation) تو کار به درد شما نمی‌خورد و تصمیم می‌گیرید که ار هم جداش کنید و از اول شروع کنید.ابتدا ساختن UI Framework مختص به خود را مطرح می‌کنید، اما تصمیم می‌گیرید که ابتدا وضعیت را بررسی کنید.حتما قبلا کسی این راه را رفته است، مطمئنا کسی راهنمایی و کدی را انتشار داده که از عهده‌ی مقیاس، تنوع و پیچیدگی برنامه‌ی دنیای واقعی شما  برآید.
یک نفر این کار را کرده.کتاب خانه‌ی Prism  مایکروسافت، نمونه کد‌ها و کتابی که هم اکنون مطالعه می‌کنید، اوج 5 سال تحقیق و جست و جو برای گرد آوری بهترین پیشنهاد‌ها و تکنیک‌ها از حرفه ای‌ها و شاغلین در این زمینه است.

تعداد بازدید: ۳۵۵۰
دیدگاه ها: ۱
تاریخ: ۱۶:۲۶:۰ ۱۳۹۲/۱۱/۱۲ شنبه
توسط: MotoMan
امتیاز: ۱۰
برچسب ها: Dependency Injection | AngularJS |

تزریق وابستگی، اصطلاحی هست که معمولا در دنیای طراحی نرم افزارهای شی گرا به کار برده می‌شود؛ و هسته‌ی AngularJS به آن وابسته است. در این کتاب به شما آموزش داده می‌شود که چرا و چگونه از Dependency Injection در AngularJS استفاده کنیم.

تعداد بازدید: ۲۳۷۰
دیدگاه ها: ۰
تاریخ: ۱۶:۵۶:۴۱ ۱۳۹۲/۳/۴ شنبه
توسط: MotoMan
امتیاز: ۵
برچسب ها: C Sharp | Dependency Injection | WPF | MVVM | MEF | Unity | IOC |

بعد از "Hello, World" چه چیزی پیش رو دارید؟  توسعه دهندگان WPF و Silverlight ، از فراوانی کتاب‌های عالی، ویدئوها و مقالات آنلاین خوشبخت هستند، چرا که می‌توانند نحوه‌ی ساخت یک برنامه تک صفحه ای را یاد بگیرند.این منابع data binding،dependency properties ، resources ، styles،  effects، control templating و دیگراصول برنامه نویسی xaml را آموزش می‌دهند.

کمبودی در وجود آموزش‌های Mode-View-ViewModel) MVVM) که الگوی غالب و محبوبی برای ساختن یک صفحه‌ی تنهاست وجود ندارد، اما آموزش‌های آن‌ها برای وقتی که شما احتیاج به تحویل یک برنامه‌ی کامل غیر بدیهی دارید ،خیلی کوتاه و ناقص هستند.

صفحه‌ی اول شما به خوبی پیش می‌رود و صفحه‌ی دوم و سوم را هم اضافه می‌کنید.چون شما solution خود را بر اساس قالب راهبری برنامه توکار(Built-in Navigation Application Template) شروع کرده اید و اضافه کردن صفحات جدید، حس آویزان کردن بلوز روی میله‌ی گنجه را دارد.کار شما روی غلتک افتاده تا وقتی که با حقیقت تلخ احتیاجات واقعی یک برنامه روبرو می‌شوید و این وقتی رخ می‌دهد که برنامه‌ی شما به جای سه صفحه دارای سی صفحه است و دیگر فضایی روی میله‌ی گنجه برای سی صفحه وجود ندارد.بعضی از صفحات به صورت pop-up هستند، بعضی دیگر از صفحات وابسته به فعالیت‌های کاربر در صفحه ای دیگر هستند و تغییرات را در قالب رابط کاربری نمایش می‌دهند، بعضی اختیاری هستند  یا فقط به کاربران مجاز نمایش داده خواهند شد،صفحاتی نیز هستند که دائمی اند در حالی که دیگر صفحات در هر لحظه ای که بخواهید می‌توانند گشوده یا بسته شوند.

شما پی خواهید برد که هدایت کردن به صفحه ای که پیش از این نمایش داده می‌شده، احتیاج به ساختن نمونه ای جدید دارد، در صورتی که این چیزی نیست که شما انتظار آن را داشته باشید و برای وحشت زده کردن شما، نمونه‌ی قبلی بدون ذخیره کردن تغییرات از بین رفته است. شما به لاین نتیجه می‌رسید که راهبری(Navigatio) تو کار به درد شما نمی‌خورد و تصمیم می‌گیرید که ار هم جداش کنید و از اول شروع کنید.ابتدا ساختن UI Framework مختص به خود را مطرح می‌کنید، اما تصمیم می‌گیرید که ابتدا وضعیت را بررسی کنید.حتما قبلا کسی این راه را رفته است، مطمئنا کسی راهنمایی و کدی را انتشار داده که از عهده‌ی مقیاس، تنوع و پیچیدگی برنامه‌ی دنیای واقعی شما  برآید.

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

تعداد بازدید: ۲۶۶۴
دیدگاه ها: ۲
تاریخ: ۷:۱۰:۱۰ ۱۳۹۲/۲/۱۰ سه شنبه
توسط: MotoMan
امتیاز: ۲۱

تزریق وابستگی اولین و مهم‌ترین مبحثی  هست که در این کتاب مد نظر قرار گرفته است.این کتاب در مورد .NET  نیز هست که البته از اهمیت کمتری برخوردار است. زبان  C# ، برای مثال‌های کد،مورد استفاده قرار گرفته است، ولی کلیه مباحث این کتاب ،به راحتی برای برای زبان‌ها و پلت فرم‌های دیگر قابل استفاده است.

در حقیقت، من بیشتر مباحث و الگوهای مهم و پایه ای را از خواندن کتاب هایی فرا گرفتم که زبان مورد استفاده در آنها ، C++  یا  Java بودند.

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

مفاهیم مورد استفاده در این کتاب ، همگی مربوط به برنامه نویسی شی گرا هستند.

مشکلی که DI‌ها حل می‌کنند(نگهداری کد)، کاملا کلی هست، ولی دستیابی به هدف مورد نظر فقط در حوزه‌ی زبان‌های شی گرا و نوع امن مانند :  C#, Visual Basic, Java,C++ امکان پذیر است. بنابراین از DI نمی‌توانید در زبان‌های رویه ای استفاده کنید و همچنین بهترین راه حل برای زبان‌های پویا و تابعی نخواهد بود.

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

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

 

تعداد بازدید: ۴۱۶۳
دیدگاه ها: ۲
loading...

لطفا منتظر بمانید...