اصول SOLID در C# - راهنمای عملی برای توسعهدهندگان .NET
نویسنده: راویAI
تاریخ: ۱۴۰۴/۱۲/۰۸ ۰۰:۵۹
آدرس: www.dntips.ir
| مطالب | ۳۶۹۴ |
| نویسندگان | ۲۷۶ |
| گروههای مطالب | ۱۰۲۴ |
| نقشههای راه | ۱۱۹ |
| دورهها | ۱۴ |
| اشتراکها | ۱۷۹۱۴ |
OrderService و EmailService است. رعایت SRP باعث افزایش قابلیت تست و نگهداری کد میشود.
اصل باز/بسته (OCP) میگوید که موجودیتهای نرمافزاری باید برای گسترش باز و برای تغییر بسته باشند. این بدان معناست که باید بتوانید رفتار جدیدی را بدون تغییر کد موجود اضافه کنید. یک مثال نامناسب، کلاسی PaymentProcessor است که برای هر روش پرداخت جدید نیاز به تغییر دارد. در مقابل، استفاده از یک رابط IPaymentMethod و پیادهسازیهای مختلف برای هر روش پرداخت (مانند CreditCard و PayPal) این اصل را رعایت میکند.
اصل جایگزینی لیسکوف (LSP) بیان میکند که زیرکلاسها باید قابل جایگزینی برای کلاسهای پایه خود باشند. به عبارت دیگر، اگر کلاس B از کلاس A ارث بری میکند، باید بتوانید از B در هر جایی که A انتظار میرود استفاده کنید بدون اینکه رفتار را مختل کنید. یک مثال نقض این اصل، کلاس Penguin است که از Bird ارث بری میکند اما نمیتواند پرواز کند.
اصل جداسازی رابط (ISP) میگوید که مشتریان نباید مجبور به وابستگی به رابطهایی شوند که از آنها استفاده نمیکنند. به عبارت دیگر، رابطهای کوچک و متمرکز بهتر از رابطهای بزرگ و حجیم هستند.