반응형

프로그래밍 기술/Escort GoF의 디자인 패턴 C# 103

[C#] 팩토리 메서드 패턴(Factory Method Pattern)

3. 팩토리 메서드 패턴(Factory Method Pattern) 프로그래밍하다 보면 같은 방법으로 사용할 수 있는 여러 종류의 개체를 일반화하여 기반 클래스를 정의하고 이를 기반으로 파생 클래스로 정의하는 것은 매우 흔합니다. 이 경우에 사용하는 곳에서 구체적으로 어떠한 개체를 생성해서 사용할 지에 대하여 개발 초기 단계에서 결정할 수 없다면 어떻게 하면 좋을까요? 팩토리 메서드 패턴을 이용하면 이러한 고민을 해결할 수 있습니다. 추상 팩토리 클래스에서는 사용할 개체(추상 클래스)를 생성하는 것에 대해 약속만 합니다. 대신 파생 팩토리 클래스에서 구체적으로 어떠한 개체를 생성할 것인지 구현합니다. 이처럼 구체적인 개체를 생성하는 부분을 분리하면 추상 팩토리 클래스에서는 어떠한 개체를 생성할 것인지에 ..

[C#] 빌더 패턴(Builder Pattern)

2. 빌더 패턴(Builder Pattern) 프로그래밍하다 보면 여러 요소로 구성되는 개체가 있습니다. 그리고 이와 같은 개체를 생성하는 방법이 목적에 따라 다양한 경우가 생깁니다. 이 경우에 빌더 패턴은 목적에 따른 개체를 생성하는 과정에 대한 약속과 각 과정에서 수행할 구체적인 알고리즘을 분리하여 개체를 생성하는 패턴입니다. 빌더 패턴에서 빌더는 추상 클래스로 개체를 생성하는 과정들을 약속합니다. 빌더를 기반으로 파생한 클래스에서는 생성 과정들에 대해 구체적으로 구현합니다. 이처럼 정의하면 빌더를 사용하는 곳에서는 서로 다른 구조를 갖는 개체를 같은 방법으로 생성할 수 있습니다. 2016/04/25 - [프로그래밍 기술/Escort GoF의 디자인 패턴 C#] - [C#] 2. 빌더 패턴(Build..

[C#] 추상 팩토리 패턴 (Abstract Factory Pattern)

1. 추상 팩토리 패턴 (Abstract Factory Pattern) 프로그래밍하다 보면 특정 목적에 따라 사용해야 하는 개체들이 서로 호환성이 있어야 하는 경우가 발생합니다. 목적에 따라 사용해야 하는 개체군들이 있을 때 특정 목적에 맞게 호환성 있는 개체가 무엇인지 조사하고 사용하기 위해서 비용이 발생할 수 있습니다. 이럴 때 추상 팩토리 패턴을 사용하면 효과적으로 비용을 줄일 수 있을 것입니다. 특히, 비슷한 작업을 위해 필요한 개체들 사이에 호환성을 유지해야 하는 여러 종류의 개체군이 있을 때 추상 팩토리 패턴을 사용하면 표준화된 방식에 의해 자신에게 맞는 개체군을 효과적으로 사용할 수 있게 해 줍니다. 이를 위해 추상 팩토리 패턴에서는 서로 호환성 있는 개체들을 생성하는 부분만 담당하는 개체를..

반응형