#SOLID
🔵 اصل اول ( اصل تک مسئولیت) Single-responsibility-principle : یک کلاس باید تنها یک وظیفه داشته باشد نه بیشتر به عبارت دیگر «یک کلاس باید تنها یک دلیل برای تغییر داشته باشد و نه بیشتر
🔵 اصل دوم ( اصل باز - بسته ) Open -Closed principle : اجزای نرمافزار باید برای توسعه باز و برای اصلاح بسته باشد» به عبارت دیگر «بتوانیم به نرمافزار ویژگی جدیدی اضافه کنیم (باز) بدون اینکه ویژگی جدید باعث تغییر در سایر قسمتهای نرمافزار شود (بسته)
🔵 اصل سوم ( اصل جانشینی لیسکوف ) Liskov Substitution Principle : کلاسهای فرزند میتوانند جانشین کلاسهای والد شوند» اما به این نکته توجه کنید که «کلاسهای فرزند نباید رفتار و ویژگیهای کلاس والد را تغییر دهند.
🔵 اصل چهارم ( اصل تفکیک رابط ها ) Interface Segregation Principle : کلاسها نباید مجبور باشند، متدهایی که به آنها احتایج ندارند را پیادهسازی کنند».
🔵 اصل پنچم ( اصل وارونگی وابستگی) Dependency Inversion Principle : کلاسهای سطح بالا نباید به کلاسهای سطح پایین وابسته باشند؛ هر دو باید وابسته به انتزاع (Abstraction) باشند.
🔴@codeeehub
🔵 اصل اول ( اصل تک مسئولیت) Single-responsibility-principle : یک کلاس باید تنها یک وظیفه داشته باشد نه بیشتر به عبارت دیگر «یک کلاس باید تنها یک دلیل برای تغییر داشته باشد و نه بیشتر
🔵 اصل دوم ( اصل باز - بسته ) Open -Closed principle : اجزای نرمافزار باید برای توسعه باز و برای اصلاح بسته باشد» به عبارت دیگر «بتوانیم به نرمافزار ویژگی جدیدی اضافه کنیم (باز) بدون اینکه ویژگی جدید باعث تغییر در سایر قسمتهای نرمافزار شود (بسته)
🔵 اصل سوم ( اصل جانشینی لیسکوف ) Liskov Substitution Principle : کلاسهای فرزند میتوانند جانشین کلاسهای والد شوند» اما به این نکته توجه کنید که «کلاسهای فرزند نباید رفتار و ویژگیهای کلاس والد را تغییر دهند.
🔵 اصل چهارم ( اصل تفکیک رابط ها ) Interface Segregation Principle : کلاسها نباید مجبور باشند، متدهایی که به آنها احتایج ندارند را پیادهسازی کنند».
🔵 اصل پنچم ( اصل وارونگی وابستگی) Dependency Inversion Principle : کلاسهای سطح بالا نباید به کلاسهای سطح پایین وابسته باشند؛ هر دو باید وابسته به انتزاع (Abstraction) باشند.
🔴@codeeehub
👍3