- Spring Roo
-
Spring Roo Тип Платформа программирования
Разработчик Сообщество SpringSource
Написана на Операционная система Последняя версия 1.2.1 (10 февраля 2012[1])
Состояние Активна
Лицензия GNU General Public License 3.0 (core); Apache License 2.0 (annotations)
Сайт Spring Roo — фреймворк с открытым исходным кодом для быстрого создания бизнес-приложений на Java.[2] Полученные в результате приложения используют общие технологии Java, такие как Spring Framework, Java Persistence API, JSP, Apache Maven и AspectJ[3]. Spring Roo является частью проекта Spring.
Содержание
История
Главной задачей проекта Spring Roo является «принципиальное улучшение труда Java-программистов без ущерба для инженерного внедрения и гибкости»[4].
Технология была впервые продемонстрирована в ходе конференции программистов SpringOne Europe 27 апреля 2009 года одновременно с публикацией первого альфа-релиза. Во время конференции прошло обсуждение названия продукта (тогда он находился по кодовым названием «Roo», без «SpringSource»)[5]. В результате название «Spring Roo» стало более предпочтительным, вытеснив при этом «Spring Boost», «Spring Spark», «Spring HyperDrive» и «Spring Dart».[6]
Совместимость стандартов и технологий
Roo по умолчанию облегчает создание приложений, которые совместимы со следующими стандартами и основными технологиями[7]:
- Apache ActiveMQ (в качестве встроенной реализации JMS)
- Adobe Flex (через установленный плагин SpringSource)
- Apache Maven (с версии 2.2 и выше)
- Apache OpenJPA (в качестве реализации JPA)
- Apache Solr (поисковый сервер)
- Apache Tiles (стандартный вид MVC)
- Apache Tomcat (hosted execution support)
- AspectJ (используется для АОП с «примесями» для достижения разделения ответственности)
- AspectJ Development Tools (плагин для Eclipse)
- Облачные вычисления (через SpringSource Cloud Foundry, Google App Engine и VMforce)
- Dojo Toolkit (через Spring JavaScript)
- Eclipse (среда разработки) (одновременное выполнение и создание метаданных проекта)
- EclipseLink (в качестве реализации JPA)
- Google Web Toolkit (с GWT 2.1, включая особенность GWT 2.1 — такие как «завод запросов»)
- Hibernate (в качестве реализации JPA)
- Java Bean Validation (JSR 303) (включая Hibernate Validator)
- Java Database Connectivity (для использования JPA)
- Java Message Service (интерфейс сообщений производителей и потребителей)
- Java Persistence API (несколько реализаций)
- Java Transaction API (через монитор транзакций Spring)
- Java (версия 5 и выше)
- Java Server Pages (стандартный вид MVC)
- Jetty (hosted execution support)
- JSON (методы в классах для сериализации, десериализации и поддержки REST)
- JUnit (автоматическое тестирование проектов пользователя)
- Log4j (установка и настройка)
- OSGi (Roo основан на OSGi)
- Representational State Transfer (REST)
- Selenium (автоматическое тестирование проектов пользователя)
- Spring Framework (реализовано в версии 3 и выше)
- Spring Security (реализовано в версии 3 и выше)
- Spring Web Flow (установка и определение процедуры)
- SpringSource Tool Suite (STS имеет встроенную консоль Roo и помощник)
- .war (для распаковки пакетов)
Список может быть расширен за счёт дополнений.
Отличия
Spring Roo отличается от других аналогичных приложений по следующим основным причинам:[8]
- Производительность платформы Java: Roo обеспечивает для Java-разработчиков производительность их решений. Пользователь должен использовать только Java. Roo использует основные стандарты и технологии бизнес-приложений, чтобы максимизировать удобство разработки поверх уже готового кода.
- Юзабилити: Оболочка Roo разработана с целью обеспечить простую для использования среду разработки, которая сводит к минимуму требования предварительного обучения. Аннотации Roo всегда начинаются с @Roo (в командной строке в IDE). Кроме того, пользователи могут редактировать программные файлы Roo, когда IDE не работает.
- Нет лишних библиотек: Roo не использует API среды исполнения и не требует наличия различных системных библиотек. Это гарантирует, что нет связанного с Roo потребления ресурсов процессора, диска и оперативной памяти. Код оптимизирован для компактного развертывания облачных вычислений и множества вариантов использования масштабируемости.
- Не привязан к поставщику: Roo может быть быстро удален из проекта, что помогает избежать привязки к поставщику ПО.[9][10][11]
- Расширяемость: Разделение базовой инфраструктуры ядра и базовых дополнений позволяют сторонним разработчикам создавать плагины для Roo.[12][13]
Ссылки
- Официальный сайт продукта (англ.)
Примечания
- ↑ Spring Roo 1.2.1.RELEASE available
- ↑ SpringSource CEO to tout Roo, a new Java enhancement
- ↑ SD Times: Roo released to handle repetitive Spring tasks
- ↑ Spring Roo reference documentation", Mission Statement section
- ↑ SpringOne Europe 2009 Keynote: The Future of Java Innovation
- ↑ Spring Roo reference documentation
- ↑ TechCast: Spring Roo podcast
- ↑ Spring Roo Home Page
- ↑ Sun Java 5 JavaDocs for RetentionPolicy.SOURCE
- ↑ Push-In Refactoring for AJDT
- ↑ Eclipse AJDT intertypes and Push-In refactoring
- ↑ Italian Java User Group JavaDay IV Conference: Spring Roo Internals
- ↑ Spring, Roo, and Alfresco Too: What Alfresco Gave to Spring and Why
Для улучшения этой статьи по информационным технологиям желательно?: - Исправить статью согласно стилистическим правилам Википедии.
- Викифицировать статью.
- Проверить качество перевода с иностранного языка.
Категории:- Программное обеспечение по алфавиту
- Программное обеспечение
Wikimedia Foundation. 2010.