Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Если задача сформулирована в связи с развитием программного продукта, то следует уточнить предлагаемое решение в форме рекомендуемых паттернов программирования
8.1. Если нужно устранить вредную связь: Если один элемент (создатель) содержит алгоритм создания второго элемента и при этом: – Нужно заменять порождаемый элемент без изменения создателя. Фабричный метод – Нужно заменять семейство порождаемых элементов без изменения создателя. Абстрактная фабрика – Алгоритм создания элемента не должен зависеть от того, из каких частей и в какой их комбинации состоит порождаемый элемент. Строитель Интерфейс одного элемента не должен зависеть от интерфейса второго. Адаптер. Нужно создавать элемент/получать к нему доступ только в конкретных случаях. Заместитель. Нужно одинаково обращаться к элементам, не зависимо, являются они простыми и составными. Компоновщик Нужно отделить абстракцию элемента от реализации. Мост Нужно снизить зависимость между подсистемами. Фасад Нужно обеспечить слабую связанность между элементами системы. Посредник Нужно избежать связи между отправителем запроса и получателем. Цепочка обязанностей 8.2. Если нужно повысить эффективность: Если один элемент (создатель) содержит алгоритм создания второго элемента и при этом: – Нужно переопределить алгоритмы создания элементов в элементах-потомках. Фабричный метод – Нужно переопределить алгоритмы создания семейств элементов в элементах-потомках. Абстрактная фабрика – Нужно гарантировать, что элемент создан в единственном экземпляре. Одиночка – Новые элементы создаются путем копирования элемента-прототипа. Прототип Нужно обеспечить совместное использование элементов с различными интерфейсами. Адаптер Нужно динамически расширить функциональность элемента, добавить ему новые обязанности на время. Декоратор Нужно заменить элемент до момента, когда он действительно понадобится. Заместитель Нужно одинаково обращаться с простыми и составными элементами. Компоновщик Нужно ограничить набор экземпляров элементов. Приспособленец Нужно предоставить доступ к элементам подсистемы с помощью одного элемента. Фасад Нужно переопределить шаги алгоритма в элементах-потомках. Шаблонный метод Нужно предоставить последовательный доступ ко всем подэлементам составного элемента. Итератор Нужно представить запрос в виде элемента, ставить запросы в очередь, поддерживать отмену операций. Команда Элементы должны изменять свое состояние в зависимости от состояния других элементов. Наблюдатель Нужно объединить все связи между элементами в одном элементе. Посредник Нужно обойти элементы структуры, выполнив над каждым из них некоторую операцию. Посетитель Нужно изменять поведение элемента в зависимости от его состояния. Состояние Нужно определить семейство взаимозаменяемых алгоритмов в виде элементов. Стратегия Нужно сохранить состояние элемента, восстановить элемент в нужном состоянии. Хранитель Если удалось выбрать подходящий вариант, переход к описанию подходящего паттерна. Date: 2016-06-09; view: 467; Нарушение авторских прав |