Design pattern samples in Java. Abstract Factory ================ Intent: Provide an interface for creating families of related or dependent objects without specifying their concrete classes. Builder ======= Intent: Separate the construction of a complex object from its representation so that the same construction process can create different representations. Factory Method ============== Intent: Define an interface for creating an object, but let subclasses decide which class to instantiate. Factory Method lets a class defer instantiation to subclasses.