■ 10장 ISP: 인터페이스 분리 원칙 Interface Segregation Principle User1이 op2와 op3을 사용하지 않음에도 이 두 메소드가 OPS에 포함되어 있으므로 User1은 OPS에 의존성을 가진다. op2 소스가 변경되면 User1도 재컴파일과 재배포를 해야 한다. 이런 경우는 아래 그림과 같이 인터페이스로 분리하여 해결할 수 있다. 자바와 같은 정적 타입 언어가 아닌 루비나 파이썬 같은 동적 타입 언어의 경우는 위와 같은 문제를 초래하는 import, use, include가 없기 때문에 소스코드 의존성이 아예 없으므로 재컴파일과 재배포가 불필요하다. 그래서 동적 타입 언어는 보다 유연하고 결합도가 낮은 시스템을 만들 수 있기 때문에 ISP를 아키텍처가 아닌 언..