Design Pattern14 Design Patterns - Factory Method 구체적으로 어떤 인스턴스를 만들지는 서브 클래스가 정한다 다양한 구현체(Product)가 있고, 그중에서 특별한 구현체를 만들 수 있는 다양한 팩토리(Creator)를 제공할 수 있다. 확장에 열려있고 변경에 닫혀있는 구조로 만들어보자 public interface ShipFactory { default Ship orderShip(String name, String email) { validate(name, email); prepareFor(name); Ship ship = createShip(); sendEmailTo(email, ship); return ship; } void sendEmailTo(String email, Ship ship); Ship createShip(); private void .. 2021. 11. 17. Design Patterns - Singleton 인스턴스를 오직 한개만 제공하는 클래스 시스템 런타임, 환경 세팅에 대한 정보 등, 인스턴스가 여러개 일 때 문제가 생길 수 있는 경우가 있다. 인스턴스를 오직 한개만 만들어 제공하는 클래스가 필요하다. 싱글톤 패턴을 가장 단순히 구현하는 방법 public class Settings1 { private static Settings1 instance; private Settings1() { } public static Settings1 getInstance() { if (instance == null) { instance = new Settings1(); } return instance; } } 생성자를 private으로 만든 이유 : 외부에서 해당 인스턴스에 직접 접근을 막기 위해 getInstance(.. 2021. 11. 11. 이전 1 2 3 다음