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)

A class should not be forced to implement methods it does not use.

A high-level OrderManager should depend on a generic PaymentProcessorInterface rather than a specific PayPalPayment class. 📦 Understanding the .7z Context