Обсуждение статьи "Шаблоны проектирования в MQL5 (Часть 2): Структурные шаблоны"

 

Опубликована статья Шаблоны проектирования в MQL5 (Часть 2): Структурные шаблоны:

В этой статье мы продолжим изучать шаблоны проектирования, которые позволяют разработчикам создавать расширяемые и надежные приложений не только на MQL5, но и на других языках программирования. В этот раз мы поговорим о другом типе — о структурных шаблонах. Будем учиться проектировать системы, используя имеющиеся классы для формирования более крупных структур.

Шаблон Bridge (мост) используется в случаях, когда есть абстракция, которая имеет множество возможных реализаций. Вместо использования обычного наследования, которое всегда связывает реализацию с абстракцией, можно использовать этот шаблон и отделить абстракцию от ее реализаций, чтобы избежать проблемы в случае изменений или обновлений. Такое разделение может помочь создавать чистый код, который можно повторно использовать, расширять и удобно тестировать.

Структура шаблона "Мост" (Bridge) показана на схеме ниже:

Мост (Bridge)

На схеме Моста, показанной выше, есть следующие элементы:

  • Abstraction — абстракция, определяет интерфейс абстракции и поддерживает ссылку на объект-реализатора.
  • RefinedAbstraction — расширяет интерфейс абстракции.
  • Implementor — реализация, идентифицирует интерфейс классов реализации.
  • ConcreteImplementor — реализует интерфейс разработчика и идентифицирует конкретную реализацию этого интерфейса.

Автор: Mohamed Abdelmaaboud

Причина обращения: