GOF design Patterns in java

어댑터 패턴이란 어댑터 패턴(Adapter Pattern)은 서로 호환되지 않는 인터페이스 때문에 함께 사용할 수 없는 클래스들을 연결해주는 디자인 패턴입니다. 이 패턴은 기존의 클래스를 수정하지 않고도 새로운 인터페이스를 통해 클래스들을 함께 작동시킬 수 있도록 해줍니다. 어댑터 패턴은 기존 시스템에 새로운 라이브러리나 프레임워크를 통합하고자 할 때, 또는 서로 다른 시스템 간의 데이터를 교환해야 할 때 매우 유용합니다. 클라이언트는 어댑터를 통해 호환되지 않는 인터페이스를 가진 클래스와 상호작용할 수 있으며, 이는 시스템의 유연성과 재사용성을 크게 향상시킵니다. 쉽게 이해하기 위해 실생활에서 찾아보자면 일본 여행갈때 110V 어댑터 필수죠. 그 어댑터가 이 어댑터 맞습니다 (가가 가가?) 220V제품..
싱글톤 패턴이란 싱글톤 패턴은 전체 시스템에서 단 하나의 인스턴스만 생성되도록 보장하고, 이 인스턴스에 대한 전역 접근을 제공하는 디자인 패턴입니다. 싱글톤 패턴의 구성 1. Client 싱글톤 인스턴스를 사용하는 주체 싱글톤 클래스의 getInstance() 메서드를 호출하여 싱글톤 인스턴스에 접근하고 이 인스턴스를 통해 필요한 작업을 수행 2. Singleton Class 싱글톤 패턴의 핵심이 되는 클래스 자기 자신의 유일한 인스턴스를 생성하고 이에 대한 접근 방법을 제공 싱글톤 패턴 다이어그램 예제를 바로 살펴볼건데, 싱글톤패턴 구현은 여러가지 방법이 있습니다. 각 방법이 장단점도 있고 취약점들도 존재합니다. 그중에 보편적인 방법 4가지를 살펴볼겁니다. 1. Lazy Initialization (레..
프로토타입 패턴이란 기존 객체를 복사하여 새로운 객체를 생성하는 디자인 패턴입니다. 이 패턴은 복잡한 객체의 생성 과정을 단순화하고, 초기화에 많은 비용이 드는 객체의 효율적인 생성을 가능하게 합니다. 프로토타입 패턴은 객체의 생성과 구성이 런타임에 결정되어야 할 때 유용하며, 클라이언트는 복사될 객체의 구체적인 타입을 몰라도 객체를 복제할 수 있습니다. 프로토타입 패턴의 구성 1. Client 프로토타입을 사용하여 새 객체를 생성하는 주체입니다. 클라이언트는 프로토타입 인터페이스를 통해 새 객체를 요청하며, 얻은 객체의 복사본으로 원하는 작업을 수행합니다. 2. Prototype 객체를 복사하기 위한 인터페이스를 정의합니다. 이 인터페이스는 자기 자신의 복제본을 생성하는 메서드를 포함하며, 구체적인 복..
추상 팩토리 패턴이란 관련된 객체의 집합 또는 서로 의존하거나 연관된 여러 종류의 객체를 생성하는 인터페이스를 제공하는 디자인 패턴입니다. 이 패턴은 구체적인 클래스에 의존하지 않고 서로 관련된 객체들의 군을 생성할 수 있게 해줍니다. 말은 어려워보이지만 별거 아닙니다. 그냥 테이블, 쇼파, 의자 제품을 한 세트로 생산한다고 생각해봅시다. 그 상황에서 고소득층 전용 프리미엄 하이엔드 제품셋트를 만들고 싶을때, 추상 팩토리 패턴이 적용 되어 있을경우 클라이언트 코드에서 단 몇줄만 다르게 코딩하여 생산가능하게끔 해줍니다. 팩토리 메서드 패턴의 구성 1. AbstractFactory 관련된 객체 집합을 생성하는 메서드를 선언한 인터페이스입니다. 구체적인 팩토리 클래스들이 이 인터페이스를 구현하게 됩니다. 2...
devcomet
'GOF design Patterns in java' 태그의 글 목록