Итак, в основном вы говорите, что у вас есть 75 человеко-часов (две недели), чтобы преобразовать то, что звучит как довольно сложное настольное приложение, в веб-приложение на основе архитектуры, которую вы не понимаете, с использованием технологий, в которых вы не увереныхорошо работать вместе?Я собираюсь дать вам два ответа по цене одного ..
Консультации 101
Если у вас нет солидного понимания вовлеченной архитектуры,будьте очень осторожны с тем, что вы обещаете, и включите время для исследования («изящно провалиться»).Имейте в виду, что вы участвуете в гонках с двумя календарями: человеко-часами, необходимыми для завершения работы, и сроком выполнения работ (не говоря уже о множестве «мягких» дат: начало тестирования, дата «сбрасывания», дата завершения проекта), так далее.).Часто управление принимает решения такого рода («нам нужна веб-версия этого замечательного приложения / инструмента!») Без полного понимания того, что входит в преобразование системы.
Заметки вашего собеседника
Приятно слышать, что у вас есть ресурсы, к которым вы можете обратиться, когда вам понадобится помощь в принятии этих решений.Это будет ключевым моментом при попытке решить эту проблему.Что касается его предложений:
- Трудно сказать здесь.Многое сводится к тому, что вы знакомы.Я сам неравнодушен к Spring-фреймворкам, так как они, как правило, довольно малы и имеют большой фокус на интеграцию.
- Это сводится к тому, сколько уровней абстракции вы хотите иметь.
- Я не пробовал эту конкретную комбинацию, но быстрый поиск показал этот пример проекта
- Я не уверен, что понимаю, что ваш друг обсуждает здесь.Мы говорим о двух совершенно разных проблемах: постоянство и интерфейс.Вы можете разработать совершенно новый уровень сохраняемости, основанный на Hibernate, и использовать этот уровень в своем пользовательском интерфейсе, но, исходя из временных рамок, может оказаться проще разработать решение, более тесно связанное с вашим механизмом постоянства, и работать над его рефакторингом, когда выиметь возможность (или, по крайней мере, оставить очень хороших заметок для следующего / разработчика поддержки).
- Да, у Spring есть точки интеграции для Hibernate.Однако это не обязательно означает, что это лучше.Имейте в виду, что имеется инфраструктура пользовательского интерфейса ( Spring Web со встроенной поддержкой JSF , интеграция с различными средами персистентности и довольно солидный набор библиотеккоторые служат связующим звеном для скрепления всего этого.
Завершение работы
Возвращаясь к основному вопросу: Какую архитектуру выбрать?превратить это настольное приложение в веб-приложение за две недели? Я не хочу давать вам общий ответ консультанта, но: Это зависит . Какие технологии вам больше всего знакомы? С какими технологиями вы работаете?готовы пойти на риск (и полный стек Java EE против ORM - это важное решение)? Какова ваша цель (вы хотите узнать что-то новое или предоставить своевременную, проверенную и удовлетворительную реализацию)?Это, вероятно, не лучший ответ на вопрос, однако, определение реальных целей является одним из ключевых навыков надежного технического решения.д.Мое мнение?JFaces + Spring звучит как приличное решение.Как и некоторые переоценки ценностей.