Sobes.tech
Junior — Middle

SOLID prinsipində 'I' hərfinin nə mənaya gəldiyini izah edə bilərsinizmi?

sobes.tech Süni İntellekt

AI-dan cavab

SOLID prinsipində "I" hərfi ümumiyyətlə İnterfeyslerin Ayrılması Prinsipi (Interface Segregation Principle) anlamına gəlir.

Bu prinsipin mahiyyəti odur ki, müştərilər istifadə etmədikləri interfeyslərə bağlı olmamalıdırlar. Daha yaxşıdır ki, bir böyük və ümumi interfeys yerinə, bir neçə ixtisaslaşmış interfeys yaradılsın.

Bu, kodu daha çevik, anlaşılan və dəstəklənməsini asanlaşdırır.

Nümunə:

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

// ISP pozuntusu: əgər sinif yalnız çap edə bilirsə, amma scanDocument-i həyata keçirmək məcburiyyətindədir

protocol Printer {
    func printDocument()
}

protocol Scanner {
    func scanDocument()
}

// İndi sinif yalnız lazım olan interfeysi həyata keçirə bilər
class SimplePrinter: Printer {
    func printDocument() {
        print("Sənədi çap et")
    }
}