- DRY - Don't Repeat Yourself
- KISS - Keep It Simple Stupid
- YAGNI - You Aren't Gonna Need It (avoid creating extra complexity through adding functionality that you assume you may need in the future)
- Single Responsibility - every module or class should have only a single responsibility.
- Open/Closed - software entities should be open for extension but closed for modification.
- Liskov Substitution - objects in a program should be replaceable with instances of their subtypes without altering the correctness of that program.
- Interface Segregation - small client-specific interfaces are better than one general-purpose interface.
- Dependency Inversion - use interfaces instead of concrete implementations.
- DRY - Ne vous répétez pas
- KISS - Restez simple et stupide
- YAGNI - Vous n'en aurez pas besoin (évitez de créer une complexité supplémentaire en ajoutant des fonctionnalités dont vous pensez avoir besoin à l'avenir)
- Responsabilité unique - chaque module ou classe ne doit avoir qu'une seule responsabilité.
- Ouvert/Fermé - les entités logicielles doivent être ouvertes pour extension mais fermées pour modification.
- Substitution de Liskov - les objets d'un programme doivent pouvoir être remplacés par des instances de leurs sous-types sans altérer l'exactitude de ce programme. 7. Ségrégation des interfaces : de petites interfaces spécifiques au client valent mieux qu'une interface à usage général.
- Inversion de dépendance - utilisez des interfaces au lieu d'implémentations concrètes.