javaoopsolid-principlesdesign-principlesinterface-segregation-principle

What is the reasoning behind the Interface Segregation Principle?


The Interface Segregation Principle (ISP) says that many client specific interfaces are better than one general purpose interface. Why is this important?


Solution

  • ISP states that:

    Clients should not be forced to depend on methods that they do not use.

    ISP relates to important characteristics - cohesion and coupling.
    Ideally your components must be highly tailored. It improves code robustness and maintainability.

    Enforcing ISP gives you following bonuses:

    If you want to learn more about software design principles, get a copy of Agile Software Development, Principles, Patterns, and Practices book.