c++디자인패턴

    [모던 c++의 디자인 패턴] 2장. 빌더

    빌더 빌더 패턴(Builder pattern)은 생성이 까다로운 객체를 쉽게 처리하기 위한 패턴 빌더 패턴은 단순하게 개별 객체의 생성을 별도의 다른 클래스에게 위임 빌더 하나의 인터페이스가 여러 하위 빌더를 노출할 수 있음 상속과 흐름식 인터페이스를 요령있게 활용하면, 여러 빌더를 거치는 객체 생성을 쉽게 할 수 있음 2.2 단순한 빌더 struct HtmlBuilder { HtmlElement root; HtmlBuilder(string root_name) { root.name = root_name; } void add_child(string child_name, string child_text) { HtmlElement e{ child_anme, child_text }; root.elements.e..

    [모던 c++의 디자인 패턴] 1장. SOLID 디자인 원칙

    디자인 패턴 2000년대 초 로버튼 마틴(Robert C. Martin)에 의해 소개됨 SOLID 디자인 패턴은, 우리가 앞으로 살펴볼 디자인 패턴에 전반적으로 녹아져 있음 SOLID 디자인 패턴 1) 단일 책임 원칙(Single Responsibility Principle, SRP) 단일 책임 원칙에서 각 클래스는 단 한 가지의 책임을 부여받아, 수정할 이유가 단 한가지여야 한다. 전지전능한 객체 (여러 기능을 담고 있는)는 SPR를 위배한다. 기록을 위한 메모장 클래스가 있을 때, 이 클래스는 vector에 파라미터로 주어지는 값을 추가하는 함수가 존재한다. 이때, 추가로 영구적인 파일을 저장하는 기능을 만든다고 할 때 디스크에 파일을 쓰는 기능 또한 메모장 클래스의 역할일까? 작은 수정을 여러 클래..