Можем ли мы рассматривать шаблон проектирования как уровень в приложении j2ee - PullRequest
1 голос
/ 11 января 2010

Недавно я получил этот вопрос в моем интервью ..

Он спросил меня о N уровне, я рассказывал ему о 3-х уровнях приложений. Вдруг он спросил меня, можно ли иметь 5 уровней :) Я сказал ему, что может быть, но я никогда не использовал это ...

IV: Хорошо, теперь скажите мне, что может быть 5 уровней Я: Бла бла

После собеседования я спросил у него ответ, и он привел мне пример, подобный приведенному ниже

Веб или клиентский уровень -> делегировать (шаблон) Ejb-слой (бизнес) -> объекты значений (шаблон) -Внедрение dao-слоя - затем ur db

Он добавил еще один момент, когда ваше приложение взаимодействует с другим приложением, тогда приложение будет N-уровня

Это так, друзья?

Ответы [ 3 ]

4 голосов
/ 11 января 2010

Я думаю, он перепутал ярусы со слоями.

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

3 голосов
/ 11 января 2010

Вот пример (я не говорю, что следуйте ему, только продавцы оборудования и поставщики серверов приложений любят продавать этого монстра):

  1. Уровень клиента: браузер
  2. Уровень представления: Servlet / JSP
  3. Уровень обслуживания: сессионные компоненты
  4. Уровень домена: Entity Beans (при написании этого мои глаза кровоточат).
  5. Уровень EIS: база данных

Теперь, чтобы ответить на ваш вопрос, шаблон проектирования, конечно, не сам по себе уровень. Но уровень может быть составлен из компонентов, реализующих шаблон (например, сессионные компоненты уровня обслуживания реализуют шаблон Фасад).

1 голос
/ 11 января 2010

Вы можете иметь более 3 физических уровней, например, если у вас есть (1) доступ к презентации (2) бизнес-логика с использованием (3) веб-сервисов для упаковки (3) устаревшего приложения, которое использует (4) базу данных. Но я, как и торбенжи, думаю, что это была скорее путаница между логическим уровнем и физическими уровнями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...