Part I: Creational Patterns .........................................................29
Chapter 2: Builder ...............................................................................33
Scenario �������������������������������������������������������������������������������������������������������������� 33
Simple Builder �����������������������������������������������������������������������������������������������������35
Fluent Builder ������������������������������������������������������������������������������������������������������36
Communicating Intent �����������������������������������������������������������������������������������������37
Groovy-Style Builder �������������������������������������������������������������������������������������������39
Composite Builder �����������������������������������������������������������������������������������������������42
Summary�������������������������������������������������������������������������������������������������������������47
Chapter 3: Factories ...........................................................................49
Scenario �������������������������������������������������������������������������������������������������������������� 49
Factory Method ��������������������������������������������������������������������������������������������������� 51
Factory ���������������������������������������������������������������������������������������������������������������� 52
Inner Factory �������������������������������������������������������������������������������������������������������54
Abstract Factory ��������������������������������������������������������������������������������������������������56
Functional Factory ����������������������������������������������������������������������������������������������59
Summary�������������������������������������������������������������������������������������������������������������60
Chapter 4: Prototype ...........................................................................63
Object Constrution ����������������������������������������������������������������������������������������������63
Ordinary Duplication �������������������������������������������������������������������������������������������64
Duplication via Copy Construction ����������������������������������������������������������������������65
Serialization ��������������������������������������������������������������������������������������������������������68
Prototype Factory ������������������������������������������������������������������������������������������������72
Summary�������������������������������������������������������������������������������������������������������������74