![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/TItgl/btruKiDbpV9/qB71UKuK9FPF9r5LBQD5IK/img.jpg)
당연한 말이지만 인터페이스는 구현하는 쪽을 생각해 설계해야 하고 클래스는 사용하는 쪽을 생각해 설계해야 한다 코드를 작성한다는 것은 작게 보면 어떤 기술을 사용해 멋진 프로그램을 만들어내느냐 지만 크게 보면 결국 요구사항을 충족시키는 프로그램을 어떻게 만들어내느냐 이기 때문이다 클라이언트 혹은 액터라고 부르는 이해 관계자는 인터페이스나 클래스에 기대하는 행위가 있다 개발자는 그 기대에 부응할 의무가 있다 Java8부터 인터페이스에 default method를 추가할 수 있게 됐다, 이는 엄청난 축복이지만 저주가 될 수도 있다 위에서 말한 내용 때문인데 클라이언트는 인터페이스에 기대하는 행위가 있는데 수많은 구현체들에서 이 기대가 올바르게 작동하리라는 보장이 없기 때문이다 책에서는 apache.common..
Java/Effective Java
2022. 2. 28. 16:23