Sobes.tech
Junior — Middle

Pouvez-vous expliquer ce que signifie la lettre 'I' dans le principe SOLID?

sobes.tech IA

Réponse de l'IA

La lettre "I" en principe SOLID signifie le principe de séparation des interfaces.

L'essence de ce principe est que les clients ne doivent pas dépendre d'interfaces qu'ils n'utilisent pas. Il est donc préférable de créer plusieurs interfaces spécialisées plutôt qu'une grande interface universelle.

Cela aide à rendre le code plus flexible, compréhensible et facilite sa maintenance.

Exemple:

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

// Violation du ISP : si une classe ne peut que imprimer, mais doit implémenter scanDocument

protocol Printer {
    func printDocument()
}

protocol Scanner {
    func scanDocument()
}

// Maintenant, la classe peut implémenter uniquement l'interface nécessaire
class SimplePrinter: Printer {
    func printDocument() {
        print("Imprimer le document")
    }
}