In Laravel or standard PHP, a UserController should only handle HTTP requests. It should not directly calculate payroll or send emails; those tasks belong in separate services or observers. O: Open-Closed Principle (OCP)

If a Bird class has a fly() method, a Penguin subclass shouldn't override it to throw an error, as this violates the expectation that all birds in the system can fly. I: Interface Segregation Principle (ISP)

A class should have one, and only one, reason to change.