728x90 디자인패턴3 디자인패턴 - Command 패턴 Command 패턴은 행동(명령)을 객체로 캡슐화하여, 요청 내역을 매개변수화하거나 큐에 저장하거나 실행 취소(undo) 기능을 지원할 수 있도록 설계된 행위 디자인 패턴(Behavioral Pattern)입니다. 이 패턴은 요청, 작업, 명령 등을 객체로 만들어서 다양한 요구사항에 따라 실행하거나 조합할 수 있게 도와줍니다.### 핵심 개념 1. 명령 캡슐화: - Command 패턴은 실행하고자 하는 명령을 단일 객체로 캡슐화합니다. - 이는 실행 대상(Receiver)과 실행 요청자(Invoker)를 분리하여 서로 간의 의존성을 줄입니다. 2. 실행 취소/재실행(Undo/Redo): - 명령을 객체로 캡슐화하면 실행 내역을 저장할 수 있어, 이를 통해 undo/redo 기능을 쉽게 구.. 2025. 4. 10. 디자인패턴 - Strategy 패턴 Strategy 패턴은 객체의 행위를 정의하고 이를 동적으로 변경하거나 교체할 수 있도록 설계하는 행위 디자인 패턴입니다.이 패턴은 다양한 알고리즘(혹은 행위)을 캡슐화하여 객체 간의 의존성을 제거하고 확장성을 높이는 데 도움을 줍니다.### 핵심 개념1. 알고리즘을 캡슐화: - 특정 행위를 수행하는 알고리즘을 각각의 클래스(전략)로 캡슐화하여 독립적으로 관리합니다.2. 동적 교체: - 실행 중에 알고리즘을 변경하거나 교체할 수 있는 유연성을 제공합니다.3. 확장성 강화: - 새로운 알고리즘을 추가하려면 기존 코드를 수정하지 않고 새로운 클래스를 추가하면 됩니다.4. 느슨한 결합: - 클라이언트는 알고리즘의 세부 구현에 의존하지 않고 인터페이스를 통해 접근합니다.### 구조Strategy .. 2025. 4. 10. 디자인패턴 디자인 패턴은 소프트웨어 개발에서 자주 나타나는 문제를 해결하기 위한 재사용 가능한 설계 방법입니다. 이는 객체지향 프로그래밍에서 코드의 구조를 효율적으로 만들고, 유지보수성과 확장성을 높이는 데 도움을 주는 표준화된 접근 방식입니다.### 디자인 패턴의 분류 디자인 패턴은 일반적으로 3가지 유형으로 나눠집니다: #### 1. 생성 패턴 (Creational Patterns) 객체 생성과 초기화를 다루며, 코드에서 객체 생성 방식을 효율적으로 관리하도록 합니다. - 예: - Singleton: 한 클래스에 대해 객체가 하나만 생성되도록 보장합니다. - Factory Method: 객체 생성 과정을 캡슐화하여 유연성을 제공합니다. - Builder: 복잡한 객체 생성 과정을 단.. 2025. 4. 9. 이전 1 다음 728x90