Шпаргалка Java-программиста 6. Список полезных ссылок для Java программиста

Добрый день, данная статья о моем opensource pet проекте на github’e useful-java-links, в котором я собрал большое количество ссылок на полезные открытые (и некоторые закрытые) проекты. Этот проект существует на двух языках сразу русском и английском, которые являются полными дубликатами друг друга (кроме отсутствия ссылок на русскоязычные ресурсы в английской версии).

image

Данный проект — форк такого проекта как awesome-java, плюс добавлены все не мобильные проекты github’a c количеством звезд более 390 (то что описано в этой статье), все проект Apache верхнего уровня, ряд других ссылок, плюс ссылки на русскоязычное видео из этой статьи. В целом, количество полезных ссылок примерно в два раза больше чем в awesome-java. Есть строгая структура разделов, сразу дана информация об лицензиях и возможности использования данной лицензии в закрытом продукте (то есть строгость копилефта и возможность линкования с закрытыми проектами) и количество звезд набранным каждым проектом.

Буду очень благодарен за любые исправления и дополнения в данный сборник (добавить можно как в комментариях к статье, так и просто на github’e). И за помощь в распространении ссылок на данный проект как среди русскоязычных, так и среди англоязычных (так как версия на английском полностью аналогична русской). В этой статье даны все ссылки, однако обновляемая версия все-таки будет на github’e.


Общее оглавление 'Шпаргалок'


I. Фреймворки и библиотеки


1. Фреймворки и библиотеки общего назначения

К оглавлению


  1. Spring framework Spring — наверное, самый распространенный фреймворк Java в мире. Лицензия: Apache 2, рейтинг github’а — 5921, на stackoverflow — более 100 тыс.вопросов. Можно использовать в коммерческом закрытым ПО
  2. Google Guava Очень популярная библиотека от гугла, расширяющая возможности JDK, в том числе добавляющая новые коллекции, добавляющая элементы функционального программирования в Java, кэширование, функции работы с примитивами, библиотеки работы с многопоточностью, аннотациями, строками, I/O, и т.п. Работает с JDK1.6 и выше. Лицензия: Apache 2, рейтинг github’а — 3813. Лицензия совместима с закрытым ПО
  3. Apache Commons — Реализует различные функции, такие как конфигурирование, валидирование, коллекции, загрузка файлов или работу с XML, Лицензия: Apache 2Лицензия совместима с закрытым ПО
  4. Spring Boot — система быстрого создания конфигурации из типовых шаблоннов (шаблонов настройки orm, DI, Spring MVC и т.п.). Лицензия: Apache 2, рейтинг github’а — 2386. Лицензия совместима с закрытым ПО
  5. Lombok Очень горячие добавления для языка программирования Java. Генератор кода, целью которого является сокращения реализации рутинного кода. Лицензия: MIT, рейтинг github’а — 1540. Лицензия совместима с закрытым ПО
  6. Puniverse Quasar Quasar это библиотека, добавляющая Fibers (высокопроизводительные легкие threads), Go-подобные channels и Erlang-подобные actors в JVM. Лицензия: Eclipse Public v1.0/GNU Lesser 3, рейтинг github’а — 1091. Лицензия совместима с закрытым ПО
  7. Rootbeer GPU Compiler Rootbeer GPU Compiler — программирование с использованием GPU на Java. Лицензия: MIT, рейтинг github’а — 972. Можно использовать в коммерческом закрытым ПО
  8. Oblac Jodd Jodd это набор Java инструментов и микро фреймворк, компактный, но мощный. Jodd = tools + ioc + mvc + db + aop + tx + json + html < 1.5 Mb. Лицензия: BSD 2, рейтинг github'а — 912. Можно использовать в коммерческом закрытым ПО
  9. Google Jimfs Jimfs это in-memory файловая система для Java 7 и выше, реализующая API абстрактной файловой системы, описанный в java.nio.file… Лицензия: Apache 2, рейтинг github’а — 752. Лицензия совместима с закрытым ПО
  10. Spring batch Spring Batch это легковесный, всеобъемлющий фреймворк, предназначенный для разработки надежных приложений, работающих по расписанию (batch applications), жизненно важных для ежедневных операций корпоративных систем… Лицензия: Apache 2, рейтинг github’а — 448. Можно использовать в коммерческом закрытым ПО
  11. Greenrobot common greenrobot-common — маленькая библиотека добавляющая общие утилиты и классы (например, классы работы со stream-based IO, файлами, строками, датой/временем и hash map/hash set с примитивными типами) для Android и Java проектов. Лицензия: Apache 2, рейтинг github’а — 419. Можно использовать в коммерческом закрытым ПО
  12. Kilim Легковесные потоки для Java с обменом сообщениями, nio, http и поддержкой расписания. Лицензия: MIT, рейтинг github’а — 517. Лицензия совместима с закрытым ПО
  13. Apache Isis Apache Isis это фреймворк для разработки rapidly developing domain-driven приложений на in Java. Лицензия: Apache 2. Можно использовать в коммерческом закрытым ПО
  14. Apache Zest Apache Zest это фремворк для разработки Composite Oriented Programming для domain centric приложений. Это концепция включает вв себя такие концепции как: Aspect Oriented Programming, Dependency Injection и Domain Driven Design. Лицензия: Apache 2. Можно использовать в коммерческом закрытым ПО


2. Вебфреймворки (Web Frameworks)


Вебфреймворки (Web Frameworks)

Вебфреймворки служат для реализации вебприложений и обработки взаимодйствия service-side и frontend-side вебприложений.
К оглавлению


  1. Play Framework Play Framework позволяет легко разрабатывать расширяемые вебприложения на Java и Scala. https://www.playframework.com/. Лицензия: Apache 2, рейтинг github’а — 6771. Лицензия совместима с закрытым ПО
  2. Spark Фреймворк, вдохновленный фреймоворком Sinatra, для java. Лицензия: Apache 2, рейтинг github’а — 2596. Можно использовать в коммерческом закрытым ПО
  3. Atmosphere — фреймворк для разработки клиентской и серверной части асинхронных веб.приложений, поддерживающий разные серверны, браузеры и плагины. Лицензия: CDDL1 / Apache 2, рейтинг github’а — 2235. Лицензия совместима с закрытым ПО
  4. Grails — вебфреймворк. https://grails.org/ Лицензия: Apache 2, рейтинг github’а — 1386. Лицензия совместима с закрытым ПО
  5. Ninja это полноценный веб фреймворк для Java. Надежный, быстрый и очень продуктивный.http://www.ninjaframework.org/. Лицензия: Apache 2, рейтинг github’а — 894. Лицензия совместима с закрытым ПО
  6. Electronicarts Orbit — современный фреймворк для JVM языков, который упрощает создание и обслуживание распределенных и масштабируемых онлайн сервисов. Лицензия: BSD 3, рейтинг github’а — 741. Лицензия совместима с закрытым ПО
  7. Ratpack это простой, мощный набор библиотек для создания высокопроизводительных вебприложений. http://ratpack.io/ Лицензия: Apache 2, рейтинг github’а — 662. Лицензия совместима с закрытым ПО
  8. Vaadin — фреймворк для разработки веб-приложений, основанный на GWT, с server-side моделью программирования и состоянием UI на сервере.https://vaadin.com/ Лицензия: Apache 2, рейтинг github’а — 398. Лицензия совместима с закрытым ПО
  9. ZK framework Java фреймворк для создания высокопроизводительных веб и мобильных приложений… Лицензия: GNU Lesser, рейтинг github’а — 161. Лицензия совместима с закрытым ПО
  10. Apache Tapestry — Компонентно-ориентированный фреймворк для создания динамичных, надежных, легко маштабируемый веб приложений, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  11. Apache Wicket — Компонентно-ориентированный вебфреймворк, похожий на Tapestry с stateful GUI, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  12. Google Web Toolkit — Набор инструментов разработки, включающий компилятор из Java кода в JavaScript для создания кода, исполняемого в браузере, XML парсер, API для RPC, интеграция с JUnit, поддержка разных языков и локалей и виджеты для создания GUI, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  13. Pippo — Небольшой, модульный Sinatra-подобный микрофреймворк, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  14. Spring MVC — Предоставляет много различных возможностей для разработки вебприложений от dependency injection до аспектно-ориентированного программирования и поддержки security, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  15. JavaServer Faces — Открытая реализация JSF стандарта от Oracle, Лицензия: GNU 2 или CDDL 1.0Не соместимая с закрытым ПО лицензия
  16. JavaServer Pages — Популярная Java технология шаблонов для создания вебсайтов с реализацией пользовательских тегов, Лицензия: GNU 2 или CDDL 1.0Не соместимая с закрытым ПО лицензия
  17. Apache Cocoon Separation of concerns и component-based вебфремворк. Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  18. Apache Struts Apache Struts это открытый фреймворк для создания Java веб приложений. Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  19. Apache Sling Иновационный веб фреймворк основанный на JCR и OSGi. Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  20. Apache MyFaces Первая открытая реализация JavaServer Faces. Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  21. Apache Pivot Apache Pivot это открытая платформа для создания installable Internet applications (IIAs) [другое название rich Internet application]. Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  22. Apache Turbine Turbine это основанный на сервлетах фреймворк, который позволяет Java developers быстро разрабатывать вебприложения. Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  23. Apache OODT Apache OODT это компонентный вебфреймворк. Лицензия: Apache 2. Лицензия совместима с закрытым ПО


Библиотеки для Web разработки


  1. Tobie ua-parser много языковое портирование библиотеки для парсенга параметров user agent браузера. Лицензия: Apache 2/MIT/Perl, рейтинг github’а — 1497. Лицензия совместима с закрытым ПО
  2. Ghost Driver это реализация Remote WebDriver Wire протокола, использующая PhantomJS как бэкенд. Лицензия: BSD 2, рейтинг github’а — 1179. Лицензия совместима с закрытым ПО
  3. B3log Solo — система управления блогами на Java. Лицензия: Apache 2, рейтинг github’а — 519. Лицензия совместима с закрытым ПО
  4. Baasbox это проект для создания backend для мобильных и веб приложений. Лицензия: ?, рейтинг github’а — 499.
  5. Kolorobot Spring MVC 4 Quickstart Maven Archetype — проект-шаблон (архитип) для Maven’a для быстрого создания проектов вебприложений Spring MVC 4. Содержит Spring MVC 4, Servlet 3.0, Thymeleaf, Bootstrap, JPA 2.0, MongoDB, JUnit/Mockito, Spring Security 3.2. Лицензия: ?, рейтинг github’а — 480.
  6. Gargl — Generic API Recorder and Generator Lite (произносится «Gargle») — инструмент для автоматизации любого вебсайта, позволяет записывать любые запросы к сайту и превращать их в повторно используемый код на любом из языком программирования. Лицензия: MIT, рейтинг github’а — 462. Лицензия совместима с закрытым ПО
  7. Liferay plugins — набор плагинов для Liferay портала. Лицензия: GNU Lesser 2.1, рейтинг github’а — 444. Лицензия совместима с закрытым ПО
  8. Netflix Ribbon это библиотека для создания load balancers. Лицензия: Apache 2, рейтинг github’а — 410. Лицензия совместима с закрытым ПО
  9. Gwt bootstrap это библиотека объединяющая виджеты из Twitter Bootstrap и возможности Google Web Toolkit. Лицензия: Apache 2, рейтинг github’а — 409. Лицензия совместима с закрытым ПО
  10. Netflix Zuul это сервис (edge service), обрабатывающий все запросы от всех устройств и вебсайтов к backend всех Netflix потоковых приложений, он обеспечивает динамическую маршрутизацию, мониторинг, отказоустойчивость и безопасность… Лицензия: Apache 2, рейтинг github’а — 407. Лицензия совместима с закрытым ПО
  11. PrimeFaces — JSF фреймворк который имеет как свободную, так и комерческую версию с полноценной поддержкой. Предоставляет несколько frontend компонентов, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  12. Spring Boot — Микрофреймворк для упрощения разработки новых Spring приложений, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  13. CSSEmbed это небольшая программ/библиотека для автоматического добавления URIs в CSS files. Лицензия: MIT, рейтинг github’а — 407. Лицензия совместима с закрытым ПО
  14. Athou commafeed RSS reader, основанный Dropwizard и AngularJS, вдохновленный Google Reader. Лицензия: Apache 2, рейтинг github’а — 1226. Лицензия совместима с закрытым ПО
  15. Apache Any23 Anything To Triples (Any23) это библиотека, вебсервис и консольный инструмент для отображения в RDF формате различных данных полученных из веб'а. Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  16. Apache Forrest Apache Forrest это фреймворк для представления данных из разных форматов. Лицензия: Apache 2. Лицензия совместима с закрытым ПО


Template Engine

Инструменты для замены выражений в шаблонах на реальные данные.


  1. Apache Velocity — Работает с шаблонами для генерации HTML страниц, emails или даже кодогенерация в целом, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  2. Apache FreeMarker — Библиотека поддережки универсальный шаблонов без тяжелых или запутанных зависимостей на другие библиотеки, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  3. Handlebars.java — Семантически подобен шаблонам Mustache, но с меньшим количеством бизнес логии в шаблонах, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  4. Thymeleaf — Цель заменять JSP и работать с XML файлами в целом, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  5. Mustache.java — портирование Mustache.js (систему создания и использования веб.шаблонов с минимальной бизнес логикой) для Java. Лицензия: Apache 2, рейтинг github’а — 733. Лицензия совместима с закрытым ПО
  6. Handlebars.java это портирование Handlebars на Java, Handlebars система работы с шаблонами Mustache. Лицензия: Apache 2, рейтинг github’а — 451. Лицензия совместима с закрытым ПО
  7. Apache Tiles Apache Tiles это templating фреймворк, упрощающий разработку веб приложений. Лицензия: Apache 2, рейтинг github’а — 451. Лицензия совместима с закрытым ПО


CMS и content management


  1. Apache Stanbol Программные компоненты для semantic content management. Лицензия: Apache 2, рейтинг github’а — 451. Лицензия совместима с закрытым ПО
  2. Apache JSPWiki Wiki движок на стандартных J2EE компонентах (Java, servlets, JSP). Лицензия: Apache 2, рейтинг github’а — 451. Лицензия совместима с закрытым ПО
  3. Apache Portals Движок создания надежного, полностью функционального портала для разных платформ и языко программироваия. Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  4. Apache Roller Apache Roller это полностью функциональный, многопользовательский блог движок и сервер, подходящих для самых разных сайтов блогов. Лицензия: Apache 2, рейтинг github’а — 451. Лицензия совместима с закрытым ПО
  5. Apache Chemistry Apache Chemistry это открытая реализация спецификации Content Management Interoperability Services (CMIS) для обмена данными между различными CMS. Лицензия: Apache 2. Лицензия совместима с закрытым ПО


3. Создания GUI

Библиотеки для создания интерфейс пользователя (кроме веб)


  1. JavaFX — Правопреемник Swing, Лицензия: Oracle, проприетарная. Проприетарная лицензия
  2. Scene Builder — Визуальный инструмент разработки GUI для приложений JavaFX Лицензия: Oracle, проприетарная. Проприетарная лицензия
  3. SWT — The Standard Widget Toolkit (SWT) это набор бибилиотек и инструментария для создания графических виджетов в платформе Java, Лицензия: Eclipse Public License v1.0. Можно использовать в коммерческом закрытым ПО
  4. Lanterna — Легковесная библиотека, реализующая консольно-текстовый GUI, похожий на curses, Лицензия: LGPL 2.1. Можно использовать в коммерческом закрытым ПО
  5. Gephi — Кросплатформенная система для визуализации, изменения и управления большими графами, Лицензия: GNU 3 или CDDL 1.0Не соместимая с закрытым ПО лицензия


4. Создание бизнес приложений

Фреймворки и библиотеки для создания бизнес приложений на Java
К оглавлению


  1. Codecademy EventHub — позволяет анализировать бизнес события, чтобы получать KPI, conversion rate и т. п. Бизнес метрики событий. Лицензия: MIT, рейтинг github’а — 1043. Лицензия совместима с закрытым ПО
  2. Killbill — свободная платформа билинга и проведения платежей. Лицензия: Apache 2, рейтинг github’а — 902. Лицензия совместима с закрытым ПО
  3. Activiti это легковесная система управления бизнес процессами (Business Process Management (BPM) Platform). Лицензия: Apache 2, рейтинг github’а — 861. Лицензия совместима с закрытым ПО
  4. Liferay Portal это свободная вебплатформа для построения бизнес приложений. Лицензия: GNU Lesser 2.1, рейтинг github’а — 739. Лицензия совместима с закрытым ПО
  5. Broadleaf Commerce — eCommerce фреймворк для крупных предприятий, основанный на Spring. Лицензия: Apache 2, рейтинг github’а — 518. Лицензия совместима с закрытым ПО
  6. Droolsjbpm Drools это приложение Business Rules Management System (BRMS), которое реализует Business Rules Engine (BRE), механизма авторизации, управления правилами (rules), управление приложением (Drools Workbench) и плагин для разработки под Eclipse IDE… Лицензия: Apache 2, рейтинг github’а — 421. Лицензия совместима с закрытым ПО
  7. Spring Roo — фреймворк с открытым исходным кодом для быстрого создания бизнес-приложений на Java. Полученные в результате приложения используют общие технологии Java, такие как Spring Framework, Java Persistence API, JSP, Apache Maven и AspectJ. Spring Roo является частью проекта Spring… Лицензия: Apache 2, рейтинг github’а — 399. Лицензия совместима с закрытым ПО
  8. Apache OFBiz Apache OFBiz (The Apache Open For Business Project) это открытый и свободный фреймворк для автоматизации бизнес процессов больших предприятий, включает в себя компоненты ERP (Enterprise Resource Planning), CRM (Customer Relationship Management), E-Business / E-Commerce, SCM (Supply Chain Management), MRP (Manufacturing Resource Planning), MMS/EAM (Maintenance Management System/Enterprise Asset Management), POS (Point Of Sale). License: Apache 2. business friendly license
  9. Apache Portals Движок создания надежного, полностью функционального портала для разных платформ и языко программироваия. Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  10. Apache ODE Apache ODE это реализация WS-BPEL спецификации, которая позволяет описывать бизнес процессы и веб сервисы для создания enterprise приложений. Лицензия: Apache 2. Лицензия совместима с закрытым ПО


5. Игровые фреймворки (Game Development)

К оглавлению


  1. libgdx Кросплатформенный фреймворк для разработки игр на основе OpenGL (ES), работает под Windows, Linux, Mac OS X, Android, iOS и в браузерах с WebGL. . Лицензия: Apache 2, рейтинг github’а — 6579. Лицензия совместима с закрытым ПО
  2. Disunity Экспериментальный набор инструментов для Unity asset и asset bundle files. Лицензия: unlicense.org, рейтинг github’а — 828.
    Лицензия совместима с закрытым ПО
  3. LibGDX/LWJGL lwjgl-basics это минималистская shader-based библиотека для создания 2D LWJGL sprite игр.https://libgdx.badlogicgames.com/. Лицензия: ?, рейтинг github’а — 656.
  4. jMonkeyEngine jMonkeyEngine это 3D игровой движок для Java разработчиков. http://jmonkeyengine.org/ Лицензия: BSD 3, рейтинг github’а — 624. Лицензия совместима с закрытым ПО
  5. Jetserver Jetserver высокоскоростной nio сокет Java сервер для multiplayer игр созданный используя Netty и Mike Rettig Jetlang. Лицензия: MIT, рейтинг github’а — 484. Лицензия совместима с закрытым ПО
  6. LWJGL 2.X LWJGL 2.X — Легковесная игровая библиотека на Java. http://www.lwjgl.org/ Лицензия: BSD 3, рейтинг github’а — 394. Лицензия совместима с закрытым ПО
  7. Ardor3D — 3D игровой движок построенный на jMonkeyEngine 2.0.
    Лицензия: zlib. Лицензия совместима с закрытым ПО
  8. DimensioneX Multiplayer Engine — Игровой движок псевдо-3D броузерных игр. Известные игры: Underworld Online. Лицензия: GPL Не соместимая с закрытым ПО лицензия
  9. PlayN Игровой фреймворк для Java работающий на Windows, Linux, HTML5, Android и iOS. Известные игры: Angry Birds Chrome. Лицензия: Apache 2.0. github star — 97. Лицензия совместима с закрытым ПО
  10. Env3D — 3D игровой движок построенный на jMonkeyEngine 2.0. Лицензия: GPL Не соместимая с закрытым ПО лицензия
  11. Jake2 Java порт игрового движка Quake II. Лицензия: GPL Не соместимая с закрытым ПО лицензия
  12. Jogre — JOGRE (Java Online Gaming Real-time Engine) открытый, онлайн, движок реального времени с API работающим только на Java. Лицензия: GPL Не соместимая с закрытым ПО лицензия
  13. Elflight Engine — платный движок для веб игр. Лицензия: Proprietary proprietary license


6. Полезные библиотеки

К оглавлению


Коллекции, структуры данных и методы работы с ними


  1. Google Guava Очень популярная библиотека от гугла, расширяющая возможности JDK, в том числе добавляющая новые коллекции и методы работы с ними. Работает с JDK1.6 и выше. Лицензия: Apache 2, рейтинг github’а — 3813. Лицензия совместима с закрытым ПО
  2. Apache Commons Collections — Реализует различные дополнительный коллекции и метода работы с ними. Лицензия: Apache 2Лицензия совместима с закрытым ПО
  3. Gs collections Дополнение или замена стандартных Java коллекций и методов работающих с коллекциями. Переименована в Eclipse Collections. Лицензия: Apache 2, рейтинг github’а — 1201. Лицензия совместима с закрытым ПО
  4. Eclipse Collections (в прошлом Gs collections). Дополнение или замена стандартных Java коллекций и методов работающих с коллекциями. Лицензия: Eclipse Public 1.0., рейтинг github’а — 1201. Лицензия совместима с закрытым ПО
  5. javatuples — Кортежи (Tuples), Лицензия: Apache 2Лицензия совместима с закрытым ПО
  6. Immutables — Добавлет Scala-подобные классы, Лицензия: Apache 2Лицензия совместима с закрытым ПО
  7. OpenHFT Chronicle Queue Chronicle Queue работает так же как обычная Java очередь, однако каждое события сохраняется на жесткий диск. Лицензия: GNU Lesser 3.0, рейтинг github’а — 440. Лицензия совместима с закрытым ПО
  8. fastutil — Быстрые и компактные типобезопасные коллекции, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  9. HPPC — Фреймворк по работе с примитивными коллекциями, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  10. Koloboke — Фреймворк по работе с быстрыми Hash sets и hash maps, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  11. Trove — Библиотека работы с примитивными коллекциями, Лицензия: GNU Lesser 2.1. Лицензия совместима с закрытым ПО


Date and Time


Dependency Injection и AОП фреймворки

Бибилиотеки и фреймворки, которые реализуют парадигму Inversion of Control.


  1. [Spring Framework](https://github.com/spring-projects/spring-framew ork) Spring — наверное, самый распространенный фреймворк Java в мире, которые в том числе реализует Dependency Injection. Лицензия: Apache 2, рейтинг github’а — 5921. Лицензия совместима с закрытым ПО
  2. Dagger и Dagger2 Быстрый и легковесный фреймворк для реализации dependency injector для Android и Java, работающий во время компиляции, а не во времени выполнения, и не использующий рефлексию. Реализует Java спецификацию JSR-330, описывающую dependency injector. Лицензия: Apache 2, рейтинг github’а — 3607, на stackoverflow — 800 вопросов. Можно использовать в коммерческом закрытым ПО
  3. Google Guice — Guice (произносится 'juice') это легковесный dependency injection фреймворк для Java 6 и выше, созданный Google. Легкий, но мощный фреймворк, из которого получился Dagger. Лицензия: Apache 2, рейтинг github’а — 1881. Лицензия совместима с закрытым ПО
  4. Apache DeltaSpike — фреймворк, расширяющий CDI, Лицензия: Apache 2 Лицензия совместима с закрытым ПО
  5. HK2 — Легкий и динамичный dependency injection фреймворк, GNU 2/ CDDL 1.0Не соместимая с закрытым ПО лицензия
  6. AspectJ — Аспект-ориентированное расширение, легко встраиваемое в существующие приложения, Лицензия: Eclipse Public 1.0Лицензия совместима с закрытым ПО


Работа с консолью и командной строкой


  1. jcommander Библиотека для парсинга параметров командных строк. http://jcommander.org/ Лицензия: Apache 2, рейтинг github’а — 445. Лицензия совместима с закрытым ПО
  2. Jline это java библиотека для работы с консолью (ввод, редактирование в emacs и vi режимах), так же как библиотеки Readline и Editline, однако при этом так как Jline почти полностью написана на Java является полностью платформонезависимой… Лицензия: BSD 4, рейтинг github’а — 396. Лицензия совместима с закрытым ПО
  3. args4j — Парсер командной строки, Лицензия: MITЛицензия совместима с закрытым ПО
  4. CRaSH — Реализует интерпретатор командной строки (CLI) для запущенныз процессов, Лицензия: GNU Lesser 2.1Лицензия совместима с закрытым ПО


Функциональное программирование


  • Библиотеки, реализующие функциональное программирование.*


  1. Cyclops — Добавляет монады, потоковые утилиты и такие возможности функционального программирования как: comprehensions, pattern matching, trampolines и многое другое, Лицензия: MITЛицензия совместима с закрытым ПО
  2. derive4j — Процессор, работающий с Java 8 аннотациями, и фреймворк для реализации: deriving algebraic data types constructors, pattern-matching, morphisms и т.п, Лицензия: GNU 3Не соместимая с закрытым ПО лицензия
  3. Fugue — Функциональное расширение библиотеки Guava, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  4. Functional Java — Добавление функционального программирования в Java. Реализует большое количество простых и сложных видов абстракций для composition-oriented программирования, Лицензия: BSD 3, рейтинг github’а — 478. Лицензия совместима с закрытым ПО
  5. Javaslang — Библиотека для реализации функцуонального программирования которая реализаует persistent типы данных и functional control структоры, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  6. jOOλ — Расширение для Java 8, которое стремиться исправить недоработки стандартной реализации лямбда в Java 8, реализующе большое количество нереализованных возможностей функционального программирования и предоставляет богатый набор возможностей к стандартному Stream API, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  7. Retrolambda Поддержка лямба выражений из Java 8 в Java 7, 6 и 5. Лицензия: Apache 2, рейтинг github’а — 1059. Лицензия совместима с закрытым ПО
  8. TotallyLazy Библиотека функционального программирования для работы с ленивыми структурами данных (например, такими как Clojure’s), в частности с последовательностями (map, filter, fold/reduce…), есть Option, Either, Hamcrest matchers as predicates, ML family of function / method names (Standard ML, oCaml, F#, Scala, Haskell) и т.д., Лицензия: Apache 2, рейтинг github’а — 76. Лицензия совместима с закрытым ПО


Реактивное программирование

Библиотеки для разработки reactive приложений.


  1. ReactiveX RxJava библиотека для реализации асинхронного и событийного программирования на основе расширения паттерна Observer для разных языков от ReactiveX. Лицензия: Apache 2, рейтинг github’а — 6279, на stackoverflow — 1814 вопросов. Можно использовать в коммерческом закрытым ПО
  2. Eclipse Vert.x Событийно-ориентированный полиглотный фреймворк для JVM от Eclipse, позволяет писать одновременно на JavaScript, Ruby, Groovy, Java и Python, встраивается в текущие проекты на Java, упрощает мультипоточность. содержит event bus и т.д. и т.п. . Лицензия:  Eclipse Public 1 / Apache 2, рейтинг github’а — 3743, на stackoverflow — 728 вопросов. Можно использовать в коммерческом закрытым ПО
  3. Reactive Streams — Реализует стандарт для асинхронной потоковой обработки без проблем с блокировками. Лицензия: Public Domain (CC0), рейтинг github’а — 769. Лицензия совместима с закрытым ПО
  4. Reactor — Библиотеки для разработки reactive fast-data приложений. Reactor это полнофункциональная библиотека для разработки быстрых data-driven приложений на JVM. Она предоставляет абстракции для Java, Groovy, Clojure и других JVM языков для создания и обработки событий (event) и простой разработки data-driven приложений. Лицензия: Apache 2. Лицензия совместима с закрытым ПО


Безопасность и авторизация

К оглавлению


  1. Scribe Java — простая OAuth библиотека для Java. Лицензия: MIT, рейтинг github’а — 2731. Лицензия совместима с закрытым ПО
  2. Spring security oauth — добавлении методов авторизации OAuth1(a) и OAuth2 для Spring вебприложений… Лицензия: Apache 2, рейтинг github’а — 916. Лицензия совместима с закрытым ПО
  3. Jasig CAS (Central Authentication Service) — обеспечивает стандартный механизм аутентификация пользователей для веб приложений. Лицензия: Apache 2, рейтинг github’а — 740. Лицензия совместима с закрытым ПО
  4. Spring security — Spring фреймворк для авторизации и управлению пользователями и безопасностью приложений. Лицензия: Apache 2, рейтинг github’а — 732. Лицензия совместима с закрытым ПО
  5. Play Authenticate — аутентификацонный плагин для Play фреймворка. Лицензия: Apache 2, рейтинг github’а — 646. Лицензия совместима с закрытым ПО
  6. Apache Shiro — Обеспечивает аутентификацию, авторизацию, шифрование и управление сеансами, Лицензия: Apache 2. Лицензия совместима с закрытым ПО
  7. Bouncy Castle — Универсальная криптографическая библиотека, содержит JCA п

    © Habrahabr.ru