Encapsulation: Encapsulation is the practice of hiding internal details and providing a public interface for interacting with an object or module.
Cohesion: Cohesion refers to how closely the elements within a module are related to each other. High cohesion means that the elements are strongly related and work together towards a common goal.
Coupling: Coupling measures the level of interdependence between modules. Low coupling means that modules are independent and can be modified without affecting other parts of the system.