2009-07-09 3 views
0

Что вы порекомендуете для модульной разработки на Java. OSGI велик, но поддержка JPA очень жаль. Мне бы очень хотелось не писать еще одну фреймворк, но это кажется неизбежным.модульное развитие

ответ

0

Я не думаю, что проблема связана с отсутствием поддержки в OSGI для JPA, но отсутствие поддержки в реализациях JPA для загрузчика классов OSGI. В любом случае я отвлекаюсь.

Возможно, вам удастся использовать OpenJPA с OSGI. Последние версии уже упакованы в пакеты OSGI. Я оставляю также этот link, который объясняет, как получить OpenJPA, работающий в Apache Felix.

+0

спасибо mil, ссылка решила мои проблемы. – Nico

5

Лучшие aproach для модульного развития: Сначала подумайте, код позже, рефакторинг часто. В мире нет рамок/библиотеки, которые могут заменить мышление.

+0

«Сначала подумайте, код позже, рефакторинг часто». - моя новая мантра. Благодарю. – Nico

1

Подумайте о том, чего вы хотите достичь, и придерживайтесь концептуальных принципов, как можно отделить от технологии. Затем попробуйте искать технологии, которые могут вписаться в то, что вы пытаетесь достичь. Если не существует набора технологий/инструментов/фреймворков, которые соответствуют вашим потребностям, сделайте некоторое переосмысление и найдите место где-нибудь посередине для понимания концепции и реализации.

0

Ответ на ваш вопрос очень зависит от приложений, которые вы строите. Java EE, ESB и OSGi - все это подходящие, модульные стратегии развертывания для определенных проблем.

Программное обеспечение, ориентированное на обслуживание, ориентированное на предприятия, а также подключаемое клиентское приложение - это очень разные приложения с различными решениями.

В настоящее время я работаю над проектом, который использует использование развернутых служб Java EE для бэкэнд и богатого клиента Eclipse/OSGi, который использует эти службы. Дизайн и развертывание довольно модульные между бэкэнд-услугами (Java EE), клиентскими службами (чистый OSGi) и компонентами пользовательского интерфейса (плагины Eclipse).

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

Использование фреймворков, таких как Spring, долгий путь к написанию кода, который сократит зависимость от базовой технологии, но все же сможет воспользоваться ее уникальными функциями.

0

Я предполагаю, что OSGi является основным в настоящее время Java EE. И это правильный выбор для создания модульных приложений. Да, есть некоторые проблемы с зрелостью и принятием платформы, но обратите внимание на усилия сообщества и, например, (SpringSource, Eclipse), чтобы сделать его лучше. Реализации являются открытыми источниками, и многие IDE поддерживают разработку OSGi. Я бы предложил принять одну из реализаций OSGi вместо разработки собственной структуры даже с теми ограничениями, которые существуют сегодня.