ISP( Interface Segregation Principle ) : 많은 클라이언트 고유의 인터페이스는 하나의 범용 인터페이스보다 우수하다. 즉, 거대한 클래스가 있다면, 그것을 쪼개라. 다음과 같은 코드가 있다. public interface Worker { public void work(); public void eat(); } public class Staff implements Worker { @Override public void work() { System.out.println("Staff가 일한다."); } @Override public void eat() { System.out.println("Staff가 먹는다."); } } 위 코드는 일하는 사람이라는 Worker인터페이스를 Sta..
객체지향 원리변하는 것을 캡슐화하라구현에 의존하기 보다는 인터페이스에 의존하도록 코딩하라각 클래스는 변경 요인이 오직 하나이어야한다.클래스는 행동과 기능에 관한 것이다. 디자인 원리 (SOLID) Single Responsibility Principle (SRP) 단일책임의 원리로 모든 객체는 하나의 책임을 가진다. Open Closed Principle (OCP) 수정에는 닫혀있고, 확장에는 열려있다. Liskov Substitution Principle (LSP) 자식 타입들은 부모타입들이 사용되는 곳에 대체될 수 있어야한다. 상속보다는 위임, 구성, 집합을 사용하면 소프트웨어는 더 유연하고, 유지보 수성, 확장성, 재사용성이 좋아진다. Interface segregation principle (IS..
- Total
- Today
- Yesterday