کتاب برنامه‌نویسی شیءگرا: راهنمای عملی برای حرفه‌ای‌ها با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB

249,950 تومان
پرداخت اقساطی
در صورت خرید اقساطی هر قسط: 62,488 تومان
۴ قسط ماهانه. بدون سود، چک و ضامن.
پرداخت اقساطی با دیجی‌پی پرداخت اقساطی با ترب‌پی

🎓 دوره آموزشی جامع

📚 اطلاعات دوره

عنوان دوره: دوره برنامه‌نویسی شیءگرا: راهنمای عملی برای حرفه‌ای‌ها

موضوع کلی: برنامه نویسی

موضوع میانی: برنامه‌نویسی شیءگرا (OOP)

📋 سرفصل‌های دوره

  • 1. مفاهیم پایه‌ای شیءگرایی: کلاس و آبجکت
  • 2. تفاوت برنامه‌نویسی ساخت‌یافته و شیءگرا
  • 3. تغییرپذیری و تغییرناپذیری در اشیاء
  • 4. ساختار و نحو تعریف کلاس در زبان‌های رایج
  • 5. عملگر new و تخصیص حافظه در heap و stack
  • 6. مفهوم this و ارجاع به خود شیء
  • 7. سازنده‌ها (Constructors): پیش‌فرض، پارامتری و کپی
  • 8. متدهای مخرب (Destructors) و مدیریت منابع
  • 9. بارگذاری بیش ازحد متدها (Method Overloading)
  • 10. کپسوله‌سازی داده‌ها: سطح دسترسی private و public
  • 11. تغییردهنده‌های دسترسی (Modifiers): protected و internal
  • 12. متدهای getter و setter و ویژگی‌های محاسبه‌شده
  • 13. ارث‌بری (Inheritance): مفهوم و پیاده‌سازی
  • 14. سازمان‌دهی سلسله‌مراتب کلاس‌ها
  • 15. مفهوم کلاس پایه و کلاس مشتق‌شده
  • 16. نحوه فراخوانی سازنده کلاس والد
  • 17. بازنویسی متدها (Method Overriding)
  • 18. چندریختی (Polymorphism): ایستا و پویا
  • 19. رابطه‌های میان اشیاء: association و aggregation و composition
  • 20. مفهوم this و super در ارث‌بری
  • 21. کلاس‌های انتزاعی (Abstract Classes)
  • 22. رابطه‌ها (Interfaces) و قراردادهای برنامه‌نویسی
  • 23. تفاوت کلاس انتزاعی و رابط در طراحی
  • 24. چندریختی از طریق رابط‌ها
  • 25. پیاده‌سازی چندگانه رابط‌ها (Multiple Inheritance of Interface)
  • 26. کلاس‌های تو در تو و کلاس‌های داخلی
  • 27. کلاس‌های نهایی (Sealed/Final Classes)
  • 28. متغیرها و متدهای ایستا (Static Members)
  • 29. کلاس‌های ایستا و کلاس‌های تکنمونه (Singleton)
  • 30. مفهوم boxing و unboxing در نوع‌های مقداری و ارجاعی
  • 31. مقایسه اشیاء: عملگر == و متد equals
  • 32. کپی سطحی و کپی عمیق اشیاء
  • 33. مفهوم هشکد (HashCode) در اشیاء
  • 34. زنجیره‌ای از سازنده‌ها (Constructor Chaining)
  • 35. متدهای الحاقی و متدهای بسطی (Extension Methods)
  • 36. مدیریت خطا در شیءگرایی: try-catch و throw
  • 37. بلوک finally و پاک‌سازی خودکار منابع
  • 38. استثناهای سفارشی (Custom Exceptions)
  • 39. الگوی طراحی Factory Method برای ایجاد اشیاء
  • 40. الگوی طراحی Builder برای اشیاء پیچیده
  • 41. الگوی طراحی Strategy و وابستگی به رابط
  • 42. الگوی طراحی Observer و رویدادها
  • 43. الگوی طراحی Decorator برای افزودن رفتار
  • 44. الگوی طراحی Adapter برای تطبیق رابط‌ها
  • 45. الگوی طراحی Composite برای ساختار درختی
  • 46. الگوی طراحی Template Method برای الگوریتم‌های پایه
  • 47. الگوی طراحی Proxy برای کنترل دسترسی
  • 48. الگوی طراحی Command برای عملیات قابل بازگشت
  • 49. الگوی طراحی State برای تغییر رفتار بر اساس حالت
  • 50. مفهوم SOLID: تک‌مسئولیتی (Single Responsibility)
  • 51. مفهوم SOLID: باز-بسته (Open/Closed)
  • 52. مفهوم SOLID: جایگزینی لیسکوف (Liskov Substitution)
  • 53. مفهوم SOLID: تفکیک رابط‌ها (Interface Segregation)
  • 54. مفهوم SOLID: وارونگی وابستگی (Dependency Inversion)
  • 55. تزریق وابستگی (Dependency Injection) دستی و خودکار
  • 56. وراثت در مقابل ترکیب (Inheritance vs Composition)
  • 57. طراحی بر اساس قرارداد (Design by Contract)
  • 58. مفهوم ژنریک (Generics) در کلاس‌ها و متدها
  • 59. محدودیت‌های ژنریک (Generic Constraints)
  • 60. نوع‌های nullable و مدیریت مقادیر تهی
  • 61. عملگرهای null-conditional و null-coalescing
  • 62. متدهای الحاقی برای مجموعه‌ها در LINQ
  • 63. تغییرناپذیری و کلاس‌های رکورد (Record Types)
  • 64. مفهوم شیء ناشناس (Anonymous Types)
  • 65. تاپل‌ها (Tuples) و بازگشت چند مقدار
  • 66. تفاوت ref, out, in در پارامترهای متد
  • 67. کلاس‌های partial و فایل‌های کد جداگانه
  • 68. ایندکسرها (Indexers) در کلاس‌های سفارشی
  • 69. عملگرهای تبدیل صریح و ضمنی (implicit/explicit)
  • 70. نوع‌های value و reference در حافظه
  • 71. مفهوم stack و heap در زمان اجرا
  • 72. مدیریت حافظه و garbage collection در شیءگرایی
  • 73. چرخه حیات اشیاء و الگوی Dispose
  • 74. کوئری‌نویسی روی اشیاء با LINQ
  • 75. متدهای الحاقی سفارشی (Custom Extension Methods)
  • 76. مفهوم lambda expression و delegates
  • 77. رویدادها (Events) و مدیریت‌کننده‌های رویداد
  • 78. مفهوم async و await در متدهای شیءگرا
  • 79. محدودیت‌های چندریختی و راه‌حل‌های جایگزین
  • 80. بازآرایی کد (Refactoring) در کد شیءگرا
  • 81. تست‌نویسی واحد (Unit Testing) برای کلاس‌ها
  • 82. شبیه‌سازی (Mocking) وابستگی‌های کلاس
  • 83. مستندسازی کلاس‌ها و متدها با XML Doc
  • 84. ابزارهای تحلیل کد و رعایت اصول شیءگرایی
  • 85. مدیریت وابستگی‌ها با IoC Containers
  • 86. الگوی Repository و لایه دسترسی به داده
  • 87. الگوی Unit of Work برای تراکنش‌ها
  • 88. الگوی Service Layer برای منطق کسب‌وکار
  • 89. الگوی DTO و Data Mapper
  • 90. معرفی معماری لایه‌ای با شیءگرایی
  • 91. مقدمه‌ای بر معماری Domain-Driven Design
تگ‌ها: OOP برنامه‌نویسی شیءگرا پروژه عملی چندریختی زبان برنامه‌نویسی طراحی شیءگرا کپسوله‌سازی کلاس و شیء مهارت کدنویسی وراثت

نظرات

هنوز نظری ثبت نشده است.

وارد شوید تا نظر ثبت کنید.