전체 글 (27) 썸네일형 리스트형 GOF 데코레이터 패턴 자바 데코레이터 패턴은 구조(Structural) 디자인 패턴 중 하나로, 객체에 동적으로 새로운 기능을 추가할 수 있는 패턴입니다. 이 패턴은 기존의 객체를 수정하지 않고 기능을 확장하고자 할 때 유용합니다. 주요 구성 요소: - Component: 데코레이터 패턴에서 기능을 추가하고자 하는 객체가 구현하는 인터페이스 또는 추상 클래스입니다. 기본 기능을 정의하고, 데코레이터 객체들이 추가 기능을 구현할 때 이를 참조합니다. - ConcreteComponent: 기본 기능을 구현하는 클래스입니다. Component 인터페이스를 구체적으로 구현합니다. - Decorator: 기능을 추가하는 데코레이터 객체의 추상 클래스입니다. Component를 상속하고, 내부에 Component 객체를 유지합니다. -.. GOF Composite 디자인패턴 자바 컴포지트 패턴은 구조(Structural) 디자인 패턴 중 하나로, 객체들을 트리 구조로 구성하여 부분-전체 계층을 표현하는 패턴입니다. 이 패턴은 단일 객체와 그 객체들을 포함하는 복합 객체를 동일한 인터페이스로 다룰 수 있게 합니다. 주요 구성 요소: - Component: 컴포지트 패턴에서 계층 구조의 모든 객체들이 구현하는 인터페이스 또는 추상 클래스입니다. 단일 객체와 복합 객체를 동일한 방식으로 다루기 위해 필요한 메서드들을 정의합니다. - Leaf: 컴포지트 패턴에서 단일 객체를 나타내는 클래스입니다. Leaf 클래스는 Component 인터페이스를 구현하며, 자식 객체를 가질 수 없습니다. - Composite: 컴포지트 패턴에서 복합 객체를 나타내는 클래스입니다. Composite .. GOF 파사드 패턴 파사드 패턴(Facade Pattern)은 소프트웨어 디자인 패턴 중 하나로, 객체 지향 프로그래밍에서 사용되는 패턴입니다. 파사드는 건물의 외관에서 볼 수 있는 정면이나 입구를 의미하는데, 이와 같이 소프트웨어에서 파사드 패턴은 복잡한 시스템이나 클래스 집합을 단순화시키기 위해 사용됩니다. 파사드 패턴은 주로 다른 서브시스템이나 클래스들을 감싸고, 외부에 대한 단일 인터페이스를 제공하는 역할을 합니다. 이렇게 하면 클라이언트 코드는 파사드를 통해서만 서브시스템과 상호작용할 수 있으며, 서브시스템의 복잡성을 숨길 수 있습니다. 파사드 패턴의 구성요소는 다음과 같습니다: 1. 파사드(Facade): 파사드는 클라이언트와 서브시스템 간의 중간 역할을 담당합니다. 클라이언트의 요청을 받아 서브시스템에 전달하고.. 이전 1 2 3 4 5 6 7 8 9 다음