کتاب الگوهای طراحی نرمافزار: راهنمای فشرده و کاربردی (بر اساس Patterns kompakt) با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB
الگوهای طراحی نرمافزار: راهنمای فشرده و کاربردی (بر اساس Patterns kompakt) الگوهای طراحی نرمافزار: راهنمای فشرده و کاربردی (بر اساس Patterns kompakt) آیا میخواهید کدنویسی خود را به سطح بالاتری ارتق...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره الگوهای طراحی نرمافزار: راهنمای فشرده و کاربردی (بر اساس Patterns kompakt)
موضوع کلی: الگوهای طراحی نرمافزار
موضوع میانی: الگوهای طراحی پایهای و پرکاربرد
📋 سرفصلهای دوره
- 1. مقدمهای بر الگوهای طراحی نرمافزار
- 2. اهمیت الگوهای طراحی در مهندسی نرمافزار
- 3. تاریخچه و ریشههای الگوهای طراحی
- 4. مفهوم الگو (Pattern) در مهندسی نرمافزار
- 5. دستهبندی الگوهای طراحی: ایجاد، ساختاری، رفتاری
- 6. معرفی الگوهای ایجاد (Creational Patterns)
- 7. چرا به الگوهای ایجاد نیاز داریم؟
- 8. الگوی Singleton: اطمینان از یک نمونه منحصر به فرد
- 9. پیادهسازی الگوی Singleton
- 10. نکات و تلههای الگوی Singleton
- 11. الگوی Factory Method: ایجاد اشیاء در کلاس والد، اما اجازه دادن به زیرکلاسها برای تصمیمگیری
- 12. کاربرد الگوی Factory Method
- 13. مزایا و معایب الگوی Factory Method
- 14. الگوی Abstract Factory: ارائه رابطی برای ایجاد خانوادهای از اشیاء مرتبط بدون مشخص کردن کلاسهایشان
- 15. مقایسه Abstract Factory و Factory Method
- 16. مثالهای کاربردی Abstract Factory
- 17. الگوی Builder: جدا کردن ساخت یک شیء پیچیده از نمایش آن تا همان فرایند ساخت بتواند نمایشهای مختلفی را ایجاد کند
- 18. مراحل ساخت در الگوی Builder
- 19. استفاده از Builder برای ساخت اشیاء پیچیده
- 20. الگوی Prototype: ایجاد اشیاء جدید با کپی کردن یک شیء موجود
- 21. چگونگی کارکرد Prototype
- 22. کلونینگ در پایتون و Java
- 23. معرفی الگوهای ساختاری (Structural Patterns)
- 24. اهمیت الگوهای ساختاری در سازماندهی کلاسها و اشیاء
- 25. الگوی Adapter: تبدیل رابط یک کلاس به رابطی دیگر که کلاینت انتظار دارد
- 26. انواع Adapter: شیء و کلاس
- 27. کاربرد Adapter در سیستمهای موجود
- 28. الگوی Bridge: جدا کردن انتزاع از پیادهسازی تا هر دو بتوانند مستقل از یکدیگر تغییر کنند
- 29. تفاوت Bridge و Adapter
- 30. مدیریت پیچیدگی با Bridge
- 31. الگوی Composite: کامپایل کردن اشیاء به ساختارهای درختی برای نمایش سلسله مراتب "جزء-کل"
- 32. کاربرد Composite در ساختارهای درختی
- 33. مثالهایی از Composite در UI
- 34. الگوی Decorator: اضافه کردن مسئولیتها به یک شیء به صورت پویا
- 35. تفاوت Decorator و Inheritance
- 36. استفاده از Decorator برای انعطافپذیری
- 37. الگوی Facade: ارائه یک رابط واحد به مجموعهای از رابطها در یک زیرسیستم
- 38. سادهسازی تعاملات با Facade
- 39. مزایای استفاده از Facade
- 40. الگوی Flyweight: استفاده از اشتراکگذاری برای پشتیبانی از تعداد زیاد اشیاء ریز
- 41. مفهوم Flyweight و اشتراکگذاری حالت
- 42. کاربرد Flyweight در حافظه
- 43. الگوی Proxy: ارائه یک جایگزین یا نماینده برای شیء دیگر برای کنترل دسترسی به آن
- 44. انواع Proxy: Remote, Virtual, Protection
- 45. موارد استفاده Proxy
- 46. معرفی الگوهای رفتاری (Behavioral Patterns)
- 47. نقش الگوهای رفتاری در ارتباط و تخصیص مسئولیت بین اشیاء
- 48. الگوی Chain of Responsibility: اجتناب از تعیین گیرنده درخواست به صورت صریح با دادن بیش از یک شیء فرصت رسیدگی به درخواست را
- 49. کاربرد Chain of Responsibility در مدیریت رویدادها
- 50. طراحی زنجیرههای انعطافپذیر
- 51. الگوی Command: کپسوله کردن یک درخواست به عنوان یک شیء، و بدین ترتیب به شما اجازه میدهد کلاینتها را با درخواستهای مختلف پارامتری کنید، صف درخواستها را در صف قرار دهید یا آنها را ثبت کنید، و عملیات برگشتپذیر را پشتیبانی کنید
- 52. الگوهای Undo/Redo با Command
- 53. کاربرد Command در معماریهای رویداد محور
- 54. الگوی Interpreter: با توجه به گرامر تعریف شده، جملات یک زبان را تعریف میکند
- 55. طراحی مفسرهای ساده
- 56. محدودیتهای Interpreter
- 57. الگوی Iterator: ارائه راهی برای دسترسی ترتیبی به عناصر یک مجموعه اشیاء بدون نمایان کردن نمایش داخلی آن
- 58. کاربرد Iterator در مجموعهها
- 59. تکرار سفارشی با Iterator
- 60. الگوی Mediator: تعریف یک شیء که چگونگی تعامل بین مجموعهای از اشیاء دیگر را کپسوله میکند
- 61. پیچیدگی ارتباطات با Mediator
- 62. کاهش وابستگیها با Mediator
- 63. الگوی Memento: گرفتن و ذخیره حالت داخلی یک شیء بدون نقض تعبیه آن، به طوری که شیء بتواند بعداً به آن حالت بازگردانده شود
- 64. مدیریت وضعیت با Memento
- 65. بازیابی وضعیت در برنامههای گرافیکی
- 66. الگوی Observer: تعریف یک وابستگی یک به چند بین اشیاء، به طوری که وقتی یک شیء وضعیت خود را تغییر میدهد، همه وابستگان آن به طور خودکار مطلع و بهروز میشوند
- 67. الگوی Publish-Subscribe (Pub-Sub)
- 68. کاربرد Observer در نوتیفیکیشنها
- 69. الگوی State: اجازه دادن به یک شیء برای تغییر رفتار خود در زمانی که حالت داخلی آن تغییر میکند
- 70. مدیریت وضعیت پیچیده با State
- 71. انتقال حالتها در شیء
- 72. الگوی Strategy: تعریف خانوادهای از الگوریتمها، هر کدام را کپسوله کردن و آنها را قابل تعویض کردن
- 73. انتخاب الگوریتم در زمان اجرا
- 74. مزایای استفاده از Strategy
- 75. الگوی Template Method: تعریف اسکلت یک الگوریتم در یک عملیات، اما به زیرکلاسها اجازه دادن برای بازتعریف مراحل خاص الگوریتم بدون تغییر ساختار کلی آن
- 76. استانداردسازی فرایندها با Template Method
- 77. انعطافپذیری در مراحل الگوریتم
- 78. الگوی Visitor: تعریف یک عملیات جدید که روی عناصر یک ساختار شیء انجام میشود بدون تغییر کلاسهای آن عناصر
- 79. اضافه کردن عملیات بدون تغییر کلاسهای اصلی
- 80. کاربرد Visitor در پردازش دادهها
- 81. مروری بر الگوهای طراحی پایهای
- 82. پایههای طراحی شیء گرا
- 83. قوانین SOLID و ارتباط آنها با الگوهای طراحی
- 84. معرفی الگوهای کمکی (Helper Patterns)
- 85. الگوی Null Object: برای حذف نیاز به بررسی مقادیر null
- 86. استفاده از Null Object برای سادهسازی کد
- 87. الگوی Specification: برای تعریف شرایط و منطق فیلترینگ
- 88. کاربرد Specification در پایگاه داده و سیستمهای پرس و جو
- 89. الگوی Fluent Interface: برای ایجاد یک API قابل خواندن
- 90. طراحی APIهای خواناتر با Fluent Interface
- 91. الگوی Specification Pattern در عمل
- 92. استفاده ترکیبی از الگوها
- 93. الگوهای طراحی و معماری نرمافزار
- 94. ارتباط الگوهای طراحی با الگوهای معماری
- 95. الگوهای معماری رایج (MVC, MVVM, Microservices)
- 96. نقش الگوهای طراحی در پیادهسازی الگوهای معماری
- 97. بهترین شیوهها در استفاده از الگوهای طراحی
- 98. چگونه الگوی مناسب را انتخاب کنیم؟
- 99. اشتباهات رایج در استفاده از الگوهای طراحی
- 100. تست و اشکالزدایی برنامههای مبتنی بر الگو
تگها:
design patterns
OOP
Patterns kompakt
Practical Design Patterns
software architecture
Software Design Patterns
آموزش طراحی نرمافزار
الگوهای پرکاربرد
الگوهای طراحی پایهای
الگوهای طراحی نرمافزار
راهنمای فشرده
طراحی نرمافزار
معماری نرمافزار
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.