appfuse vs roo - что бы вы использовали - PullRequest
9 голосов
/ 08 октября 2009

Appfuse vs. Roo, что бы вы использовали и почему?

Какие сладкие пятна у каждого.

Ответы [ 12 ]

18 голосов
/ 08 января 2010

Согласно ответу, который я дал TheServerSide thread по этому вопросу ...:

AppFuse стремится предоставить единый начальный каркас вашего нового проекта. Это похоже на архетипы Maven или функции «нового проекта» Eclipse в том, что вы запускаете их один раз в начале нового проекта, а затем поддерживаете код scaffolded в дальнейшем. Система скаффолдов больше не участвует в вашем проекте, как только вы запустите его один раз.

Roo, с другой стороны, предоставляет генератор активного кода с поддержкой двусторонней связи для вашего долгосрочного использования в данном проекте. Таким образом, Roo предлагает ценность как при первоначальном создании, так и при каждом изменении проекта в будущем.

В практическом плане это означает, что по мере развития вашего проекта Roo будет автоматически поддерживать определенные файлы. В качестве простого примера: когда вы добавляете (или удаляете) поле, Roo автоматически обновляет для вас строку toString, методы получения / установки, страницы JSP и т. Д. Он также предлагает команды, чтобы вы могли добавить новые возможности позже. Поэтому, если вам нужно добавить защиту через шесть месяцев после создания проекта, вы просто " security setup ". Или, если вам нужно отправить электронное письмо, вы просто "http://static.springsource.org/spring-roo/reference/html/command-index.html#command-index-email-sender-setup". Есть аналогичные команды для многих других областей возможностей, таких как Spring Web Flow, JUnit, Selenium, распространенные JPA-провайдеры и т. Д. Вы просто откладываете принятие решения на длительный срок. как вам угодно, и Roo добавит эти возможности только в тот момент, когда вы их попросите (и также автоматически использует эти новые возможности в вашем проекте).

Есть и много других отличий. Roo позволяет расширение через разработанные пользователем дополнения , он предлагает очень полезную оболочку , позволяет постепенно создавать новый проект и добавлять функции только при необходимости, он широко поддерживает последние версии основных технологий Spring, он поставляется с разработанной (и, следовательно, одобренной) SpringSource архитектурой приложения и т. д.

Прочтите главу Справочного руководства Roo или просто завершите проект десятиминутный тест , чтобы показать, что они очень разные по подходу.

6 голосов
/ 20 ноября 2009

Мои заметки о AppFuse и Roo:

AppFuse

Полностью работающий шаблон приложения / проекта.

  • Традиционная архитектура контроллера DAO <-> Service <->

  • Легко начать с архетипами maven

  • Отличная документация и учебные пособия

  • Не совсем в курсе. Скоро выйдет финал Spring 3, а AppFuse основан на 2.5 (?)

Spring Roo

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

  • Начало работы с новым, полностью настроенным проектом занимает 1 минуту

  • Создает расширенные доменные объекты, в которые CRUD вплетены в доменные объекты с использованием AOP вместо традиционных DAO / служб

  • Трудно понять, если вы новичок в Spring

  • Документация не очень хорошая пока

  • Действительно круто! То есть добавьте Spring Security в свой проект с помощью всего одной строки кода!

5 голосов
/ 10 апреля 2014

Telosys (легкий генератор кода) также является хорошей альтернативой. Увидеть http://www.telosys.org/

Он производит очень чистый код (без соблюдения, как ApectJ) и шаблоны настраиваемые

Существует стек шаблонов, предназначенных для создания веб-приложений Spring MVC (и многих других для генерации кода для других видов сред).

1 голос
/ 13 марта 2013

Spring Roo

Pros. 1.

  1. Настраиваемый : вы добавляете и удаляете различные структуры и надстройки в соответствии с вашими требованиями.

  2. Обратное проектирование базы данных: Создание приложений CRUD, если у вас есть готовая схема базы данных.

  3. Поддержка сообщества Strong Spring.

  4. Поддержка NOSQL MongoDB

  5. Может создавать необходимые дополнения.

    Минусы:

  6. Требуются глубокие знания аспектно-ориентированного и пружинного стека.

  7. Требуется немного больше времени для изучения весеннего рута по сравнению с appfuse.

AppFuse:

Плюсы:

  1. Хорошо для запуска приложения для малого и среднего бизнеса с
    распорки, JSF и пружина
  2. Полный открытый исходный код.
  3. Достаточно документации.
  4. Твиттер-бутстрап готов.

Минусы: Настройте приложение, но не как Spring Roo.

1 голос
/ 07 декабря 2010

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

0 голосов
/ 04 апреля 2018

Проект AppFuse был закрыт в апреле 2016 года. Его основатель, Мэтт Рейбл, рекомендует использовать JHipster в качестве альтернативы.

0 голосов
/ 11 сентября 2015

Вопросу уже несколько лет, и в то же время существуют новые инструменты повышения производительности, на которые я хочу обратить внимание:

Generjee . Generjee - это полноценный онлайн-инструмент. Вы определяете онлайн свои требования и (необязательно) модель данных. Затем вы получите сгенерированный код для загрузки.

Сгенерированный код не зависит от generjee. Этот инструмент полезен для запуска проектов разработки из интегрированной полной базы кода.

generjee сгенерирует для вас:

  • код JPA в соответствии с вашей моделью данных
  • JSF-код для создания, чтения, редактирования, фильтрации, сортировки и экспорта данных
  • управление пользователями, регистрация и вход в систему
  • ваши определенные роли пользователей и определенные права доступа для этих ролей
  • Поддержка I18N
  • поддержка загрузки файлов

Forge . Чтобы описать это в нескольких словах, это «как Roo». Но Forge не такой сильный, основанный на Spring и AspectJ, как Roo.

0 голосов
/ 08 января 2013

AppFuse -> изменить на SpringFuse Я больше предпочитаю использовать SpringFuse

0 голосов
/ 23 августа 2010

AppFuse имеет интеграцию с Tapestry, Wicket и другими веб-фреймворками, чего нет у Roo - пока

0 голосов
/ 12 января 2010

Я еду с РОО.

Я уже использую

  • Весна
  • Spring ORM / JDBC
  • Пружина MVC
  • Пружина Remoting
  • STS (Набор инструментов)

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

Итак, мой совет: используйте инструмент / структуру, более естественные для вас ..

Приветствия

...