Skip to content
mrbahadoor edited this page Feb 22, 2024 · 3 revisions

Welcome to the symfony5-solid wiki!

This project is from symfony cast Write SOLID Code & Impress your Friends

Single-responsibility Principle
Write classes so that you code fits in your head.

Open-closed Principle
Design your classes so that you can change their behavior without changing your code.

Liskov Substitution Principle
If a class extends a base class or implements an interface make your class behave like it's supposed to do.

Interface Segregation Principle
If a class has a large interface(a lot of methods) and you often inject the class and only use some of these methods, consider splitting your class into smaller pieces.

Dependency Inversion Principle
Prefer type-hinting interfaces and allow each interface to be designed for the high level class that will use it. Instead of the low level class that will implement it.