목록디자인패턴 (6)
The Office Lover
확장할 때는 개방, 수정할 때는 폐쇄 개방 폐쇄 원칙은 코드의 확장성 문제로 볼 수 있다. 추후 변경되는 요구 사항에 대응할 때 코드가 확장할 때는 개방, 수정할 때는 폐쇄될 수 있다면 해당 코드의 확장성이 매우 뛰어나다는 것을 의미한다. 확장 가능한 코드를 작성하려면 확장, 추상화, 캡슐화에 대해 인식하고 있는 것이 매우 중요하다. 코드 작성시 현재 코드에 앞으로 요구 사항이 추가될 가능성에 대해 더 많은 시간을 할애할 필요가 있다. 미리 설계해 확장 가능하도록 미리 구성하면, 코드의 전체 구조를 변경할 필요 없이 새로운 코드가 유연하게 추가되며, 코드 수정을 최소화하면서 요구 사항을 만족시킬 수 있다. 코드의 변경 가능한 부분과 변경할 수 없는 부분을 잘 식별 변경되는 사항을 기존 코드와 분리할 수 ..
팩토리 패턴(factory pattern)이란? 객체를 생성하기 위한 인터페이스를 정의하는데, 어떤 클래스의 인스턴스를 만들지는 서브클래스에서 결정하게 한다 즉, 팩토리 메서드 패턴을 이용하면 클래스의 인스턴스를 만드는 일을 서브클래스에게 맡기는 것 자바코드로 이해하기 핵심은 모두 같은 부모 클래스를 상속한다는 점 public interface Shape { void draw(); } public class Rectangle implements Shape { @Override public void draw() { System.out.println("Inside Rectangle :: draw() method."); } } public class Square implements Shape { @Overri..