Qu'est-ce que le principe d'ouverture/fermeture (POF) ?
sobes.tech IA
Réponse de l'IA
Le principe d’ouverture/fermeture (Open/Closed Principle, OCP) est l’un des cinq principes SOLID, qui stipule que les entités logicielles (classes, modules, fonctions) doivent être ouvertes à l’extension, mais fermées à la modification.
Cela signifie que le comportement du système peut être étendu sans modifier le code existant, ce qui augmente la stabilité et la facilité de maintenance.
Par exemple, si vous devez ajouter une nouvelle fonctionnalité, il est préférable de créer une nouvelle classe qui implémente l’interface nécessaire ou hérite de la classe de base, plutôt que de modifier le code existant.
Exemple en Swift:
protocol Shape {
func area() -> Double
}
class Circle: Shape {
var radius: Double
init(radius: Double) {
self.radius = radius
}
func area() -> Double {
return Double.pi * radius * radius
}
}
class Rectangle: Shape {
var width: Double
var height: Double
init(width: Double, height: Double) {
self.width = width
self.height = height
}
func area() -> Double {
return width * height
}
}
// Si vous devez ajouter un nouveau type de figure, créez une nouvelle classe sans modifier les classes existantes
class Triangle: Shape {
var base: Double
var height: Double
init(base: Double, height: Double) {
self.base = base
self.height = height
}
func area() -> Double {
return 0.5 * base * height
}
}
Ainsi, le code est ouvert à l’extension (nouvelles figures), mais fermé à la modification des classes existantes.