Junior — Middle
Kas saaksite selgitada, mida tähendab täht 'I' SOLID põhimõttes?
sobes.tech AI
Vastus AI-lt
SOLID põhimõtetes tähistab "I" tavaliselt Interfeisi eraldamise põhimõtet (Interface Segregation Principle).
Selle põhimõtte olemus on see, et kliendid ei tohiks sõltuda interfeistest, mida nad ei kasuta. Paremini on luua mitu spetsialiseeritud interfeisti kui üks suur ja universaalne.
See aitab muuta koodi paindlikumaks, arusaadavamaks ja hooldatavamaks.
Näide:
protocol Printer {
func printDocument()
func scanDocument()
}
// ISP rikkumine: kui klass suudab ainult trükkida, kuid on sunnitud implementeerima scanDocument
protocol Printer {
func printDocument()
}
protocol Scanner {
func scanDocument()
}
// Nüüd saab klass implementeerida ainult vajaliku liidese
class SimplePrinter: Printer {
func printDocument() {
print("Dokumendi printimine")
}
}