Sobes.tech
Junior — Middle

Կարող եք բացատրել, թե ինչ է նշանակում 'I' տառը SOLID սկզբունքում?

sobes.tech AI

Պատասխան AI-ից

SOLID սկզբունքներում "I" տառը սովորաբար նշանակում է Ինտերֆեյսների Բաժանման սկզբունք (Interface Segregation Principle):

Այս սկզբունքի էությունը այն է, որ հաճախորդները չպետք է կախված լինեն այն ինտերֆեյսներից, որոնք նրանք չեն օգտագործում: Ավելի լավ է ստեղծել մի քանի մասնագիտացված ինտերֆեյսներ, քան մեկ մեծ և ընդհանուր:

Այսպիսով, կոդը ավելի ճկուն, հասկանալի և հեշտ է պահպանել:

Օրինակ՝

protocol Printer {
    func printDocument()
    func scanDocument()
}

// ISP խախտում՝ եթե դասը կարող է միայն տպել, բայց պարտադրված է իրականացնել scanDocument

protocol Printer {
    func printDocument()
}

protocol Scanner {
    func scanDocument()
}

// Այժմ դասը կարող է իրականացնել միայն անհրաժեշտ ինտերֆեյսը
class SimplePrinter: Printer {
    func printDocument() {
        print("Փաստաթղթի տպում")
    }
}