Разница между шаблоном адаптера и шаблоном прокси-сервера?

Насколько нам известно, шаблон адаптера создает объект-оболочку для нашего реального объекта интереса, просто еще один уровень косвенности, который обеспечивает гибкость. гибкость заключается в том, что, если интерфейс реального объекта изменяется, то мы меняем интерфейс оболочки, указывающий на реальный объект, оставляя открытый интерфейс на стороне клиента без изменений.

Шаблон прокси-сервера тот же, с той разницей, что каждая прокси-оболочка предоставляет только когерентное подмножество функциональности реального объекта. Почему это было бы полезно, когда мы стремимся сделать «один класс для одной цели» вне меня.

Правильно ли я получил это?

31 голос | спросил Vorac 13 J0000006Europe/Moscow 2013, 12:31:42

1 ответ


51

Не совсем.

Основной целью шаблона адаптера является изменение интерфейса класса /библиотеки A на ожидания клиента B. Типичная реализация - это класс-оболочка или набор классов. Цель состоит не в том, чтобы облегчить будущие изменения интерфейса, а в настоящее время несовместимы с интерфейсом.

Шаблон прокси-сервера также использует классы-оболочки, но для другой цели. Цель прокси-шаблона - создать резерв для реального ресурса. Причины использования прокси-сервера могут быть

  • Реальный ресурс находится на удаленном компьютере (прокси облегчает взаимодействие с удаленным ресурсом)
  • Реальный ресурс дорог для создания (прокси гарантирует, что стоимость не понесена, если /пока действительно не понадобится).

Самое главное, что прокси обеспечивает замену для реального ресурса, для которого он является резервным, поэтому он должен предоставить тот же интерфейс.

ответил Bart van Ingen Schenau 13 J0000006Europe/Moscow 2013, 13:11:25

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132