Sobes.tech
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-ը:

Կատարյալ դասերի նախագծումը օգնում է պահպանել այս սկզբունքը, բարելավելով կոդի հուսալիությունը և ընդլայնելիությունը։