J2EE의 소프트웨어 디자인 원칙 인터페이스를 사용하라 다형성 : 다수의 클래스가 한 개의 인터페이스를 동시에 구현한 경우, 동일 인터페이스라면 어떤 클래스도 호출 가능 관심 영역의 분리 및 응집성 소프트웨어의 특정 기능만 특화시켜 컴포넌트화하면, 개발하기도 쉽고, 유지보수 하기도 편하며 재사용성도 높일 수 있다. 관심 영역을 분리하게 되면 자연스레 응집도가 높아진다. 응집도란 하나의 클래스가 하나의 단위 작업, 목적에 얼마나 충실한가 하는 정도를 나타낸다. 복잡성을 숨겨라 느슨한 결합도(Loose coupling) 두 클래스가 서로에 대해 알아야 할 것이 적으면 적을수록, 서로 간에 결합도는 느슨해 진다. 이를 구현하기 위한 가장 일반적인 방법은 클래스 A가 클래스 B에 있는 메소드를 사용해야 하는 경..