Назад к вопросам
Junior — Middle
93
Можете объяснить, что означает буква 'I' в принципе SOLID?
Компании, где спрашивали
bip.ru
Ответ от нейросети
sobes.tech AI
Буква "I" в принципе SOLID означает 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("Печать документа")
}
}