В чем разница между Фасадом и Адаптером? - PullRequest
77 голосов
/ 03 июня 2010

Я читал оба определения, и они кажутся совершенно одинаковыми. Кто-нибудь может указать, в чем их различия?

Спасибо

Ответы [ 13 ]

0 голосов
/ 08 августа 2018

Фасад

Абстрагирует сложность, чтобы обеспечить более простой интерфейс. Скажем, например, компьютерная ОС абстрагирует сложность базового оборудования. Или языки программирования высокого уровня (Python / JavaScript) абстрагируют сложность по сравнению с языком низкого уровня (C).

Адаптер

Это аналоги аппаратных адаптеров. Скажем, вы хотите подключить USB device к serial port, вам понадобится USB-serial port adapter.

0 голосов
/ 19 марта 2018

Цель

фасад это простота

адаптер является совместимость .

0 голосов
/ 04 июня 2010

Я читал оба определения, и они кажутся совершенно одинаковыми.

Действительно?

Я заметил, что термин Адаптер иногда используется для описания того, что на самом деле является Stategy , возможно, потому, что слово более выразительное.

Например, в Zend Framework все классы Adapter на самом деле являются реализациями шаблона Strategy , поскольку они только переносят собственный код за классы иметь несколько поведений.

Адаптеры часто используются для переноса устаревшего кода или кода "старого стиля".

...