Sobes.tech
Junior — Middle

Ar galite paaiškinti, ką reiškia raidė 'I' SOLID principo?

sobes.tech AI

Atsakymas iš AI

SOLID principuose "I" raidė dažniausiai reiškia Interfeisų atskyrimo principą (Interface Segregation Principle).

Šio principo esmė ta, kad klientai neturėtų priklausyti nuo interfeisų, kurių jie nenaudoja. Geriau sukurti keletą specializuotų interfeisų, nei vieną didelį ir bendrą.

Tai padeda padaryti kodą lankstesnį, suprantamesnį ir lengviau prižiūrimą.

Pavyzdys:

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

// ISP pažeidimas: jei klasė gali tik spausdinti, bet priversta įgyvendinti scanDocument

protocol Printer {
    func printDocument()
}

protocol Scanner {
    func scanDocument()
}

// Dabar klasė gali įgyvendinti tik reikalingą interfeisą
class SimplePrinter: Printer {
    func printDocument() {
        print("Dokumento spausdinimas")
    }
}