Factory of UI (Windows and Linux) ABSTRACT FACTORY PATTERN The intent of the Abstract Factory design pattern is to: "Provide an interface for creating families of related or dependent objects without specifying their concrete classes." [GoF]