با وجود اینکه اصول SOLID همیشه نقل محافل برنامهنویسی است، اما جایگاه دقیق آنها در چرخه توسعه کمتر مورد توجه قرار میگیرد. در این ویدیو نشان میدهیم که چگونه میتوان از SOLID به عنوان ابزاری برای سنجش و اعتبارسنجی (Validation) در طراحی شیءگرا استفاده کرد.
فیلم ویدویی این آموزش
https://www.aparat.com/v/pnoj4go
سفر سه مرحلهای خلق نرمافزار: از تحلیل تا پیادهسازی خیلی از توسعهدهندگان بدون مقدمه کدنویسی (OOP) را آغاز میکنند، اما معماری اصولی نیازمند عبور از این مسیر است: تحلیل شیءگرا (OOA): شناخت کامل دامین و صورتمسئله بیزینسی. طراحی شیءگرا (OOD): تدوین ساختار پیش از دست به کیبورد شدن. برنامهنویسی (OOP): ترجمه طراحی به کدهای نهایی نرمافزار. ما بررسی میکنیم چگونه با الگوهای GRASP، طراحی اولیه را شکل دهید و سپس با معیار SOLID، کیفیت آن را بسنجید. تفاوت کلیدی بین اصول (Principle) و الگوهای طراحی (Pattern) یکی از چالشهای اصلی، درک مرز روشن بین «اصل» و «الگو» است: دیزاین پترنها: راهکارهایی کپسولهشده و آماده برای حل مشکلات متداول هستند. دیزاین پرینسیپلها: مانند قطبنما مسیر را نشان میدهند و قوانین خشکی ندارند. میبینیم چرا اجرای اصلی مثل Single Responsibility نیازمند تجربه است؛ وسواس در آن باعث Over-engineering (پیچیدگی مفرط) و بیتوجهی به آن باعث خلق کدهای کثیف میشود. لایههای مختلف معماری: از سطح کانتکست تا کدهای برنامه اصول معماری صرفاً محدود به کلاسها نمیشوند! ما نشان میدهیم چگونه دیدی کلان داشته باشید: پیادهسازی اصل SRP در ابعاد میکروسرویسها و Bounded Contextها. مدیریت ارتباطات و وابستگیها در سطح Component و Container. نقش کنترل وابستگیها در جلوگیری از Rigidity (خشکی سیستم) و Viscosity (کندی تغییرات). چرا پیش از SOLID، باید وابستگی (Dependency) را درک کنیم؟ تا زمانی که ریشه پیچیدگیها یعنی وابستگیها را نشناسید، اصول SOLID صرفاً کلماتی حفظی خواهند بود. در این ویدیو، پیشنیازهای ضروری معماری پیشرفته، از جمله مدیریت وابستگیها و اهمیت الگوهای GRASP را عمیقاً باز میکنیم.