Junior — Middle
Ի՞նչ է նշանակում 'L' տառը օբյեկտային ուղղված ծրագրավորման SOLID սկզբունքներում:
sobes.tech AI
Պատասխան AI-ից
SOLID սկզբունքներում «L» տառը ներկայացնում է Լիսկովի փոխարինման սկզբունքը (Liskov Substitution Principle, LSP):
Այս սկզբունքը ասում է, որ ենթակլասի օբյեկտները պետք է փոխարինելի լինեն հիմնական դասի օբյեկտների հետ՝ առանց ծրագրի ճիշտ աշխատանքը խախտելու։ Այլ կերպ ասած, եթե B դասը ժառանգում է A դասից, ապա B դասի օբյեկտները պետք է պահեն այդպիսի վարք, որ կարող են փոխարինել A դասի օբյեկտներին՝ առանց անսպասելի սխալների կամ վարքագծի փոփոխությունների:
LSP խախտման օրինակ:
class Bird {
func fly() {}
}
class Ostrich: Bird {
override func fly() {
fatalError("Ձին չի կարող թռչել")
}
}
Այստեղ Ostrich-ը ժառանգում է Bird-ից, բայց չի կարող ճիշտ իրականացնել fly մեթոդը, ինչը խախտում է LSP-ը:
Կատարյալ դասերի նախագծումը օգնում է պահպանել այս սկզբունքը, բարելավելով կոդի հուսալիությունը և ընդլայնելիությունը։