Найти в Дзене

Паттерн проектрования Мост (python)

Как часто бывает, что вы пишете какой-то функционал и вам надо реализовать разный функционал для разных систем. Именно эту проблему и решает паттерн мост. Он позволяет прокинуть часть функционала в другой класс тем самым разгрузив. основной класс.

В примере ниже я реализовал абстрактную фигуру, в которой реализован bridge_color являющейся местом хранения класса с цветом. Затем я реализовал сами фигуры и класс абстрактных линий отвечающий за свои манипуляции с цветом.

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

Отделив функционал отрисовки мы можем дальше заниматься улучшением фигуры : добавление координат, добавление формул расчета фигур, и т д. При этом мы сохраним читаемость и простоту кода.

Не смотря на то что этот пример очень простой и его можно улучшить добавив паттерн строитель сеттеры и геттеры и т п. На мой взгляд он показывает основную концепцию паттерна мост.

Ссылка на сайт: http://kaper.su/it/most/