دوره برنامهنویسی شیءگرا: راهنمای گام به گام برای درک عمیق مفاهیم OOP، الگوهای طراحی، معماری نرمافزار و اصول طراحی تمیز همراه با فلشکارت آموزشی — ارائه روی فلش مموری
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره برنامهنویسی شیءگرا: راهنمای گام به گام برای درک عمیق مفاهیم OOP، الگوهای طراحی، معماری نرمافزار و اصول طراحی تمیز
موضوع کلی: برنامه نویسی
موضوع میانی: برنامهنویسی شیءگرا (OOP)
📋 سرفصلهای دوره
- 1. مقدمهای بر حل مسئله و الگوریتمها
- 2. متغیرها، انواع داده و عملگرها
- 3. ساختارهای کنترل جریان: دستورات شرطی
- 4. ساختارهای کنترل جریان: حلقهها
- 5. توابع و متدها: ساختار و کاربرد
- 6. مفهوم Scope: متغیرهای محلی و سراسری
- 7. ساختارهای داده پایه: آرایهها و لیستها
- 8. محدودیتهای برنامهنویسی رویهای
- 9. تغییر پارادایم: از رویهای به شیءگرایی
- 10. تفکر شیءگرا: دنیا را به شکل اشیاء ببینیم
- 11. شیء (Object) چیست؟ وضعیت (State) و رفتار (Behavior)
- 12. کلاس (Class) چیست؟ طرح اولیه ساخت اشیاء
- 13. اولین کلاس و شیء: فرآیند نمونهسازی (Instantiation)
- 14. فیلدها (Fields) و متدها (Methods): اجزای یک کلاس
- 15. سازندهها (Constructors): مقداردهی اولیه اشیاء
- 16. انواع سازندهها: پیشفرض و پارامتردار
- 17. کلمه کلیدی `this`: ارجاع به نمونه فعلی
- 18. سطوح دسترسی: public, private, protected
- 19. کپسولهسازی (Encapsulation): اولین ستون شیءگرایی
- 20. Getters و Setters: دروازههای کنترل داده
- 21. پنهانسازی داده (Data Hiding) و اهمیت آن
- 22. تفاوت عمیق بین کلاس و شیء
- 23. اعضای استاتیک: فیلدها و متدهای Static
- 24. مفهوم `null` و مدیریت اشیاء تهی
- 25. چرخه حیات شیء و زبالهروب (Garbage Collection)
- 26. وراثت (Inheritance): دومین ستون شیءگرایی
- 27. کلاس والد (Superclass) و کلاس فرزند (Subclass)
- 28. ایجاد رابطه وراثت با `extends`
- 29. بازنویسی متد (Method Overriding)
- 30. کاربرد `@Override` برای اطمینان از صحت بازنویسی
- 31. کلمه کلیدی `super`: فراخوانی اعضای کلاس والد
- 32. جلوگیری از وراثت: کلاسهای `final`
- 33. جلوگیری از بازنویسی: متدهای `final`
- 34. انواع وراثت: تکسطحی و چندسطحی
- 35. مشکل الماس (The Diamond Problem) و وراثت چندگانه
- 36. چندریختی (Polymorphism): سومین ستون شیءگرایی
- 37. چندریختی زمان کامپایل در مقابل زمان اجرا
- 38. سربارگذاری متد (Method Overloading)
- 39. ارتباط چندریختی زمان اجرا با بازنویسی متد
- 40. Upcasting و Downcasting: تبدیل نوع اشیاء
- 41. بررسی نوع شیء با عملگر `instanceof`
- 42. انتزاع (Abstraction): چهارمین ستون شیءگرایی
- 43. کلاسهای انتزاعی (Abstract Classes)
- 44. متدهای انتزاعی (Abstract Methods)
- 45. اینترفیسها (Interfaces): انتزاع محض
- 46. پیادهسازی چندین اینترفیس
- 47. مقایسه کلاسهای انتزاعی و اینترفیسها
- 48. ترکیب (Composition): رابطه "دارای یک" (Has-A)
- 49. تجمیع (Aggregation): شکل ضعیفتری از Composition
- 50. وراثت یا ترکیب؟ تصمیم حیاتی در طراحی
- 51. اصل "ترکیب را به وراثت ترجیح بده"
- 52. کلاسهای داخلی (Inner Classes)
- 53. کلاسهای داخلی بینام (Anonymous Inner Classes)
- 54. انواع شمارشی (Enums) و کاربردهای آن
- 55. مقدمهای بر Generic ها: کدنویسی امن از نظر نوع
- 56. کلاسها و متدهای Generic
- 57. مدیریت خطاها (Exception Handling): بلوک try-catch-finally
- 58. ساخت استثناهای سفارشی (Custom Exceptions)
- 59. استثناهای Checked در مقابل Unchecked
- 60. مفهوم برابری اشیاء: پیادهسازی متد `equals()`
- 61. هش کردن اشیاء: پیادهسازی متد `hashCode()`
- 62. قرارداد بین `equals()` و `hashCode()`
- 63. مقدمهای بر اصول طراحی نرمافزار (SOLID)
- 64. بوی بد کد (Code Smells): شناسایی طراحی ضعیف
- 65. بازآرایی کد (Refactoring): بهبود طراحی کد موجود
- 66. اصل تک مسئولیتی (Single Responsibility Principle - SRP)
- 67. کاربرد عملی SRP: تفکیک مسئولیتها
- 68. اصل باز-بسته (Open/Closed Principle - OCP)
- 69. کاربرد عملی OCP: گسترش پذیری بدون تغییر کد
- 70. اصل جایگزینی لیسکوف (Liskov Substitution Principle - LSP)
- 71. کاربرد عملی LSP: اطمینان از قابلیت جایگزینی فرزندان
- 72. اصل تفکیک اینترفیس (Interface Segregation Principle - ISP)
- 73. کاربرد عملی ISP: طراحی اینترفیسهای کوچک و متمرکز
- 74. اصل وارونگی وابستگی (Dependency Inversion Principle - DIP)
- 75. کاربرد عملی DIP: کنترل وارونگی (IoC) و تزریق وابستگی (DI)
- 76. مفاهیم Coupling و Cohesion در طراحی شیءگرا
- 77. الگوهای طراحی (Design Patterns) چیستند؟
- 78. دستهبندی الگوهای طراحی: ایجادی، ساختاری، رفتاری
- 79. الگوی ایجادی: Singleton
- 80. الگوی ایجادی: Factory Method
- 81. الگوی ایجادی: Abstract Factory
- 82. الگوی ایجادی: Builder
- 83. الگوی ساختاری: Adapter
- 84. الگوی ساختاری: Decorator
- 85. الگوی ساختاری: Facade
- 86. الگوی ساختاری: Composite
- 87. الگوی رفتاری: Strategy
- 88. الگوی رفتاری: Observer
- 89. الگوی رفتاری: Command
- 90. الگوی رفتاری: Template Method
- 91. مقدمهای بر معماری نرمافزار
- 92. معماری یکپارچه (Monolithic) و ساختار شیءگرای آن
- 93. معماری لایهای (Layered Architecture) و تفکیک دغدغهها
- 94. معماری مدل-نما-کنترلگر (MVC)
- 95. نقش اشیاء در معماری MVC
- 96. معماری میکروسرویس (Microservices) و ارتباط آن با OOP
- 97. طراحی دامنه-محور (Domain-Driven Design - DDD)
- 98. نگاشت شیء-رابطهای (Object-Relational Mapping - ORM)
- 99. تست واحد (Unit Testing) در کدهای شیءگرا
- 100. جمعبندی: پیادهسازی یک پروژه کامل با مفاهیم OOP
محتویات بسته آموزشی
🌐 سامانه آنلاین فلشکارت؛ مرور هدفمند و هوشمند
اکانت ارائهشده، دسترسی به نسخه تحت وب سامانه فلشکارت ویژه این دوره را فراهم میکند. این سامانه از الگوریتم زمانبندی مرور SM-2 استفاده میکند و بر اساس ارزیابی شما از میزان یادآوری هر کارت، زمان مرورهای بعدی را تنظیم میکند.
به این ترتیب، کارتهای دشوارتر میتوانند زودتر مرور شوند و برای تثبیت مطالب در حافظه، برنامه مرور متناسبتری داشته باشید.
مدتزمان معادل آموزشی بر اساس برآورد این دوره در گواهی درج میشود.
گواهی دوزبانه با استعلام آنلاین
پس از تکمیل فعالیتهای لازم و تأیید درخواست، گواهی پایان دوره به زبان فارسی و انگلیسی صادر میشود. گواهی دارای لینک اختصاصی و QR Code برای بررسی و استعلام آنلاین است.
این گواهی صرفاً بهعنوان گواهی اتمام دوره آموزشی صادر میشود و معادل مدرک دانشگاهی، آکادمیک یا مدرک رسمی مورد تأیید نهادهای دولتی نیست. صدور آن منوط به تکمیل شرایط دوره و تأیید نهایی درخواست است.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.