Golang обучение с нуля | Паттерны проектирования | Стратегия

Стратегия - это поведенческий паттерн проектирования, который определяет схожие алгоритмы и помещает каждый из них в собственную структуру, после чего алгоритмы можно взаимозаменять во время исполнения программы. Одной из самых востребованных функций являлся поиск и прокладывание маршрутов. Пребывая в неизвестный город, пользователь должен иметь возможность указать начальную точку и пункт назначения, а навигатор — проложит оптимальный путь. Первая версия вашего навигатора могла прокладывать маршрут лишь по дорогам, поэтому отлично подходила для путешествий на автомобиле. Но, очевидно, не все ездят в отпуск на машине. Поэтому следующим шагом вы добавили в навигатор прокладывание пеших маршрутов. Через некоторое время выяснилось, что люди предпочитают ездить по городу на общественном транспорте. Поэтому вы добавили и такую опцию прокладывания пути. Вместо того, чтобы изначальный объект сам выполнял тот или иной алгоритм, он будет играть роль контекста, ссылаясь на одну из стратегий и
Back to Top