생성 패턴

    [Design Pattern] 생성 패턴 - 싱글톤 패턴

    github 코드 https://github.com/yaini/Spring_Study/blob/spring-2-oop-design-pattern/design-pattern/src/main/java/creational 싱글톤 패턴 한 클래스에 한 인스턴스만 존재하도록 제한하는 패턴 특징 기본 생성자가 private static 팩토리 메소드인 getInstance 인스턴스를 저장할 static 필드 장점 하나의 인스턴스만 생성하므로 메모리 낭비를 방지할 수 있다. static으로 전역으로 사용되는 인스턴스이기 때문에 데이터 공유가 쉽다. 단점 여러 스레드에서 동시에 접근 할 수 있으므로 동시성 문제 유의하여 설계해야 한다. 단위 테스트는 격리된 환경에서 실행되어야 하지만, 싱글톤 패턴은 전역에서 사용하기 ..

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

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