الگوهای طراحی در C# 5.0
یکی از ابزارهای مهمی که یک برنامهنویس در اجرای یک پروژهی نرمافزاری باید از آن بهرهمند باشد، درک مفهومی به نام الگو و آگاهی از الگوهای رایج و اثبات شده است. الگوها، راهحلهایی انتزاعی هستند که بر اساس تجربیات گروه بیشماری از برنامهنویسان در طول سالهای برنامهنویسی بهدست آمدهاند و درستی و اعتبار آنها، به اثبات رسیده است. الگوها دیدگاهی فراهم میکنند که برنامهنویسان با استفاده از آن میتوانند خصوصیتهایی مانند قابلیت استفادهی مجدد، آزمونپذیری و نگهداریپذیری را به شکل بهتری برای برنامههای خود فراهم کنند. در این کتاب تمام 23 الگوی GoF که معروفترین الگوهای طراحی بوده و در کتاب ماندگار Design Patterns: Elements of Object-Oriented Software در اواخر سال 1994 معرفی شد، آموزش داده میشود. این کتاب با دو دیدگاه تحلیلی و کاربردی نوشته شده و مؤلف سعی نموده، وراي بحث نظری هر الگو، حاشیهها و پیامدهای آن را بهطور عملیتری بررسی کند و الگوها را در سکوی NET. به زبان #C با نگاهي به جدیدترین قابلیتهای آنها آموزش بدهد و نقاط قوت و ضعف الگوها را بیان نماید.
.NET , .NET 2 , .NET 3.5 , .NET 4 , .NET 4.5 , .NET Framework , C# , Design Pattern , مايکروسافت , Patterns , برنامهنويسی , برنامهنويسی سمت سرور , نرمافزار کاربردي , مهندسي نرمافزار , UML , بک-اند
نوبت چاپ | دو |
---|---|
ویرایش | یک |
وزن | 600 گرم |
جلد | 1 از 1 |
موجود است؟ | بلی |
---|---|
چاپ شده است؟ | بلی |
در حال پیش فروش است؟ | خیر |
کتاب الکترونیکی است؟ | خیر |
فصل 1: مروري بر شيءگرايي و زبان #C
فصل 2: مروري بر UML
فصل 3: مروري بر اصول طراحي شيءگرا
بخش دوم: الگوهاي ساختاري يا Structural
فصل 4: الگوي آذينگر يا Decorator
فصل 5: الگوي واسطه يا Proxy
فصل 6: الگوي پل يا Bridge
فصل 7: الگوي Composite
فصل 8: الگوي Flyweight
فصل 9: الگوي تطبيقدهنده، هماهنگساز يا Adapter
فصل 10: الگوي نماي بيروني يا Facade
بخش سوم: الگوهاي ايجادي يا Creational
فصل 11: الگوي نمونهي اوليه يا Prototype
فصل 12: الگوي متد كارخانهاي يا Factory Method
فصل 13: الگوي شيء يگانه يا Singleton
فصل 14: الگوي كارخانهي انتزاعي يا Abstract Factory
فصل 15: الگوي خانهساز يا Builder
بخش چهارم: الگوهاي رفتاري يا Behavioral
فصل 16: الگوي Strategy
فصل 17: الگوي وضعيت يا State
فصل 18: الگوي متد قلابدار يا Template Method
فصل 19: الگوي زنجيرهي مسئوليت يا Chain of Responsibility
فصل 20: الگوي فرمان يا Command
فصل 21: الگوي تكرارگر يا Iterator
فصل 22: الگوي ميانجي، كارگردان يا Mediator
فصل 23: الگوي مشاهدهگر يا Observer
فصل 24: الگوي ديدارگر يا Visitor
فصل 25: الگوي مفسر يا Interpreter
فصل 26: الگوي خاطره يا Memento
# | موضوع | عنوان | توضیح | دانلود |
---|---|---|---|---|
1 | نمونه pdf | مجموعه صفحات قسمت ابتدايي کتاب شامل فهرست و بخشي از فصل يک | دانلود | |
2 | کُدهای ضميمه | سورس کامل کُدها و مثالهاي کتاب | دانلود |
در صفحه 62 در نمودار کامنتی که طراحی کردید متد Operation خروجی ندارد ( void ) ولی در کد آن از دستور return استفاده کرده اید .
در صفحه 86 کتاب برای مقایسه متغیر bd با null باید از عملگر == استفاده بشه نه =! .
سلام آقای عمرانی ، در صفحه 124 و در کلاس ComponentCollection عملیات مدیریت Component ها رو قرار دادین . در این کلاس یک فیلد به نام Parent تعریف کردید که ارجا Component پدر رو تنظیم می کنه . خوب الان چطور زمانی که یک Component رو دارید به عنصر پدرش دسترسی داشته باشیم ؟ چون در متد Add و Remove اونو در فیلد Parent کامپوننت فرزند قرار ندادین
حق با شما است. البته در این قسمت موضوع صحبت و تاکید بر نحوه تعریف یک کلاس مجزا برای نگهداری کمپوننت های فرزند است که خودش اعتبار کمپوننت هایی که به او افزوده می شود را بررسی می کند (به جای یک لیست List ساده از جنس Component که هر چیزی را در آن می توان درج کرد و هیچ اعتباری را هم بررسی نمی کند). در خصوص نحوه تعریف یا مدیریت ارجاع به parent در صفحات قبل توضیح داده شده است. برای تکمیل کُد این صفحه می توانید به روشی که در قسمت ج توضیح داده شده، در متد Add() پس از افزودن یک Component به لیستی که داخل ComponentCollection قرار دارد متد SetParent() آن را صدا زده و فیلد خصوصی parent را به component ای که در حال افزوده شدن به این ComponentCollection است به آن سازندة آن پاس بدهید. داخل متد Remove() نیز متد ClearParent() را برای کمپوننتی که حذف شده صدا بزنید.