Разработка приложений Java EE - PullRequest
       11

Разработка приложений Java EE

3 голосов
/ 14 сентября 2011

У меня есть конкретный вопрос об архитектуре Java EE. У меня есть приложение, которое требует нескольких компонентов:

  • Уровень веб-сервиса и персистентности (cxf / hibernate)
  • Консоль управления / конфигурации (Struts2 / JSP?)
  • Одно или несколько пользовательских "приложений" (может, Vaadin?)

Обратите внимание, что веб-сервис будет предоставлять услуги для пользовательских приложений.

Веб-сервис был создан как приложение cxf / glassfish (Eclipse dynamic we app) и работает хорошо.

Должны ли управляющие и пользовательские приложения разрабатываться как полностью отдельные приложения (EJB или?) Или являться частью "одного" приложения с веб-службой. Я не уверен, объясняю ли я это достаточно хорошо - но я новичок в такого рода дизайне и пытаюсь подойти к решению хорошо структурированным способом. Например, я мог представить, что использование подхода отдельных служб (приложений) может привести к:

  • Основной веб-сервис (выполняет обычные функции сохранения данных)
  • Служба аутентификации
  • Служба управления приложениями
  • Служба приложений первого пользователя
  • Служба приложений второго пользователя

Каждое из пользовательских приложений может иметь как общие, так и уникальные требования к сохранению данных.

1 Ответ

1 голос
/ 14 февраля 2013

Чтобы решить, как разделить вашу реализацию, вы должны рассмотреть вашу систему с разных точек зрения. В архитектуре программного обеспечения есть очень полезный метод, который называется моделью архитектурного представления 4 + 1 (http://en.wikipedia.org/wiki/4%2B1_architectural_view_model).. Используя физическое представление, вы сможете решить, нужно ли устанавливать различные компоненты на разных компьютерах, и это поможет вам определить ваше представление разработки, которое даст вам ответ на ваш вопрос -> как разделить различные компоненты вашей системы с точки зрения разработки. Как только у вас появится представление разработки, вы можете определить, как компоненты взаимодействуют (представление процесса) ... и т. д.

Это мнение всегда помогало мне, я надеюсь, что вы найдете его полезным.

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