قاعده تفکیک رابط‌ها: تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
جز Sunfyre صفحهٔ قاعدهٔ تفکیک رابط‌ها را به قاعده تفکیک رابط‌ها منتقل کرد
خط ۱:
در [[مهندسی نرم‌افزار]] ، '''اصل تفکیک رابط‌ها''' ('''ISP''') یکی از پنج اصل [[سالید (طراحی شیءگرا)|SOLID]] در طراحی شیءگرا است که بیان می کند که هیچ استفاده‌کننده‌ای نباید به اجبار وابسته به متدهایی باشد که از آن‌ها استفاده نمی‌کند.<ref name="ASD">
Martin, Robert (2002). Agile Software Development: Principles, Patterns, and Practices. Pearson Education.</ref> اصل ISP رابط‌های بزرگ را به اندازه‌های کوچکتر با دامنه‌ای خاص‌تر تقسیم می‌کند. به این ترتیب استفاده‌کننده از رابط، فقط از توابعی که مد نظر دارد اطلاع خواهد داشت. به چنین رابط‌های کوچک شده‌ای نام ''رابط نقش'' نیز اطلاق می‌شود.<ref name="RoleInterface">[http://martinfowler.com/bliki/RoleInterface.html Role Interface]</ref> یکی از اهداف ISP ایجاد گسستگی در سیستم است به طریقی که اصلاح کلی؛ ایجاد تغییر و انتشار مجدد کدها آسان‌تر شود. اصل ISP یکی از پنج اصل [[سالید (طراحی شیءگرا)|SOLID]] در طراحی شیءگرا است،، این اصل شبیه به «اصل انسجام بالا» در مجموعه اصول GRASP است.<ref name="CB">{{یادکرد وب |url=http://codebetter.com/blogs/david.hayden/archive/2005/06/15/64635.aspx |title=David Hayden, ''Interface-Segregation Principle (ISP) - Principles of Object-Oriented Class Design'' |accessdate=۲۲ ژانویه ۲۰۲۰ |archiveurl=https://web.archive.org/web/20100820124217/http://codebetter.com/blogs/david.hayden/archive/2005/06/15/64635.aspx |archivedate=۲۰ اوت ۲۰۱۰ |dead-url=yes}}</ref>
 
== اهمیت ISP در طراحی شیءگرا ==