CS

    디자인 패턴 - 빌더패턴(Builder)

    디자인 패턴 - 빌더패턴(Builder)

    디자인 패턴이란? 디자인 패턴은 기존 환경 내에서 반복적으로 일어나는 문제들을 어떻게 풀어나갈 것인가에 대한 일종의 해결책이다. 디자인 패턴하면 떠오르는 'Gof의 디자인 패턴'에서는 객체지향적 디자인 패턴의 카테고리를 "생성패턴(Creational Pattern)", "구조 패턴(Structural Pattern)", "행동 패턴(Behavioral Patter)" 이렇게 3가지로 구분하고 있다. 그중 생성 패턴에 해당하는 Builder 패턴에 대해 알아보자 빌더 패턴(Builder) 빌더는 복잡한 객체들을 단계별로 생성할 수 있도록 하는 생성 디자인패턴이다. 이 패턴을 사용하면 같은 제작 코드를 사용하여 객체의 다양한 유형들과 표현을 제작할 수 있다. 구조 Buolder(추상클래스)를 정의하고 이를 ..

    디자인패턴 - 프로토타입 패턴(Prototype)

    디자인패턴 - 프로토타입 패턴(Prototype)

    디자인 패턴이란? 디자인 패턴은 기존 환경 내에서 반복적으로 일어나는 문제들을 어떻게 풀어나갈 것인가에 대한 일종의 해결책이다. 디자인 패턴하면 떠오르는 'Gof의 디자인 패턴'에서는 객체지향적 디자인 패턴의 카테고리를 "생성패턴(Creational Pattern)", "구조 패턴(Structural Pattern)", "행동 패턴(Behavioral Patter)" 이렇게 3가지로 구분하고 있다. 그중 생성 패턴에 속하는 프로토타입 패턴에 대해 알아보자. 프로토타입 패턴(Portotype Pattern) 프로토타입 패턴은 객체를 생성하는데 비용이 많이 들고, 비슷한 객체가 이미 있는 경우에 사용되는 생성 패턴 중 하나이다. 즉, 프로토타입 패턴은 원본 객체를 새로운 객체에 복사하여 필요에 따라 수정하는..

    디자인 패턴 - 전략 패턴(Strategy)

    디자인 패턴이란? 디자인 패턴은 기존 환경 내에서 반복적으로 일어나는 문제들을 어떻게 풀어나갈 것인가에 대한 일종의 해결책이다. 디자인 패턴하면 떠오르는 'Gof의 디자인 패턴'에서는 객체지향적 디자인 패턴의 카테고리를 "생성패턴(Creational Pattern)", "구조 패턴(Structural Pattern)", "행동 패턴(Behavioral Patter)" 이렇게 3가지로 구분하고 있다. 그중 행동 패턴에 속하는 전략 패턴에 대해 알아보자. 전략 패턴(Strategy) 전략 패턴 은 알고리즘들의 패밀리를 정의하고, 각 패밀리를 별도의 클래스에 넣은 후 그들의 객체들을 상호교환 할 수 있도록 하는 행동 디자인 패턴이다. 예시 문제점 당신은 RPG 게임을 만들기로 했다. RPG 게임의 특성상 캐릭..

    GoF 디자인 패턴: 소프트웨어 디자인의 핵심

    GoF 디자인 패턴: 소프트웨어 디자인의 핵심

    GoF(Gang of Four)는 소프트웨어 디자인 패턴에 대한 가장 잘 알려진 참고 자료 중 하나인 Design Patterns: Elements of Reusable Object-Oriented Software 책의 저자들을 지칭하는 말이다. 이 책은 디자인 패턴을 고안하고 문서화하여 소프트웨어 개발 커뮤니티에 널리 알려진 기반을 제공했다. GoF는 Erich Gamma, Richard Helm, Ralph Johnson, John Vissides 네 명의 소프트웨어 엔지니어를 말한다. GoF가 제안한 Design Patterns: Elements of Reusable Object-Oriented Software 책은 1994년 처음 출판되었으며, 객체 지향 소프트웨어 개발에서 디자인 패턴의 중요성을..