반응형 소프트웨어개발5 디자인패턴 - 프로토타입(Prototype) 프로토타입 패턴(Prototype Pattern)은 객체 생성의 구체적인 클래스를 명시하지 않고, 기존 객체를 복사하여 새로운 객체를 생성하는 방식입니다. 이 패턴은 객체 생성 비용이 큰 경우, 또는 같은 구조의 객체를 여러 개 만들어야 할 때 유용합니다. 프로토타입 패턴은 주로 두 가지 주요 개념으로 구성됩니다: 복사(클론)와 인터페이스.주요 특징객체 복사: 기존 객체를 복사하여 새로운 객체를 생성할 수 있습니다. 이 방식은 객체의 생성 비용이 클 때 유용합니다.유연성: 새로운 객체를 생성할 때, 기존 객체를 기반으로 할 수 있어 유연성이 높습니다.클라이언트 코드 간소화: 클라이언트는 객체의 구체적인 클래스에 의존하지 않고, 인터페이스를 통해 객체를 복사할 수 있습니다. C++ 코드 예시아래는 프로토타.. 2025. 3. 20. 디자인패턴 - 팩토리 메소드(Factory Method) 팩토리 메소드 패턴(Factory Method Pattern)은 객체 생성에 대한 인터페이스를 정의하지만, 어떤 클래스의 인스턴스를 생성할지는 서브클래스에서 결정하도록 하는 디자인 패턴입니다. 이 패턴은 클라이언트 코드가 구체적인 클래스에 의존하지 않도록 하여, 객체 생성의 유연성과 확장성을 제공합니다. 주요 특징1. 객체 생성의 캡슐화: 객체 생성 로직을 서브클래스에 위임하여, 클라이언트 코드에서 구체적인 클래스에 의존하지 않게 합니다.2. 유연성: 새로운 제품을 추가할 때, 기존 코드를 수정하지 않고 새로운 서브클래스를 추가하여 쉽게 확장할 수 있습니다.3. 일관성 유지: 동일한 인터페이스를 통해 다양한 객체를 생성할 수 있어, 일관된 방식으로 객체를 관리할 수 있습니다.C++ 코드 예시아래는 팩토리.. 2025. 3. 17. 디자인패턴 - 빌더 패턴(Builder Pattern) 빌더 패턴(Builder Pattern)은 복잡한 객체를 단계별로 생성할 수 있도록 도와주는 디자인 패턴입니다. 이 패턴은 객체 생성의 과정을 캡슐화하여, 동일한 생성 절차에서 서로 다른 표현을 만들 수 있게 해줍니다. 특히, 객체의 속성이 많거나 복잡한 경우에 유용합니다. 주요 특징단계별 객체 생성: 객체를 생성할 때 여러 단계로 나누어 생성할 수 있어, 각 단계를 통해 필요한 속성을 설정할 수 있습니다.불변성: 생성된 객체는 불변(immutable)으로 만들 수 있어, 생성 후 상태 변경을 방지할 수 있습니다.가독성 향상: 명확한 메서드 체이닝을 통해 객체 생성 과정을 쉽게 이해할 수 있습니다.C++ 코드 예시아래는 빌더 패턴을 사용하여 복잡한 Pizza 객체를 생성하는 예시입니다.#include #.. 2025. 3. 17. 디자인패턴 - 추상 팩토리 패턴(Abstract Factory Pattern) 추상 팩토리 패턴(Abstract Factory Pattern)은 객체 생성 패턴 중 하나로, 관련된 객체 군을 생성하는 인터페이스를 제공하는 패턴입니다. 이 패턴은 구체적인 클래스에 의존하지 않고, 인터페이스를 통해 객체를 생성함으로써 코드의 유연성과 확장성을 높입니다. 주요 특징1. 객체 군 생성: 추상 팩토리 패턴은 관련된 객체를 함께 생성할 수 있도록 해줍니다. 예를 들어, 특정 스타일의 UI 컴포넌트를 생성하는 팩토리를 만들 수 있습니다.2. 인터페이스 제공: 클라이언트는 구체적인 클래스에 의존하지 않고, 인터페이스를 통해 객체를 요청합니다. 이를 통해 코드의 결합도를 낮출 수 있습니다.3. 확장성: 새로운 제품군을 추가할 때 기존 코드를 변경하지 않고 새로운 팩토리 클래스를 추가하는 방식으로 .. 2025. 3. 17. GFlags 를 이용하여 메모리 누수 찾기 오늘은 C/C++, MFC를 이용한 Windows Application 개발중에 직면할 수 있는 메모리 누수 문제를 해결할 수 있는 툴에 대해 기록하려 합니다. 1. 설치파일 찾기 GFlags 는 Windows용 디버깅 도구입니다. google에서 검색하면 설치할 수 있는 페이지를 찾을 수 있습니다. 타고 타고 들어가면 아래 세번째 그림과 같이 WDK 설치페이지까지 갑니다. 거기서 2단계, SDK를 설치하면 됩니다. 2. 설치 설치파일을 실행하면 다음과 같은 화면이 나오는데 여기서 'Debugging Tools for Windows' 를 체크하여 설치합니다. 나머지는 필요에 따라 선택하시면 됩니다. 3. 실행 windows 좌측하단의 검색버튼에서 gflags를 검색하여 실행합니다. 그러면 다음과 같은 g.. 2024. 1. 22. 이전 1 다음 반응형