Паттерн интерфейс — это класс, который обеспечивает программисту простой или более программно-специфический способ доступа к другим классам.
Фабричный метод — это порождающий паттерн проектирования, который определяет общий интерфейс для создания объектов в суперклассе, позволяя подклассам изменять тип создаваемых объектов.
Абстрактная фабрика — порождающий шаблон проектирования, предоставляет интерфейс для создания семейств взаимосвязанных или взаимозависимых объектов, не специфицируя их конкретных классов.
Канал событий — фундаментальный шаблон проектирования, используется для создания канала связи и коммуникации через него посредством событий.
Паттерн делегирования — это способ, которым объект внешне выражает некоторое поведение, но в реальности передаёт ответственность за выполнение этого поведения связанному объекту.