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

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

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

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

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

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

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

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

  • 1. برنامه‌نویسی شیءگرا چیست و چرا مهم است
  • 2. تاریخچه مختصر و تکامل پارادایم شیءگرا
  • 3. مفاهیم پایه: کلاس و شیء
  • 4. شناسایی و تعریف اشیاء در دنیای واقعی
  • 5. ویژگی‌های یک شیء: وضعیت و رفتار
  • 6. نحوه تعریف یک کلاس در زبان برنامه‌نویسی
  • 7. ساختار و اجزای یک کلاس: فیلدها و متدها
  • 8. ایجاد نمونه (آبجکت) از یک کلاس
  • 9. مرجع (Reference) و تفاوت آن با خود شیء
  • 10. عملگر new و تخصیص حافظه
  • 11. مفهوم سازنده (Constructor) و انواع آن
  • 12. سازنده پیش‌فرض و سازنده پارامتردار
  • 13. کلمه کلیدی this و کاربردهای آن
  • 14. تغییر وضعیت شیء از طریق متدها
  • 15. مفهوم متغیرهای محلی و سراسری در کلاس
  • 16. مقدمه‌ای بر کپسوله‌سازی (Encapsulation)
  • 17. سطوح دسترسی: public, private, protected
  • 18. چرا باید فیلدها را خصوصی (private) تعریف کرد؟
  • 19. متدهای getter و setter برای دسترسی کنترل‌شده
  • 20. اصل پنهان‌سازی اطلاعات (Information Hiding)
  • 21. مفهوم وراثت (Inheritance) و مزایای آن
  • 22. ایجاد یک کلاس فرزند (Subclass) از کلاس والد (Superclass)
  • 23. کلمه کلیدی extends برای تعریف وراثت
  • 24. دسترسی به اعضای کلاس والد در کلاس فرزند
  • 25. بازتعریف متدها (Method Overriding) در وراثت
  • 26. کلمه کلیدی super و فراخوانی سازنده والد
  • 27. وراثت سلسله‌مراتبی و عمق آن
  • 28. مفهوم چندریختی (Polymorphism) و انواع آن
  • 29. چندریختی زمان کامپایل: سربارگذاری متد (Method Overloading)
  • 30. چندریختی زمان اجرا: متد override و ارسال پیام
  • 31. نحوه پیاده‌سازی چندریختی با کلاس‌های والد و فرزند
  • 32. مفهوم انتزاع (Abstraction) و دلیل استفاده از آن
  • 33. کلاس‌های انتزاعی (Abstract Classes) و ویژگی‌های آنها
  • 34. متدهای انتزاعی و الزام پیاده‌سازی در کلاس فرزند
  • 35. تفاوت کلاس انتزاعی با کلاس معمولی
  • 36. مفهوم واسط (Interface) و نقش آن در طراحی
  • 37. تعریف یک واسط و پیاده‌سازی آن با implements
  • 38. چندریختی از طریق واسط‌ها (Interface Polymorphism)
  • 39. تفاوت کلاس انتزاعی و واسط و زمان استفاده از هرکدام
  • 40. روابط بین کلاس‌ها: ارتباط (Association)
  • 41. روابط بین کلاس‌ها: تجمیع (Aggregation)
  • 42. روابط بین کلاس‌ها: ترکیب (Composition)
  • 43. تفاوت تجمیع و ترکیب از نظر چرخه حیات اشیاء
  • 44. مفهوم وابستگی (Dependency) بین کلاس‌ها
  • 45. استفاده از روابط برای طراحی کلاس‌های واقعی
  • 46. مفهوم متدها و توابع ایستا (Static)
  • 47. فیلدهای ایستا و اشتراک داده بین تمام نمونه‌ها
  • 48. بلوک‌های استاتیک و زمان اجرای آنها
  • 49. ثابت‌ها (Constants) و کلمه کلیدی final
  • 50. کلاس‌های نهایی (Final Classes) و متدهای نهایی
  • 51. مفهوم بسته‌بندی (Package) و فضای نام (Namespace)
  • 52. مدیریت وابستگی‌ها با import
  • 53. مقدمه‌ای بر اصول SOLID در طراحی شیءگرا
  • 54. اصل اول SOLID: تک‌مسئولیتی (Single Responsibility Principle)
  • 55. اصل دوم SOLID: باز برای توسعه، بسته برای تغییر (Open/Closed Principle)
  • 56. اصل سوم SOLID: جایگزینی لیسکوف (Liskov Substitution Principle)
  • 57. اصل چهارم SOLID: جداسازی واسط‌ها (Interface Segregation Principle)
  • 58. اصل پنجم SOLID: وارونگی وابستگی (Dependency Inversion Principle)
  • 59. مقدمه‌ای بر الگوهای طراحی (Design Patterns) در شیءگرایی
  • 60. الگوی طراحی Singleton: کاربرد و پیاده‌سازی
  • 61. الگوی طراحی Factory Method: ایجاد اشیاء به صورت پویا
  • 62. الگوی طراحی Observer: ارتباط یک‌به‌چند بین اشیاء
  • 63. مفاهیم پیشرفته: کلاس‌های درونی (Inner Classes)
  • 64. کلاس‌های ناشناس (Anonymous Classes) برای پیاده‌سازی سریع واسط‌ها
  • 65. مفهوم Generic (جنریک) در کلاس‌ها و متدها
  • 66. محدودیت‌های Generics و کاربرد wildcard
  • 67. مدیریت خطا با استثناها (Exceptions) در برنامه‌های شیءگرا
  • 68. ایجاد استثناهای سفارشی (Custom Exceptions)
  • 69. نوشتن کد تمیز و خوانا با اصول شیءگرا
  • 70. تست واحد (Unit Testing) برای کلاس‌ها و اشیاء
  • 71. مستندسازی کلاس‌ها و متدها
  • 72. بازآرایی کد (Refactoring) برای بهبود طراحی شیءگرا
  • 73. مقایسه برنامه‌نویسی شیءگرا با برنامه‌نویسی رویه‌ای
  • 74. انتخاب زبان برنامه‌نویسی مناسب برای یادگیری مفاهیم شیءگرا
  • 75. تمرین جامع: طراحی یک سیستم کوچک با استفاده از تمام مفاهیم
تگ‌ها: OOP برنامه‌نویسی شیءگرا چندریختی طراحی شیءگرا کپسوله‌سازی کلاس و شیء مفاهیم OOP وراثت

نظرات

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

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