ما هي مبادئ SOLID؟ ولما يجب أن يعرفها كل مطور؟ (الجزء الثاني)
SOLID 3. مبدأ "liskov" للاستبدال (LSP). ويعني أن الصنف الرئيسي يجب أن يكون قابل للاستبدال بالصنف المشتق منه. الهدف من هذا المبدأ هو التأكد أن الصنف المشتق يمكن أن يأخذ مكان الصنف الرئيسي بدون حدوث أي أخطاء. وإذا وجدت أن الكود يفحص نوع الصنف, فإنه بالتأكيد يخرق هذا المبدأ. لننظر إلى مثال الحيوانات ثانية: //... function AnimalLegCount(a: Array<Animal>) { for(int i = 0; i <= a.length; i++) { if(typeof a[i] == Lion) log(LionLegCount(a[i])); if(typeof a[i] == Mouse) log(MouseLegCount(a[i])); if(typeof a[i] == Snake) log(SnakeLegCount(a[i])); } } AnimalLegCount(animals); هذا الكود يخرق مبدأ LSPوكذلك مبد...