اپلیکیشن اندرویدی فلشکارت آموزشی اصول برنامه نویسی شیءگرا در کاتلین: از کلاسها تا پلیمورفیسم
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره اصول برنامه نویسی شیءگرا در کاتلین: از کلاسها تا پلیمورفیسم
موضوع کلی: برنامه نویسی و توسعه نرم افزار
موضوع میانی: مبانی برنامه نویسی شیءگرا (Object-Oriented Programming - OOP)
📋 سرفصلهای دوره
- 1. مقدمهای بر برنامه نویسی شیءگرا
- 2. مبانی شیءگرایی و مفاهیم کلیدی
- 3. چرا شیءگرایی؟ مزایا و کاربردها
- 4. کاتلین؛ زبانی مدرن برای شیءگرایی
- 5. نصب و راهاندازی محیط توسعه کاتلین
- 6. اولین قدم: ساختار کلی یک برنامه کاتلین
- 7. مفهوم کلاس در کاتلین
- 8. تعریف کلاسها و ویژگیهای آنها
- 9. سازندهها (Constructors) در کلاسهای کاتلین
- 10. سازندههای اولیه و ثانویه
- 11. پارامترهای سازنده و مقداردهی اولیه
- 12. ایجاد اشیاء (Objects) از روی کلاسها
- 13. فیلدها و پراپرتیها در کلاسها
- 14. متدها (Methods) و رفتار اشیاء
- 15. دستورالعملهای دسترسی (Access Modifiers)
- 16. پراپرتیهای فقط خواندنی (Read-only Properties)
- 17. پراپرتیهای قابل تغییر (Mutable Properties)
- 18. کلاسهای داده (Data Classes) در کاتلین
- 19. کاربرد و مزایای کلاسهای داده
- 20. متدهای تولید شده خودکار در کلاسهای داده
- 21. روشهای مقایسه در کلاسهای داده
- 22. کلاسهای توالی (Sealed Classes)
- 23. کاربرد کلاسهای توالی در مدلسازی
- 24. مزایای کلاسهای توالی در مدیریت حالات
- 25. کلاسهای داخلی (Inner Classes)
- 26. کاربرد کلاسهای داخلی و دسترسی به اعضای والد
- 27. کلاسهای تو در تو (Nested Classes)
- 28. تفاوت کلاسهای داخلی و تو در تو
- 29. استاتیک در کاتلین؛ مبحث companion objects
- 30. استفاده از companion objects برای متدها و پراپرتیهای ثابت
- 31. مفهوم وراثت (Inheritance)
- 32. ارثبری کلاسها در کاتلین
- 33. کلمات کلیدی `open` و `final`
- 34. بازنویسی متدها (Method Overriding)
- 35. نکاتی در مورد بازنویسی متدها
- 36. کلاسهای انتزاعی (Abstract Classes)
- 37. تعریف و کاربرد کلاسهای انتزاعی
- 38. متدهای انتزاعی در کلاسهای انتزاعی
- 39. ترفندهای کلاسهای انتزاعی
- 40. اینترفیسها (Interfaces) در کاتلین
- 41. تعریف اینترفیسها و متدهایشان
- 42. پیادهسازی اینترفیسها در کلاسها
- 43. متدهای پیشفرض در اینترفیسها
- 44. استانداردهای طراحی اینترفیسها
- 45. پلیمورفیسم (Polymorphism)
- 46. مفهوم پلیمورفیسم و انواع آن
- 47. پلیمورفیسم در وراثت
- 48. پلیمورفیسم در اینترفیسها
- 49. کاربرد عملی پلیمورفیسم
- 50. کپسولهسازی (Encapsulation)
- 51. مفهوم کپسولهسازی و اهمیت آن
- 52. پیادهسازی کپسولهسازی با پراپرتیها و متدها
- 53. مزایای کپسولهسازی در توسعه نرمافزار
- 54. مفهوم تجرید (Abstraction)
- 55. مفهوم تجرید و چگونگی دستیابی به آن
- 56. نقش کلاسهای انتزاعی و اینترفیسها در تجرید
- 57. مزایای تجرید برای مدیریت پیچیدگی
- 58. الگوهای طراحی (Design Patterns)
- 59. مقدمهای بر الگوهای طراحی شیءگرا
- 60. الگوی کارخانه (Factory Pattern)
- 61. پیادهسازی الگوی کارخانه در کاتلین
- 62. الگوی سینگلتون (Singleton Pattern)
- 63. کاربرد و پیادهسازی الگوی سینگلتون
- 64. الگوی استراتژی (Strategy Pattern)
- 65. پیادهسازی الگوی استراتژی برای انعطافپذیری
- 66. الگوی مشاهدهگر (Observer Pattern)
- 67. کاربرد الگوی مشاهدهگر در سیستمهای رویداد محور
- 68. الگوی کامپوزیت (Composite Pattern)
- 69. مدیریت ساختارهای درختی با الگوی کامپوزیت
- 70. اشیاء تکمقدار (Object Declarations)
- 71. استفاده از object declarations برای سینگلتونها
- 72. کلاسهای همدم (Companion Objects)
- 73. استفاده از companion objects به عنوان فکتوری
- 74. مدیریت خطا در برنامه نویسی شیءگرا
- 75. استثناها (Exceptions) در کاتلین
- 76. مدیریت استثناها با try-catch-finally
- 77. پرتاب کردن استثناها (Throwing Exceptions)
- 78. طراحی کلاسهای خطا (Error Classes)
- 79. مفهوم SOLID در طراحی شیءگرا
- 80. اصل تک مسئولیتی (Single Responsibility Principle)
- 81. اصل باز/بسته (Open/Closed Principle)
- 82. اصل جایگزینی لیسکوف (Liskov Substitution Principle)
- 83. اصل جداسازی اینترفیس (Interface Segregation Principle)
- 84. اصل وارونگی وابستگی (Dependency Inversion Principle)
- 85. برنامهنویسی تابعی در کنار شیءگرایی
- 86. توابع لامبدا (Lambda Functions) در کاتلین
- 87. استفاده از توابع لامبدا با کلاسها
- 88. توابع مرتبه بالاتر (Higher-Order Functions)
- 89. کاربرد توابع مرتبه بالاتر در شیءگرایی
- 90. توسعه برنامههای پیشرفته با کاتلین شیءگرا
- 91. مثالهای عملی از کاربرد OOP در کاتلین
- 92. ساخت یک سیستم مدیریت کتابخانه با OOP
- 93. طراحی یک بازی ساده با اصول شیءگرا
- 94. بهینهسازی کد با مفاهیم شیءگرا
- 95. جمعبندی و گامهای بعدی در یادگیری OOP
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.