Low Cohesion
Low cohesion is a software design principle that describes modules or classes with poorly related responsibilities, where elements within a unit have little logical connection or shared purpose. It indicates that a component is trying to do too many unrelated things, often leading to code that is difficult to understand, maintain, and test. This is considered an anti-pattern in software engineering, as it violates good design practices like the Single Responsibility Principle.
Developers should learn about low cohesion to recognize and avoid it in their code, as it directly impacts software quality and maintainability. Understanding this concept helps in refactoring efforts to improve code structure, making systems more modular and easier to debug or extend. It is particularly important in large-scale applications or team environments where clear separation of concerns is critical for collaboration and long-term project success.