#java #spring-rcp
#java #spring-rcp
Вопрос:
Мне нужно разработать настольное приложение Java, и я привык работать в веб-архитектурах Java, используя jsf spring jpa и hibernate.
Итак, мой вопрос в том, какая технология лучше всего подходит для создания настольного приложения. Я думал об использовании JIDE с spring Rich client и построил архитектуру древовидного уровня.
Можете ли вы, люди, сказать мне, что вы думаете об этом? любая другая хорошая технология, учебные пособия, способ начать и т.д. Спасибо … =)
Ответ №1:
Прямо сейчас я бы заглянул в JavaFX. Это выглядит очень многообещающе. У меня нет личного опыта работы с этим, но я бы включил его в свой список «для проверки», если бы был на вашем месте. Это довольно новое, так что остерегайтесь
Комментарии:
1. JavaFX, безусловно, является вариантом
Ответ №2:
Технологии, которые вы можете искать, это
Eclipse RCP (я думаю, это также можно легко преобразовать в ajax-приложение Eclipse RAP для просмотра, если это необходимо)
Adobe AIR (если вы хотите иметь классный пользовательский интерфейс)
JavaFX
Ответ №3:
В наши дни я бы вообще держался подальше от толстых клиентов. С развитием HTML5 я бы перешел к более AJAX-решению. Проверьте GWT и Echo3. GWT ТЯЖЕЛЫЙ, но предоставляет полный набор инструментов, особенно удобный с набором инструментов GXT. Echo3 очень легкий, но ему не хватает некоторых функций промышленного уровня, которые вы, вероятно, хотели бы иметь. Echo3 также предоставляет поддержку для запуска своих приложений на рабочем столе.
Комментарии:
1. он сказал, что я должен разработать настольное приложение Java, похоже, это не его выбор. Если подключение к Интернету допустимо, другой возможностью является использование Adobe AIR и веб-служб на сервере.
2. Мой ответ включал в себя тот факт, что платформа echo 3 предлагает возможность запуска в среде рабочего стола.
3. о, я пропустил это, я тоже этого не знаю, спасибо, я собираюсь взглянуть на это.
4. Я бы сказал, что EXT4 / GXT кажется лучшим вариантом, чем echo3, для богатых клиентов.
Ответ №4:
Spring Rich Client: Дата выпуска последней версии: как 2009-06-23: Release 1.1.0
. Предпочтительнее использовать библиотеки, которые регулярно поддерживаются.
Это ужасная идея разрабатывать пользовательский компонент или элемент управления пользовательского интерфейса с помощью инструментов перетаскивания. В долгосрочной перспективе это будет просто пустой тратой времени. С каждым днем поддерживать эти компоненты будет все сложнее. Но, очевидно, это спорно.
Вы действительно думаете JIDE
, что это будет хорошим компромиссом по сравнению со стоимостью, которую JIDE
может обеспечить сложность трудно поддерживаемого кода?
Для нашего настольного приложения Java мы используем JGoodies FormLayout и BSAF (улучшенная платформа приложений Swing) API. До сих пор приложение работает нормально.
Обновить
Не забудьте использовать инжектор зависимостей, такой как Spring / Guice. В противном случае, я полагаю, вы будете жить в аду.
Хорошей отправной точкой для BSAF может быть: Использование платформы приложений Swing и для JGoodies: PDF-документ
Комментарии:
1. однако Spring может привести к длительному запуску сложных приложений, хотя это приемлемо для Интернета, поскольку это только при запуске сервера приложений, это может быть менее приемлемо для настольных приложений.
2. Привет, спасибо, я посмотрю на JGoodies и BSAF при любых изменениях у вас есть какая-нибудь документация о том, как собрать архитектуру воедино?. И да, я планирую использовать Spring JPA и гибернацию
3. Я полагаю, вы понадобитесь для изучения BSAF. JGoodies api прост и будет необходим для комплексного решения. Добавлено несколько ссылок.
Ответ №5:
Другой вариант — расширенная клиентская платформа Eclipse. Представьте, что нужно удалить из Eclipse IDE все, что связано с разработкой на Java: вы получаете скелетное приложение, которое можно настроить по своему усмотрению, используя те же библиотеки, созданные командой Eclipse. Ваше приложение будет иметь архитектуру плагина, перспективы, представления, возможности обновления и так далее.
Ответ №6:
Еще один хороший вариант для создания настольных приложений — Vaadin.
Оно предоставляет модель программирования в стиле Swing поверх GWT, очень хороший набор компонентов, множество дополнений и хорошую профессиональную поддержку. В последнее время они усиленно продвигали продукт на всех конференциях Java. Безусловно, стоит попробовать!
Ответ №7:
Я бы посоветовал вам взглянуть на проект Eclipse RCP.
Но вместо того, чтобы идти по маршруту «Классического RCP», вам было бы гораздо лучше взглянуть на Eclipse 4 и проект инкубатора e4, который он закончил.
Eclipse 4 RCP должен показаться вам довольно знакомым по духу, если не по API, если вы исходите из опыта Spring.
Оно имеет сервис-ориентированную архитектуру, построенную поверх превосходного контейнера Equinox OSGi, который очень похож на Spring, если вы используете декларативные сервисы.
Оно также имеет очень чистое определение макета приложения на основе модели, которое открывает гибкость и компоновку, которые могут легко превзойти любой веб-фреймворк, с которым я когда-либо работал (что, по общему признанию, мало о чем говорит).
При написании компонентов пользовательского интерфейса вы можете легко положиться на простой и функциональный DI, позволяющий поддерживать связь с фреймворком на минимальном уровне, насколько это абсолютно необходимо.