java

    [Design Pattern] 생성 패턴 - 프로토 타입 패턴

    github 코드 https://github.com/yaini/Spring_Study/blob/spring-2-oop-design-pattern/design-pattern/src/main/java/creational 프로토 타입 패턴 생성할 객체들의 타입이 프로토타입 인스턴스로부터 결정되며, 새 객체를 위해 자신을 복제한다. 상태 값이 다른 객체 생성을 위해 깊은 복사를 사용하는 객체 생성 방식 기존 객체를 복제함으로써 객체를 생성한다. 단점 clone에 대한 override 요구 객체를 생성하는데 비용이 많이 들기 때문에 유사한 객체가 존재하는 경우 사용 프로토 타입 패턴이라고 하면 뭔가 대단한 원칙인 것 같지만 객체를 생성 후 복사한다는 뜻이다. 예를 들어, DB에 접근해서 가져와야 할 데이터가 이미..

    [Design Pattern] 생성 패턴 - 빌더 패턴

    github 코드 https://github.com/yaini/Spring_Study/blob/spring-2-oop-design-pattern/design-pattern/src/main/java/creational/Builder.java 생성(construction)과 표기를 분리해 복잡한 객체를 생성한다. 별도의 Builder 클래스를 만들어 필수 값에 대해서는 생성자를, 선택적인 값에 대해서는 메소드를 통해 값을 입력 받은 후, build 메소드를 통해 하나의 인스턴스 리턴 선택적인(Optional) 멤버 변수, 파라미터나 지속성 없는 상태 값이 많을 때 팩토리 패턴에서 생성해야 하는 하위 클래스들이 복잡할 때 단점 매개변수가 적은 경우 생성자보다 코드가 장황해 진다. 구현 방법 빌더 클래스를 St..