اصل جایگزینی لیسکوف به زبان ساده
محمد کلاته
1402/08/17
" هیچ کدام از ما به تنهایی قادر به انجام کارهای بزرگ نخواهیم بود، اما می توانیم کارهای بزرگی را با کمک یکدیگر انجام دهیم" جان اف. کندی
اصل جایگزینی لیسکوف چیست؟
اصل جایگزینی لیسکوف (LSP)یکی از پنج اصل SOLID است که توسط رابرت سی مارتین توسعه داده شده است. این اصل به ما میگوید که اگر یک کلاس از یک کلاس پایه مشتق شده باشد، باید بتوانیم کلاس مشتق شده را به جای کلاس پایه بدون ایجاد مشکل جایگزین کنیم. اگر بخواهیم به زبان ساده تری این اصل را توضیح دهیم باید بگوییم : در اصل جایگزینی لیسکوف آبجکتهای کلاسهای والد و فرزند، باید بتوانند بدون به وجود آمدن هیچ مشکلی در کدها به جای هم استفاده شوند. این به ما امکان میدهد که کد را به سادگی توسعه دهیم و تعامل با شیءها را به آسانی انجام دهیم.
چرا این اصل مهم است؟
استفاده از اصل جایگزینی لیسکوف به توسعهدهندگان اجازه میدهد تا کلاسها و شیءها را به گونهای طراحی کنند که انعطافپذیری بالایی داشته و تعامل با آن ها آسان باشد. این مزایا به موارد زیر منجر میشوند:
توسعه آسان
زمانی که کلاسها به اصول LSP پایبند باشند، توسعهدهندگان میتوانند کلاسهای مشتق شده جدید را با اطمینان ایجاد کنند و تغییرات روی سیستم را با کمترین تلاش اعمال کنند.
تعامل ساده
وقتی کلاسها از یک کلاس پایه مشتق میشوند و اصول LSP رعایت میشود، تعامل با آنها بسیار سادهتر میشود. شما میتوانید از هر کلاس مشتق شده، (بدون ترس از مشکلات ناشی از تغییرات در رفتار آن ها) به عنوان جایگزین استفاده کنید.
انعطافپذیری
توسعهدهندگان میتوانند بدون نیاز به تغییرات گسترده در کد موجود. به راحتی تغییرات و بهبودها روی آن ها اعمال کنند.
چرا این اصل مهم است؟