클라이언트는 자신이 사용하는 메소드에만 의존해야 한다.
인터페이스는 그 인터페이스를 사용하는 클라언트를 기준으로 분리해야 한다.
사용하지 않지만 의존성을 가진 클래스를 가지고 있으면 한 기능에 변경이 발생하고 다른 기능을 사용하는 클라이언트들에게도 영향을 미치게 된다. (SRP또한 위배)
따라서 사용하는 기능만 제공하도록 인터페이스를 분리함으로써 기능에 대한 여파를 최소화 해야한다.
참고 : https://steady-coding.tistory.com/385 , https://sehun-kim.github.io/sehun/solid/