diff --git a/hello world b/hello world new file mode 100644 index 00000000..ca5cb81e --- /dev/null +++ b/hello world @@ -0,0 +1,9 @@ +class Test +{ + // Your program begins with a call to main(). + // Prints "Hello World" to the terminal window in Java. + public static void main(String args[]) + { + System.out.println("Hello World!"); + } +} diff --git a/helloooo world b/helloooo world new file mode 100644 index 00000000..1912d379 --- /dev/null +++ b/helloooo world @@ -0,0 +1,11 @@ +/* This is a simple Java program. +FileName : "HelloWorld.java". */ +class HelloWorld +{ + // Your program begins with a call to main(). + // Prints "Hello, World" to the terminal window. + public static void main(String args[]) + { + System.out.println("Hello, World"); + } +} diff --git a/helloworlds/1.1-common-frameworks-and-lib/apache-commons-lib/pom.xml b/helloworlds/1.1-common-frameworks-and-lib/apache-commons-lib/pom.xml index a85170bf..7442636f 100644 --- a/helloworlds/1.1-common-frameworks-and-lib/apache-commons-lib/pom.xml +++ b/helloworlds/1.1-common-frameworks-and-lib/apache-commons-lib/pom.xml @@ -27,17 +27,17 @@ com.google.guava guava - 18.0 + 32.0.0-jre org.apache.commons commons-collections4 - 4.0 + 4.1 commons-io commons-io - 2.4 + 2.7 com.goldmansachs @@ -64,4 +64,4 @@ 6.2.0 - \ No newline at end of file + diff --git a/helloworlds/1.1-common-frameworks-and-lib/guava-lib/pom.xml b/helloworlds/1.1-common-frameworks-and-lib/guava-lib/pom.xml index 8b33dbdc..d5fb8228 100644 --- a/helloworlds/1.1-common-frameworks-and-lib/guava-lib/pom.xml +++ b/helloworlds/1.1-common-frameworks-and-lib/guava-lib/pom.xml @@ -27,17 +27,17 @@ com.google.guava guava - 18.0 + 29.0-jre org.apache.commons commons-collections4 - 4.0 + 4.1 commons-io commons-io - 2.4 + 2.7 com.goldmansachs @@ -64,4 +64,4 @@ 6.2.0 - \ No newline at end of file + diff --git a/helloworlds/1.1-common-frameworks-and-lib/quasar/pom.xml b/helloworlds/1.1-common-frameworks-and-lib/quasar/pom.xml index c0f456dc..82327663 100644 --- a/helloworlds/1.1-common-frameworks-and-lib/quasar/pom.xml +++ b/helloworlds/1.1-common-frameworks-and-lib/quasar/pom.xml @@ -27,7 +27,7 @@ junit junit - 4.12 + 4.13.1 test diff --git a/helloworlds/1.1-common-frameworks-and-lib/spring/pom.xml b/helloworlds/1.1-common-frameworks-and-lib/spring/pom.xml index a5df8164..a1a7d434 100644 --- a/helloworlds/1.1-common-frameworks-and-lib/spring/pom.xml +++ b/helloworlds/1.1-common-frameworks-and-lib/spring/pom.xml @@ -27,13 +27,13 @@ org.springframework spring-context - 4.2.2.RELEASE + 5.3.19 org.springframework.security spring-security-web - 4.0.3.RELEASE + 5.7.13 diff --git a/helloworlds/1.6-usefull-libraries/collections/apache-commons/pom.xml b/helloworlds/1.6-usefull-libraries/collections/apache-commons/pom.xml index 38c2ffcb..871f4f70 100644 --- a/helloworlds/1.6-usefull-libraries/collections/apache-commons/pom.xml +++ b/helloworlds/1.6-usefull-libraries/collections/apache-commons/pom.xml @@ -27,17 +27,17 @@ com.google.guava guava - 18.0 + 29.0-jre org.apache.commons commons-collections4 - 4.0 + 4.1 commons-io commons-io - 2.4 + 2.7 com.goldmansachs @@ -64,4 +64,4 @@ 6.2.0 - \ No newline at end of file + diff --git a/helloworlds/1.6-usefull-libraries/collections/gs-eclipse/pom.xml b/helloworlds/1.6-usefull-libraries/collections/gs-eclipse/pom.xml index c4064b0a..196871b7 100644 --- a/helloworlds/1.6-usefull-libraries/collections/gs-eclipse/pom.xml +++ b/helloworlds/1.6-usefull-libraries/collections/gs-eclipse/pom.xml @@ -27,17 +27,17 @@ com.google.guava guava - 18.0 + 29.0-jre org.apache.commons commons-collections4 - 4.0 + 4.1 commons-io commons-io - 2.4 + 2.7 com.goldmansachs @@ -64,4 +64,4 @@ 6.2.0 - \ No newline at end of file + diff --git a/helloworlds/1.6-usefull-libraries/collections/guava/pom.xml b/helloworlds/1.6-usefull-libraries/collections/guava/pom.xml index 2a26110c..e68b4903 100644 --- a/helloworlds/1.6-usefull-libraries/collections/guava/pom.xml +++ b/helloworlds/1.6-usefull-libraries/collections/guava/pom.xml @@ -27,17 +27,17 @@ com.google.guava guava - 18.0 + 29.0-jre org.apache.commons commons-collections4 - 4.0 + 4.1 commons-io commons-io - 2.4 + 2.7 com.goldmansachs @@ -64,4 +64,4 @@ 6.2.0 - \ No newline at end of file + diff --git a/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-dagger/pom.xml b/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-dagger/pom.xml index a53a87fb..84d69cc4 100644 --- a/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-dagger/pom.xml +++ b/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-dagger/pom.xml @@ -49,13 +49,13 @@ org.springframework.security spring-security-web - 4.0.3.RELEASE + 5.2.10.RELEASE com.google.guava guava - 18.0 + 29.0-jre @@ -86,4 +86,4 @@ - \ No newline at end of file + diff --git a/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-guice/pom.xml b/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-guice/pom.xml index 69bd71a7..94159c31 100644 --- a/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-guice/pom.xml +++ b/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-guice/pom.xml @@ -33,8 +33,8 @@ com.google.guava guava - 18.0 + 29.0-jre - \ No newline at end of file + diff --git a/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-spring/pom.xml b/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-spring/pom.xml index ed1d7015..c0a976c0 100644 --- a/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-spring/pom.xml +++ b/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-spring/pom.xml @@ -33,7 +33,7 @@ org.springframework.security spring-security-web - 4.0.3.RELEASE + 5.2.10.RELEASE diff --git a/helloworlds/2.8-natural-language-processing/opennlp/pom.xml b/helloworlds/2.8-natural-language-processing/opennlp/pom.xml index 321b98db..0860f9be 100644 --- a/helloworlds/2.8-natural-language-processing/opennlp/pom.xml +++ b/helloworlds/2.8-natural-language-processing/opennlp/pom.xml @@ -1,7 +1,5 @@ - + com.github.vedenin 0.01 @@ -28,7 +26,7 @@ org.apache.opennlp opennlp-tools - 1.6.0 + 1.8.2 org.apache.opennlp @@ -36,4 +34,4 @@ 1.6.0 - + \ No newline at end of file diff --git a/helloworlds/2.8-natural-language-processing/stanford-core-nlp/pom.xml b/helloworlds/2.8-natural-language-processing/stanford-core-nlp/pom.xml index 3d83053d..e3cd0e39 100644 --- a/helloworlds/2.8-natural-language-processing/stanford-core-nlp/pom.xml +++ b/helloworlds/2.8-natural-language-processing/stanford-core-nlp/pom.xml @@ -29,12 +29,12 @@ edu.stanford.nlp stanford-corenlp - 3.6.0 + 4.4.0 edu.stanford.nlp stanford-corenlp - 3.6.0 + 4.4.0 models diff --git a/helloworlds/3.7-web-crawling-and-html-parser/Jsoup/pom.xml b/helloworlds/3.7-web-crawling-and-html-parser/Jsoup/pom.xml index eaa8b992..4162d8ef 100644 --- a/helloworlds/3.7-web-crawling-and-html-parser/Jsoup/pom.xml +++ b/helloworlds/3.7-web-crawling-and-html-parser/Jsoup/pom.xml @@ -27,7 +27,7 @@ org.jsoup jsoup - 1.8.3 + 1.15.3 \ No newline at end of file diff --git a/helloworlds/3.8-json/fastjson/pom.xml b/helloworlds/3.8-json/fastjson/pom.xml index 2582a73c..14600e0d 100644 --- a/helloworlds/3.8-json/fastjson/pom.xml +++ b/helloworlds/3.8-json/fastjson/pom.xml @@ -1,7 +1,7 @@ - + 4.0.0 fastjson Json :: fastjson @@ -12,7 +12,7 @@ com.alibaba fastjson - 1.2.9 + 1.2.83 \ No newline at end of file diff --git a/helloworlds/3.8-json/gson/pom.xml b/helloworlds/3.8-json/gson/pom.xml index 20d5f54b..8ea0cb06 100644 --- a/helloworlds/3.8-json/gson/pom.xml +++ b/helloworlds/3.8-json/gson/pom.xml @@ -26,7 +26,7 @@ com.google.code.gson gson - 2.6.2 + 2.8.9 \ No newline at end of file diff --git a/helloworlds/3.8-json/ig_json_parser/pom.xml b/helloworlds/3.8-json/ig_json_parser/pom.xml index f1abe60a..102fb92a 100644 --- a/helloworlds/3.8-json/ig_json_parser/pom.xml +++ b/helloworlds/3.8-json/ig_json_parser/pom.xml @@ -1,7 +1,7 @@ - + 4.0.0 ig_json_parser Json :: IQ Json Parser diff --git a/helloworlds/3.8-json/jackson/pom.xml b/helloworlds/3.8-json/jackson/pom.xml index 483c1d46..3bf1b7cb 100644 --- a/helloworlds/3.8-json/jackson/pom.xml +++ b/helloworlds/3.8-json/jackson/pom.xml @@ -1,28 +1,23 @@ - + 4.0.0 jackson Json :: jackson com.github.vedenin 0.01 - - - 2.7.3 - - com.fasterxml.jackson.core jackson-core - ${jackson.version} + [2.10.0.pr1,) com.fasterxml.jackson.core jackson-databind - ${jackson.version} + [2.10.0.pr1,) \ No newline at end of file diff --git a/helloworlds/3.8-json/json_schema_validator/pom.xml b/helloworlds/3.8-json/json_schema_validator/pom.xml index ac9a8f51..57612db5 100644 --- a/helloworlds/3.8-json/json_schema_validator/pom.xml +++ b/helloworlds/3.8-json/json_schema_validator/pom.xml @@ -1,28 +1,23 @@ - + 4.0.0 json_schema_validator Json :: Schema Validator com.github.vedenin 0.01 - - - 2.7.3 - - com.fasterxml.jackson.core jackson-core - ${jackson.version} + [2.11.1,) com.fasterxml.jackson.core jackson-databind - ${jackson.version} + [2.11.1,) com.github.fge @@ -30,4 +25,4 @@ 2.2.6 - \ No newline at end of file + diff --git a/helloworlds/3.8-json/jsonschema2pojo/pom.xml b/helloworlds/3.8-json/jsonschema2pojo/pom.xml index 4e06c3a0..f14eabf3 100644 --- a/helloworlds/3.8-json/jsonschema2pojo/pom.xml +++ b/helloworlds/3.8-json/jsonschema2pojo/pom.xml @@ -17,7 +17,7 @@ com.google.guava guava - 18.0 + 29.0-jre @@ -42,4 +42,4 @@ - \ No newline at end of file + diff --git a/helloworlds/3.8-json/logansquare/pom.xml b/helloworlds/3.8-json/logansquare/pom.xml index a4447e64..d5b17e27 100644 --- a/helloworlds/3.8-json/logansquare/pom.xml +++ b/helloworlds/3.8-json/logansquare/pom.xml @@ -1,18 +1,13 @@ - + 4.0.0 logansquare Json :: logansquare com.github.vedenin 0.01 - - - 2.7.3 - - com.bluelinelabs @@ -32,12 +27,12 @@ com.fasterxml.jackson.core jackson-core - ${jackson.version} + [2.10.0.pr1,) com.fasterxml.jackson.core jackson-databind - ${jackson.version} + [2.10.0.pr1,) \ No newline at end of file diff --git a/helloworlds/3.8-json/pom.xml b/helloworlds/3.8-json/pom.xml index 00cf724d..b50ecd1f 100644 --- a/helloworlds/3.8-json/pom.xml +++ b/helloworlds/3.8-json/pom.xml @@ -1,7 +1,7 @@ - + com.github.vedenin 0.01 @@ -17,7 +17,6 @@ json_java jsonschema2pojo moshi - ig_json_parser jackson json_path json_schema_validator diff --git a/helloworlds/4.1-testing/cucumber/pom.xml b/helloworlds/4.1-testing/cucumber/pom.xml index 2bba3f56..acf1ac29 100644 --- a/helloworlds/4.1-testing/cucumber/pom.xml +++ b/helloworlds/4.1-testing/cucumber/pom.xml @@ -10,7 +10,7 @@ 1.7 - 4.12 + 4.13.1 1.2.4 3.3 diff --git a/helloworlds/4.1-testing/image-comparison/pom.xml b/helloworlds/4.1-testing/image-comparison/pom.xml new file mode 100644 index 00000000..1e6707c8 --- /dev/null +++ b/helloworlds/4.1-testing/image-comparison/pom.xml @@ -0,0 +1,44 @@ + + + + 4.1-testing + com.github.vedenin + 0.01 + + 4.0.0 + + image-comparison + + This example to using Image-Comparison for testing code. + + + 3.3 + 3.1.1 + + + + + com.github.romankh3 + image-comparison + ${image.comparison.version} + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + ${maven.compiler.version} + + UTF-8 + ${java.version} + ${java.version} + + + + + + \ No newline at end of file diff --git a/helloworlds/4.1-testing/image-comparison/src/main/java/com/github/vedenin/imagecomparison/Sample.java b/helloworlds/4.1-testing/image-comparison/src/main/java/com/github/vedenin/imagecomparison/Sample.java new file mode 100644 index 00000000..c0a154fc --- /dev/null +++ b/helloworlds/4.1-testing/image-comparison/src/main/java/com/github/vedenin/imagecomparison/Sample.java @@ -0,0 +1,72 @@ +package com.github.vedenin.imagecomparison; + + + +import com.github.romankh3.image.comparison.ImageComparison; +import com.github.romankh3.image.comparison.ImageComparisonUtil; +import com.github.romankh3.image.comparison.model.ComparisonResult; +import com.github.romankh3.image.comparison.model.ComparisonState; + +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.IOException; +import java.net.URISyntaxException; + +/** + * Sample of the using Image-Comparison library. + */ +public class Sample { + + public static void main(String[] args) throws IOException, URISyntaxException { + // load the images to be compared + BufferedImage expectedImage = ImageComparisonUtil.readImageFromResources("expected.png"); + BufferedImage actualImage = ImageComparisonUtil.readImageFromResources("actual.png"); + + // where to save the result (leave null if you want to see the result in the UI) + File resultDestination = new File("result.png"); + + //Create ImageComparison object for it. + ImageComparison imageComparison = new ImageComparison(expectedImage, actualImage, resultDestination); + + //Can be used another constructor for it, without destination. + new ImageComparison("expected.png", "actual.png"); + //or + new ImageComparison(expectedImage, actualImage); + + //Also can be configured BEFORE comparing next properties: + + //Threshold - it's the max distance between non-equal pixels. By default it's 5. + imageComparison.setThreshold(10); + imageComparison.getThreshold(); + + //RectangleListWidth - Width of the line that is drawn in the rectangle. By default it's 1. + imageComparison.setRectangleLineWidth(5); + imageComparison.getRectangleLineWidth(); + + //Destination. Before comparing also can be added destination file for result image. + imageComparison.setDestination(resultDestination); + imageComparison.getDestination(); + + //MaximalRectangleCount - It means that would get first x biggest rectangles for drawing. + // by default all the rectangles would be drawn. + imageComparison.setMaximalRectangleCount(10); + imageComparison.getMaximalRectangleCount(); + + //MinimalRectangleSize - The number of the minimal rectangle size. Count as (width x height). + // by default it's 1. + imageComparison.setMinimalRectangleSize(100); + imageComparison.getMinimalRectangleSize(); + + //After configuring the ImageComparison object, can be executed compare() method: + ComparisonResult comparisonResult = imageComparison.compareImages(); + + //Can be found ComparisonState. + ComparisonState comparisonState = comparisonResult.getComparisonState(); + + //And Result Image + BufferedImage resultImage = comparisonResult.getResult(); + + //Image can be saved after comparison, using ImageComparisonUtil. + ImageComparisonUtil.saveImage(resultDestination, resultImage); + } +} diff --git a/helloworlds/4.1-testing/image-comparison/src/main/resources/actual.png b/helloworlds/4.1-testing/image-comparison/src/main/resources/actual.png new file mode 100644 index 00000000..c6b14aeb Binary files /dev/null and b/helloworlds/4.1-testing/image-comparison/src/main/resources/actual.png differ diff --git a/helloworlds/4.1-testing/image-comparison/src/main/resources/expected.png b/helloworlds/4.1-testing/image-comparison/src/main/resources/expected.png new file mode 100644 index 00000000..8c97865c Binary files /dev/null and b/helloworlds/4.1-testing/image-comparison/src/main/resources/expected.png differ diff --git a/helloworlds/4.1-testing/mockito/pom.xml b/helloworlds/4.1-testing/mockito/pom.xml index a267e5c5..a88da97a 100644 --- a/helloworlds/4.1-testing/mockito/pom.xml +++ b/helloworlds/4.1-testing/mockito/pom.xml @@ -15,7 +15,7 @@ 1.7 - 4.12 + 4.13.1 3.3 1.9.5 diff --git a/helloworlds/4.1-testing/pom.xml b/helloworlds/4.1-testing/pom.xml index 99d5376c..c49d65c7 100644 --- a/helloworlds/4.1-testing/pom.xml +++ b/helloworlds/4.1-testing/pom.xml @@ -14,5 +14,6 @@ cucumber mockito + image-comparison \ No newline at end of file diff --git a/helloworlds/5.0-other-examples/pom.xml b/helloworlds/5.0-other-examples/pom.xml index 172c4d71..e052c59e 100644 --- a/helloworlds/5.0-other-examples/pom.xml +++ b/helloworlds/5.0-other-examples/pom.xml @@ -53,17 +53,17 @@ com.google.guava guava - 18.0 + 29.0-jre org.apache.commons commons-collections4 - 4.0 + 4.1 commons-io commons-io - 2.4 + 2.7 org.apache.commons diff --git a/helloworlds/contributing.md b/helloworlds/contributing.md index 3574f08d..9fb0d7f0 100644 --- a/helloworlds/contributing.md +++ b/helloworlds/contributing.md @@ -5,3 +5,21 @@ You can see [json sections](https://github.com/Vedenin/useful-java-links/tree/ma Ideally, if you examples can be build using only maven, and running using only Idea Community or Eclipse. Thank you for any your suggestions! + + import java.lang.*; +public class Calulator { + double i; + double x; + void p(){ + x = Math.sqrt(i); + } +} +class Demonstration_81{ + public static void main(String[] args){ + Calulator a = new Calulator(); + a.i = 20.0; + a.p(); + System.out.println("Square root of"+a.i+" is "+a.x); + + } +} diff --git a/link-rus/readme.md b/link-rus/readme.md index 9109333a..85154f2f 100644 --- a/link-rus/readme.md +++ b/link-rus/readme.md @@ -1,10 +1,10 @@ # Список полезных ссылок для Java программиста -В данном файле собрано большое количество ссылок по разделам на полезные Java библиотеки и фреймворки и краткое описание, так же указан рейтинг на github (star), лицензия или лицензии под которым выложен код библиотеки и возможно или нет линковать данную библиотеку с коммерческим закрытым ПО (строгость копилефта). +В данном файле собрано большое количество ссылок по разделам на полезные Java библиотеки и фреймворки и краткое описание, так же указан рейтинг на github (star), лицензия или лицензии под которым выложен код библиотеки и возможно или нет линковать данную библиотеку с коммерческим закрытым ПО (строгость копилефта). В данный файл включен как перевод [awesome link](https://github.com/akullpp/awesome-java), так и все немобильные проекты github'a c количеством star более 390, более 250 ссылок на русскоязычное видео по разным темам и многое другое. Если хотите посмотреть отдельные файлы, то только проекты github'a [тут](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/github_projects.md), а список видео [здесь](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/video-links.md), но все ссылки можно найти и в этом файле. -**Обратите внимание:** на проект ["Hello Worlds examples"](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds) - его целью является собирать в одном месте простые примеры использования библиотек и фреймворков для облегчения их изучения и выбора. Буду очень признателен добавлению любых примеров! +**Обратите внимание:** на проект ["Hello Worlds examples"](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds) - его целью является собирать в одном месте простые примеры использования библиотек и фреймворков для облегчения их изучения и выбора. Буду очень признателен добавлению любых примеров! Любые дополнения и изменения всячески приветствуются! @@ -43,8 +43,8 @@ - [8. Машинное обучение и нейроные сети (Machine Learning)](#8-Машинное-обучение-и-нейроные-сети-machine-learning) - [Semantic Web и Linked Data](#semantic-web-и-linked-data) - [Constraint Satisfaction Problem Solver](#constraint-satisfaction-problem-solver) - - [Работа с естественными языками (NLP) и распознавние речи](#Работа-с-естественными-языками-nlp-и-распознавние-речи) - + - [Работа с естественными языками (NLP) и распознавание речи](#Работа-с-естественными-языками-nlp-и-распознавание-речи) + - [III. Работа с сетью и интеграция](#iii-Работа-с-сетью-и-интеграция) - [1. Веб сервера и сервера приложений (web server & application server)](#1-Веб-сервера-и-сервера-приложений-web-server--application-server) - [2. Сеть и сокеты](#2-Сеть-и-сокеты) @@ -63,7 +63,7 @@ - [15. Работа с нативным API разных ОС](#15-Работа-с-нативным-api-разных-ОС15-native) - [16. XML и SOAP](#16-xml-и-soup) - [17. Интеграция с сервисами геопозиционирования](#17-Интеграция-с-сервисами-геопозиционирования) - + - [IV. Тестирование](#iv-Тестирование) - [1. Тестирование](#1-Тестирование) - [2. Code Coverage](#2-code-coverage) @@ -89,18 +89,18 @@ - [4. Фреймворки для создания парсеров, интерпретаторов и компиляторов кода](#4-Фреймворки-для-создания-парсеров-интерпретаторов-и-компиляторов-кода) - [5. Приложения и готовые продукты написанные на Java](#5-Приложения-и-готовые-продукты-написанные-на-java) - [6. Игры, написанные Java](#6-Игры-написанные-java) - + - [VII. Прочее](#vii-Прочее) - [1. Примеры исходного кода на java](#1-Примеры-исходного-кода-на-java) - [2. Результаты сравнения производительности кода на Java (benchmark)](#2-Результаты-сравнения-производительности-кода-на-java-benchmark) - [3. Работа с git & github](#3-Работа-с-git--github) - + - [VIII. Resources](#viii-resources) - [1. Communities](#1-communities) - [2. Influential Books](#2-influential-books) - [3. Websites](#3-websites) -- [IX Видео доклады и лекции о Java](#ix-Видео-доклады-и-лекции-о-java) - +- [IX Видео доклады и лекции о Java](#ix-Видео-доклады-и-лекции-о-java) + ## I. Фреймворки и библиотеки ### 1. Фреймворки и библиотеки общего назначения @@ -156,6 +156,8 @@ 1. [Apache Turbine](http://turbine.apache.org) Turbine это основанный на сервлетах фреймворк, который позволяет Java developers быстро разрабатывать веб-приложения. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache OODT](http://oodt.apache.org) Apache OODT это компонентный веб-фреймворк. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [VRaptor](https://github.com/caelum/vraptor4) VRaptor 4 это производтельный открытый MVC вебфреймворк на основе CDI, github's star - 278. http://www.vraptor.org . Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) +1. [CUBA Platform](https://github.com/cuba-platform/cuba) - Высокоуровневая Java платформа с открытым кодом +для создания корпоративных информационных систем и RIA, на базе Spring, EclipseLink и Vaadin, рейтинг github'а - 215. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) #### Библиотеки для Web разработки 1. [Tobie ua-parser](https://github.com/tobie/ua-parser) много языковое портирование библиотеки для парсенга параметров user agent браузера. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache)/[MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT)/Perl, рейтинг github'а - 1497. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -268,13 +270,13 @@ *Бибилиотеки и фреймворки, которые реализуют парадигму [Inversion of Control](https://en.wikipedia.org/wiki/Inversion_of_control).* 1. [Spring Framework](https://github.com/spring-projects/spring-framew ork) Spring — наверное, самый распространенный фреймворк Java в мире, который в том числе реализует Dependency Injection. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 5921. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -1. [Dagger и Dagger2](https://github.com/square/dagger) Быстрый и легковесный фреймворк для реализации dependency injector для Android и Java, работающий во время компиляции, а не во времени выполнения, и не использующий рефлексию. Реализует Java спецификацию JSR-330, описывающую dependency injection. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 3607, на stackoverflow - [800 вопросов](http://stackoverflow.com/questions/tagged/dagger). ![Можно использовать в коммерческом закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) +1. [Dagger и Dagger2](https://github.com/square/dagger) Быстрый и легковесный фреймворк для реализации dependency injector для Android и Java, работающий во время компиляции, а не во времени выполнения, и не использующий рефлексию. Реализует Java спецификацию JSR-330, описывающую dependency injection. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 3607, на stackoverflow - [800 вопросов](http://stackoverflow.com/questions/tagged/dagger). ![Можно использовать в коммерческом закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Google Guice](https://github.com/google/guice) - Guice (произносится 'juice') это легковесный dependency injection фреймворк для Java 6 и выше, созданный Google. Легкий, но мощный фреймворк, из которого получился Dagger. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache), рейтинг github'а - 1881. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache DeltaSpike](https://deltaspike.apache.org/) - фреймворк расширяющий CDI, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [HK2](https://hk2.java.net) - Легкий и динамичный dependency injection фреймворк, [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License)/ [CDDL 1.0](http://opensource.org/licenses/CDDL-1.0) 1. [AspectJ](https://eclipse.org/aspectj/) - Аспектно-ориентированное расширение, легко встраиваемое в существующие приложения, Лицензия: [Eclipse Public 1.0](https://www.eclipse.org/legal/epl-v10.html)![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -#### Работа с консолью и командной строкой +#### Работа с консолью и командной строкой 1. [jcommander](https://github.com/cbeust/jcommander) Библиотека для парсинга параметров командных строк. http://jcommander.org/ Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 445. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Jline](https://github.com/jline/jline2) это java библиотека для работы с консолью (ввод, редактирование в emacs и vi режимах), также как библиотеки Readline и Editline, однако при этом так как Jline почти полностью написана на Java является полностью платформонезависимой. Лицензия: [BSD 4](https://en.wikipedia.org/wiki/BSD_licenses#4-clause_license_.28original_.22BSD_License.22.29), рейтинг github'а - 396. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [args4j](http://args4j.kohsuke.org/) - Парсер командной строки. Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT)![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -318,7 +320,7 @@ 1. [Keycloak](http://keycloak.jboss.org/) - Интеграция с SSO и IDM, как для приложений, работающих в браузере, так и для RESTful веб сервисов. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [PicketLink](http://picketlink.org/) - Umbrella проект для обеспечения безопасности и индентификации пользователей, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Santuario](http://santuario.apache.org) Библиотека реализующая XML Digital Signature спецификацию и XML Encryption спецификацию. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -1. [Apache Oltu](https://oltu.apache.org/) Реализация OAuth протокола для Java. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) +1. [Apache Oltu](https://oltu.apache.org/) ( *больше не поддерживается* ) Реализация OAuth протокола для Java. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache Syncope](http://syncope.apache.org) Apache Syncope это открытая система для управления цифровыми идентификторами в enterprise приложениях. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) #### Высокая производительность @@ -361,7 +363,7 @@ 1. [tinylog](http://www.tinylog.org/) - Легкий фреймворк логирования со статическими классами логирования, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -#### Bean Mapping and Validation +#### Bean Mapping and Validation *Фреймворки, упрощающие маппинг одних типов данных в другие (или bean validation).* [К оглавлению](#Список-полезных-ссылок-для-java-программиста) @@ -474,6 +476,7 @@ 1. [Apache Derby](https://db.apache.org/derby/) - Apache Derby, это Apache DB подпроект, это open source реляционная база данных, реализованная полностью на . Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache Empire-db](http://empire-db.apache.org/) Apache Empire-db is a lightweight relational database abstraction layer and data persistence component. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache Ignite](http://ignite.apache.org) Apache Ignite is an In-Memory Data Fabric providing in-memory data caching, partitioning, processing, and querying components. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) +1. [Tarantool](https://github.com/tarantool/tarantool) — открытая система управления базой данных с неблокирующим сервером приложений на Lua. База данных обладает высокой скоростью работы по сравнению с традиционными СУБД, обладая теми же свойствами: персистентности, транзакционности ACID, репликации master-slave, master-master. Лицензия: [BSD licenses](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_BSD). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) *Распределенные базы данных.* @@ -539,7 +542,8 @@ 1. [FlexyPool](https://github.com/vladmihalcea/flexy-pool) - Добавляет метрики и отказоустойчивые стратегии для наиболее популярных пулов соединией с базами данных, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [LightAdmin](http://lightadmin.org/) - Легко настраиваемя CRUD UI библиотека для быстрой разработки приложений, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Можно использовать в коммерческом закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Jaybird JCA/JDBC driver](http://www.firebirdsql.org/en/jdbc-driver/) - JCA-JDBC драйвер для Firebird базы данных, [github](https://github.com/FirebirdSQL/jaybird), github's star - 19. Лицензия: [GNU Lesser 2.1](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License), ![Можно использовать в коммерческом закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -1. [dbeaver](https://github.com/serge-rider/dbeaver) - Инструмент для доступа к базе данных для разработчиков, SQL программистов, администраторов баз данных и аналитиков . http://dbeaver.jkiss.org. , github's star - 473. Лицензия: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License). ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) +1. [dbeaver](https://github.com/serge-rider/dbeaver) - Инструмент для доступа к базе данных для разработчиков, SQL программистов, администраторов баз данных и аналитиков . http://dbeaver.jkiss.org. , github's star - 473. Лицензия: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License). ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) +1. [tarantool-java](https://github.com/tarantool/tarantool-java) Коннектор для работы по бинарному протоколу с Tarantool. Лицензия: [BSD licenses](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_BSD). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) ### 5. Маппинг объектов в базы данных (ORM и т. п.) @@ -557,13 +561,13 @@ 1. [Vibur DBCP](http://www.vibur.org/) - Библиотека реализующая JDBC пул соединений с дополнительными средствами мониторинга производительности, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Ebean](http://ebean-orm.github.io/) - Предоставляет простой и быстрой доступ к данным, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [EclipseLink](https://www.eclipse.org/eclipselink/) - Поддерживает большое количество стандартов ORM: JPA, JAXB, JCA и SDO, Лицензия: [Eclipse Public License v1.0](https://ru.wikipedia.org/wiki/Eclipse_Public_License) и [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -1. [OrmLite](http://ormlite.com/) - Легковесный пакет избегающий усложнений и перерасхода ресурсов других ORM решений, +1. [OrmLite](http://ormlite.com/) - Легковесный пакет избегающий усложнений и перерасхода ресурсов других ORM решений, , Лицензия: [ISC](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_ISC). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache Cayenne](http://cayenne.apache.org/) Простая в использовании Java ORM. Лицензия: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache OpenJPA](http://openjpa.apache.org) Реализация Java Persistence API спецификации. Лицензия: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache MetaModel]( http://metamodel.apache.org) Apache MetaModel это универсальный способ делать запросы и получать данные из различных источнико включая: Relational (JDBC) databases, CSV files, Excel spreadsheets, XML files, JSON files, Fixed width files, MongoDB, Apache CouchDB, Apache HBase, Apache Cassandra, ElasticSearch, OpenOffice.org databases, Salesforce.com, SugarCRM и даже коллекции из обычных Java объектов (POJOs). Лицензия: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -### 6. Системы, для обработки данных (работа с грязными данными, анализ и т.п.) +### 6. Системы, для обработки данных (работа с грязными данными, анализ и т.п.) [К оглавлению](#Список-полезных-ссылок-для-java-программиста) 1. [Storm](https://github.com/nathanmarz/storm) - распределенная и устойчивая к ошибкам обработка данных в реальном времени: потоковая обработка, непрерывные вычисления, распределенный RPC и другое. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 8636. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -577,7 +581,7 @@ 1. [Suro: Netflix's Data Pipeline](https://github.com/Netflix/suro) — это сервис для сбора, агрегации и управления большим количеством разнообразных событий, включая данные логов. . Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 405. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache UIMA](http://uima.apache.org) Annotator components and a scalable integration and deployment framework for Unstructured Information analysis. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -### 7. Большие данные (big data) +### 7. Большие данные (big data) [К оглавлению](#Список-полезных-ссылок-для-java-программиста) #### Фреймворки и библиотеки @@ -604,7 +608,7 @@ 1. [Apache REEF](http://reef.apache.org/) Apache REEF (Retainable Evaluator Execution Framework) это маштабируемый фреймворк, который облегчает разработку Big Data приложений на основе менеджеров ресурсов таких как Apache YARN или Mesos. Лицензия: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache Pig](http://pig.apache.org) Apache Pig это платформа для анализа больших наборов данных в Hadoop. Лицензия: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -#### Хранилища, базы данных, Sql-подобные движки, поисковые система для big data +#### Хранилища, базы данных, Sql-подобные движки, поисковые система для big data 1. [Druid](https://github.com/druid-io/druid) это column-oriented хранилище и система обработки в реальном времени для обработки потоковых и пакетной информации и интегрированная с Samza, Kafka, Storm, and Hadoop. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 1846. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache Hive](https://github.com/apache/hive) - зеркало Apache Hive. Фреймворк для созданий SQL подобного языка запросов для Hadoop. https://hive.apache.org/ .Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 619. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache Kylin](https://github.com/KylinOLAP/Kylin) это открытая распределенная аналитическая система, которая обеспечивает SQL интерфейс и OLAP отчеты для Hadoop.. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 504. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -675,12 +679,12 @@ 1. [Sat4J](http://www.sat4j.org/) - Наиболее продвинутый SAT решатель для логических (? boolean) и оптимизационых проблем, Лицензия: [GNU Lesser 3](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License) и [Eclipse Public 1.0](https://www.eclipse.org/legal/epl-v10.html). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -#### Работа с естественными языками (NLP) и распознавние речи +#### Работа с естественными языками (NLP) и распознавание речи [К оглавлению](#Список-полезных-ссылок-для-java-программиста) 1. [Stanfordnlp CoreNLP](https://github.com/stanfordnlp/CoreNLP) Stanford CoreNLP: Java библиотека для работы с Stanford NLP (инструментами для анализа и работы с текстом на естественных языках, например английским). [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/2.8-natural-language-processing/stanford-core-nlp). Лицензия: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License), рейтинг github'а - 871. ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) 1. [Apache OpenNLP](https://opennlp.apache.org/) - Набор инструментов для типовых задач таких как tokenization. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/2.8-natural-language-processing/opennlp). Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -1. [LingPipe](http://alias-i.com/lingpipe/) - Набор инструментов для различных видов задач от POS tagging до анализа предложений, Лицензия: [AGPL](https://www.gnu.org/licenses/agpl-3.0.html) и ***платная лицензия, проприетарная***. ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) ИЛИ ![Проприетарная лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/proprietary.png?raw=true) +1. [LingPipe](http://alias-i.com/lingpipe/) - Набор инструментов для различных видов задач от POS tagging до анализа предложений, Лицензия: [AGPL](https://www.gnu.org/licenses/agpl-3.0.html) и ***платная лицензия, проприетарная***. ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) ИЛИ ![Проприетарная лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/proprietary.png?raw=true) 1. [Mallet](http://mallet.cs.umass.edu/) - Статистическая обработка естественных языков, классификация документов, кластеризация, topic modeling и многое другое, Лицензия: [Eclipse Public License v1.0](https://ru.wikipedia.org/wiki/Eclipse_Public_License). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Twitter Text Libraries](https://github.com/twitter/twitter-text) - Коллекция библиотек и тестов для парсинга текста твитов(tweet). Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [NLP4J](https://github.com/emorynlp/nlp4j) NLP4J проект (старое название ClearNLP) предоставляет набор NLP инструментов для JVM языков. Этот проект разрабатывается в NLP Research Group из Emory University. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -688,7 +692,7 @@ 1. [Z-MERT](http://cs.jhu.edu/~ozaidan/zmert/) Z-MERT - система машинного перевода. Лицензия: [GNU Lesser General Public License (LGPL)](http://www.gnu.org/licenses/lgpl-3.0.en.html). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [ClearTK](http://cleartk.github.io/cleartk/) - ClearTK - фреймворк для разработки систем machine learning и natural language processing которые реализаует Apache Unstructured Information Management Architecture, github star: 34. Лицензия: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache cTAKES](http://ctakes.apache.org/) - Apache cTAKES™ это NLP система для получения данных из медицинской документации. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -1. [The Stanford Natural Language Processing Group](http://nlp.stanford.edu/software/) - Набор различных NLP инструментов, написанных на Java. Подпроекты: [Stanford Parser](http://nlp.stanford.edu/software/lex-parser.html) - A statistical parser, [Stanford POS Tagger](http://nlp.stanford.edu/software/tagger.html), [Stanford Named Entity Recognizer](http://nlp.stanford.edu/software/CRF-NER.html), [RegexNER](http://nlp.stanford.edu/software/regexner.html), +1. [The Stanford Natural Language Processing Group](http://nlp.stanford.edu/software/) - Набор различных NLP инструментов, написанных на Java. Подпроекты: [Stanford Parser](http://nlp.stanford.edu/software/lex-parser.html) - A statistical parser, [Stanford POS Tagger](http://nlp.stanford.edu/software/tagger.html), [Stanford Named Entity Recognizer](http://nlp.stanford.edu/software/CRF-NER.html), [RegexNER](http://nlp.stanford.edu/software/regexner.html), [Word Segmenter](http://nlp.stanford.edu/software/segmenter.html),[Classifier](http://nlp.stanford.edu/software/classifier.html),[EnglishTokenizer](http://nlp.stanford.edu/software/tokenizer.html),[TokensRegex](http://nlp.stanford.edu/software/tokensregex.html),[Temporal Tagger](http://nlp.stanford.edu/software/sutime.html),[Pattern-based Information Extraction and Diagnostics](http://nlp.stanford.edu/software/patternslearning.html),[Stanford Relation Extractor](http://nlp.stanford.edu/software/relationExtractor.html). Лицензия: [GNU 2/3](https://en.wikipedia.org/wiki/GNU_General_Public_License). ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) 1. [Apache Tika](http://tika.apache.org) The Apache Tika это набор инструмнтов для получение метаданных и структурированого теста из различных видом документов, используя разные парсеры (Apache cTAKES,OpenNLP и т.п.). Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [CMU Sphinx](http://cmusphinx.sourceforge.net/) - Библиотека для распознавания речи. Лицензия: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -712,7 +716,7 @@ 1. [Apache James](http://james.apache.org) Apache Java Enterprise Mail Server (или Apache James) это 100% чистый Java SMTP и POP3 постовый сервер и NNTP News сервер. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -### 2. Сеть и сокеты +### 2. Сеть и сокеты [К оглавлению](#Список-полезных-ссылок-для-java-программиста) 1. [Netty](https://github.com/netty/netty) низкоуровневый асинхроно-событийный фреймворк для быстрого создания высокопроизводительных клиент-серверных соединений. Более удобный аналог ассинхронным сокетам из модуля java.nio из JDK.  . Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 4847. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -723,7 +727,7 @@ 1. [EsotericSoftware Kryonet](https://github.com/EsotericSoftware/kryonet) TCP/UDP клиентская и серверная библиотека для Java, основанная на Kryo. Лицензия: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29), рейтинг github'а - 539. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Async Http Client](https://github.com/AsyncHttpClient/async-http-client) - Ассинхронная HTTP и вебсокет клиентская библиотека, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Comsat](https://github.com/puniverse/comsat) - Интегрирует стандартный Java веб API c Quasar fibers и actors, Лицензия: [Eclipse Public 1.0](https://www.eclipse.org/legal/epl-v10.html). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -1. [Grizzly](https://grizzly.java.net/) - NIO фреймворк. Использует как сетевой слой в Glassfish, Лицензия: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License) и [CDDL 1.1](https://ru.wikipedia.org/wiki/CDDL). +1. [Grizzly](https://grizzly.java.net/) - NIO фреймворк. Использует как сетевой слой в Glassfish, Лицензия: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License) и [CDDL 1.1](https://ru.wikipedia.org/wiki/CDDL). 1. [OkHttp](http://square.github.io/okhttp/) - HTTP+SPDY клиент, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Undertow](http://undertow.io/) - Вебсервер, предоставляющий блокирующий и неблокирующий API, основанный на NIO. Используется как сетевой слой в WildFly, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache MINA](http://mina.apache.org/) Apache MINA это фреймворк для создания быстрых сетевых приложений используя Java NIO. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -752,7 +756,7 @@ 1. [Apache Synapse](http://synapse.apache.org) Apache Synapse это легковестных ESB движок (сервисной шина предприятия) и XML router. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache ServiceMix](http://servicemix.apache.org) Apache ServiceMix это гибкий, открытый интеграционный контейнер для общего интерфейса к возможностям и функциональности Apache ActiveMQ, Camel, CXF и Karaf для создания полнофункционального ESB решения основнанного на OSGi. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -### 4. Работа с http и ssh +### 4. Работа с http и ssh [К оглавлению](#Список-полезных-ссылок-для-java-программиста) 1. [Square Okhttp](https://github.com/square/okhttp) HTTP & SPDY (новый формат HTTP от гугла) клиент для Android и Java.  . Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 5022. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -807,7 +811,7 @@ 1. [Apache Nutch](http://nutch.apache.org/) - Хорошо расширяемый, хорошо маштабированный вебпаук с рабочей экосистемой, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Crawler4j](https://github.com/yasserg/crawler4j) - Простой и легковесный вебпаук, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -### 8. Работа с Json +### 8. Работа с Json [К оглавлению](#Список-полезных-ссылок-для-java-программиста) ##### JSON парсеры @@ -827,7 +831,7 @@ 1. [Jayway JsonPath](https://github.com/jayway/JsonPath) Java JsonPath — реализация аналога XPATH только для Json, а не XML, рейтинг github'а - 849. [User guide](https://github.com/jayway/JsonPath#getting-started) и [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/3.8-json/json_path). Лицензия: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png) 1. [Alibaba Fastjson](https://github.com/alibaba/fastjson) Быстрый JSON обработчик, рейтинг github'а - 4851. [User guide](https://github.com/alibaba/fastjson) и [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/3.8-json/fastjson). Лицензия: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png) -##### Генерация Java классов из JSON или JSON схемы и JSON валидация +##### Генерация Java классов из JSON или JSON схемы и JSON валидация 1. [Jsonschema2pojo](https://github.com/joelittlejohn/jsonschema2pojo) Генерация Java классов из JSON схемы (или примера JSON) с аннотациями для data-binding для Jackson 1.x or 2.x, Gson и т. п.., рейтинг github'а - 1664. [User guide](https://github.com/joelittlejohn/jsonschema2pojo/wiki/Getting-Started) и [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/3.8-json/jsonschema2pojo). Лицензия: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png) 1. [Json schema validator](https://github.com/fge/json-schema-validator) Валидация JSON схемы, реализована на чистой Java, создана с целью проверки Json файлов, используя Json схемы., так же может генерировать Java классы из схемы и наоборот, рейтинг github'а - 547. [User guide](https://github.com/fge/json-schema-validator#read-me-first) и [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/3.8-json/json_schema_validator). Лицензия: [GNU Lesser 3](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License)/[Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png) @@ -878,7 +882,7 @@ [К оглавлению](#Список-полезных-ссылок-для-java-программиста) 1. [Apache Aurora](http://aurora.apache.org/) - Apache Aurora это Apache Mesos фреймворк для длительных сервисов и cron jobs, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -1. [Singularity](http://getsingularity.com/) - Singularity это Apache Mesos фреймворк, который делает разработку и обслуживание проще. Он поддерживает вебсервисы, фоновое выполнение, запуск задач по расписанию и выполнение одноразовых задач, Лицензия: **неизвесна, на сайте не найдена!**. +1. [Singularity](http://getsingularity.com/) - Singularity это Apache Mesos фреймворк, который делает разработку и обслуживание проще. Он поддерживает вебсервисы, фоновое выполнение, запуск задач по расписанию и выполнение одноразовых задач, Лицензия: **неизвесна, на сайте не найдена!**. 1. [Apache Helix](http://helix.apache.org/) Это фреймворк управления кластером. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache Airavata](http://airavata.apache.org/) Apache Airavata это фреймворк выполнения и управления заданиями в распределенных ресурсах, таких как кластеры, суперкомпьютеры, national grids, академические и комерческие облака. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -926,7 +930,7 @@ 1. [Geo](https://github.com/davidmoten/geo/) - GeoHash утилиты для Java. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Geotoolkit.org](http://www.geotoolkit.org/) - Библиотека для разработки приложений геопозиционирования. Работает на основе Apache SIS проекта. Лицензия: [GNU Lesser 2.1](http://www.geotoolkit.org/license.html). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [GeoTools](http://geotools.org/) - Библиотека предоставляющая инструменты для получения данных геопозиционирования. Лицензия: [GNU Lesser 2.1](http://www.gnu.org/licenses/lgpl-2.1.html). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -1. [H2GIS](http://www.h2gis.org/) - Геопозиционированое расширение для базы данных H2. Лицензия: [GPL 3](http://www.gnu.org/copyleft/gpl.html). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) +1. [H2GIS](http://www.h2gis.org/) - Геопозиционированое расширение для базы данных H2. Лицензия: [GPL 3](http://www.gnu.org/copyleft/gpl.html). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) 1. [Jgeohash](http://astrapi69.github.io/jgeohash/) - Библиотека, помогающая Java разработчикам в использовании GeoHash алгоритмов. Лицензия: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [JTS Topology Suite](http://www.vividsolutions.com/jts/JTSHome.htm) - API для 2D геопозиционирования. Лицензия: [GNU Lesser 3](http://www.gnu.org/copyleft/lesser.html). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Mapsforge](https://github.com/mapsforge/mapsforge/) - Продукт для геопозиционирования на карте, основанной на OpenStreetMap данных. Лицензия: [GNU Lesser 3](http://www.gnu.org/copyleft/lesser.html). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -940,6 +944,7 @@ 1. [Mockito](https://github.com/mockito/mockito) Mocking фреймворк для unit тестов, написанных на Java. Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT) , рейтинг github'а - 1307. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Selenium](https://github.com/SeleniumHQ/selenium) Фреймворк для автоматического тестирования в браузере . Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 1305. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Cucumber jvm](https://github.com/cucumber/cucumber-jvm) Портирование Cucumber фреймворка для JVM. Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT) , рейтинг github'а - 1047. ![Можно использовать в коммерческом закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) +1. [JBehave](https://github.com/jbehave/jbehave-core) BDD фреймворк, обладающий широкими возможностями по конфигурации. BDD является эволюцией подходов к разработке через тестирование (англ. test-driven development, TDD) и через приемочное тестирование (англ. acceptance-test driven design, ATDD), а также предназначен для того, чтобы сделать эти практики более доступными и интуитивно понятными в одинаковой степени новичкам и экспертам. Лицензия: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29), рейтинг github'а - 208. ![Можно использовать в коммерческом закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Spock](https://github.com/spockframework/spock) Spock это фреймворк тестирования и создания спецификаций для Java и Groovy приложений . Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 669. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Google Firing range](https://github.com/google/firing-range) Google Firing Range это тестовый вебсервер для приложений-сканеров уязвимостей вебсайтов. Firing Range создает широкий спектр синтетических уязвимостей. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 650. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Fitnesse](https://github.com/unclebob/fitnesse) FitNesse это система тестирования, вебсервер и вики. Лицензия: [CPL-1.0](https://opensource.org/licenses/cpl1.0.php), рейтинг github'а - 618. @@ -954,7 +959,6 @@ 1. [Arquillian](http://arquillian.org/) - Интеграционная и функциональная платформа тестирования Java EE контейнеров, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Awaitility](https://github.com/jayway/awaitility) - DSL для синхронизации ассинхроных операций, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Citrus](http://citrusframework.org/) - Фреймворк интеграционного тестирования, которой фокусируется на тестировании клиент-серверного обмена сообщениями, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -1. [Cucumber](https://github.com/cucumber/cucumber-jvm) - BDD фреймворк тестирования. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/4.1-testing/cucumber). Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Gatling](http://gatling.io/) - Содержит инструменты тестирования разработанные для легкого использования, легкого сопровождения и высокой производительности, Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [GreenMail](http://www.icegreen.com/greenmail/) - In-memory email сервер для интеграционного тестирования, поддерживает SMTP, POP3 и IMAP включая SSL, Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [JGiven](http://jgiven.org) - Удобный для разработчиков BDD фреймворк тестирования совместимый с JUnit и TestNG, Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -973,7 +977,7 @@ [К оглавлению](#Список-полезных-ссылок-для-java-программиста) 1. [JaCoCo](http://eclemma.org/jacoco/) - Фреймворк, который позволяет собирать метрики покрытия кода тестами, используя как offline, так и runtime байткод инструменты, используется в EclEmma, плагине Eclipse для определения степени покрытия тестами, Лицензия: [Eclipse Public License v1.0](https://ru.wikipedia.org/wiki/Eclipse_Public_License), [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache), [BSD](https://en.wikipedia.org/wiki/BSD_licenses). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -1. [Clover](https://www.atlassian.com/software/clover/overview) - Проприетарный инструмент для определения степени покрытия кода тестами от Atlassian, который основан на анализе исходного кода вместо анализа байткода, ***Лицензия: платная, проприетарная*** ![Проприетарная лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/proprietary.png?raw=true) +1. [Clover](https://www.atlassian.com/software/clover/overview) - Проприетарный инструмент для определения степени покрытия кода тестами от Atlassian, который основан на анализе исходного кода вместо анализа байткода, ***Лицензия: платная, проприетарная*** ![Проприетарная лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/proprietary.png?raw=true) 1. [Cobertura](http://cobertura.github.io/cobertura) - Использует автономный (или статическый) инструментарий анализа байткода и class loading'a для получения метрик покрытия кода тестами, Лицензия: [GNU 2](https://ru.wikipedia.org/wiki/GNU_General_Public_License). ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) 1. [JCov](https://wiki.openjdk.java.net/display/CodeTools/jcov) - Набор инструментов для анализа покрытия кода тестами, который используется при разработке OpenJDK проекта, Лицензия: [GNU 2](https://ru.wikipedia.org/wiki/GNU_General_Public_License). ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) @@ -1114,7 +1118,7 @@ 1. [Google J2ObjC:](https://github.com/google/j2objc) Java to Objective-C Translator and Runtime — конвертация языка Java (включая Android) в Objective-C.. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 2940. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Bytecode viewer](https://github.com/Konloch/bytecode-viewer) Система для реверс-инженеринга Java и Android (декомпилятор, редактор, отладчик и т. д.). Лицензия: [GNU 3](https://en.wikipedia.org/wiki/GNU_General_Public_License), рейтинг github'а - 617. ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) -1. [Reflections](https://github.com/ronmamo/reflections) сканирует ваш classpath, индексирует метаданные и позволяет строить запросы во время выполнения к метаданным, может сохранять информацию о метаданных вашего проекта. Лицензия: [WTFPL](https://en.wikipedia.org/wiki/WTFPL), рейтинг github'а - 514. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) +1. [Reflections](https://github.com/ronmamo/reflections) сканирует ваш classpath, индексирует метаданные и позволяет строить запросы во время выполнения к метаданным, может сохранять информацию о метаданных вашего проекта. Лицензия: [WTFPL](https://en.wikipedia.org/wiki/WTFPL), рейтинг github'а - 514. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) *Current implementations of the JVM/JDK.* @@ -1142,7 +1146,7 @@ 1. [Processing js](https://github.com/jeresig/processing-js) Портирование Processing библиотеку для работы с видео и изображениями в JavaScript.. Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT) , рейтинг github'а - 1696. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Pysonar2](https://github.com/yinwang0/pysonar2) PySonar2 это система индексирования и получения типов в Python, которая проводить сложный анализ с помощью Sourcegraph сотен тысяч открытых Python репозиториев. Лицензия: [GNU](http://www.gnu.org/licenses/agpl-3.0.en.html) [GNU AGPLv3](http://www.gnu.org/licenses/agpl-3.0.en.html), рейтинг github'а - 1654. ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) -### 3. Javascript +### 3. Javascript [К оглавлению](#Список-полезных-ссылок-для-java-программиста) 1. [Yuicompressor](https://github.com/yui/yuicompressor) YUI Compressor — это система сжатия JavaScript и CSS файлов, которая удаляет лишние пробелы, безопасно обфуцирует локальные переменные до минимального возможного имени и т. д.. Лицензия: [BSD](https://en.wikipedia.org/wiki/BSD_licenses), рейтинг github'а - 1840. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -1177,7 +1181,7 @@ 1. [Languagetool](https://github.com/languagetool-org/languagetool) - система стилистической и грамматической проверки текста более чем на 25 разных языках (английский, франц узкий, немецкий, русский, польский и т. д.). Лицензия: [GNU Lesser 2.1](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License), рейтинг github'а - 416. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache OpenMeetings](http://openmeetings.apache.org) - система с открытым кодом для создания видеоконференций, обмена сообщениями и документами компании. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -### 6. Игры, написанные Java +### 6. Игры, написанные Java [К оглавлению](#Список-полезных-ссылок-для-java-программиста) 1. [Bukkit](https://github.com/Bukkit/Bukkit) Мод для Minecraft API. Лицензия: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License), рейтинг github'а - 1600. ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) @@ -1190,12 +1194,12 @@ 1. [WorldEdit](https://github.com/sk89q/WorldEdit) Редактор игровых карт для Minecraft. Лицензия: [GNU Lesser 3](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License), рейтинг github'а - 715. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Essentials](https://github.com/essentials/Essentials) Essentials - Minecraft серверный командный мод — добавлени более 100 команд для использования в игре . Лицензия: [GNU 3](https://en.wikipedia.org/wiki/GNU_General_Public_License), рейтинг github'а - 423. ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) 1. [GlowstoneMC Glowstone](https://github.com/GlowstoneMC/Glowstone) Сервер для Bukkit Minecraft. Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT) , рейтинг github'а - 421. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -1. [Tribal Trouble](https://github.com/sunenielsen/tribaltrouble) - Стратегия в реальном времени на Java. Лицензия: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License), рейтинг github'а - 50. ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) +1. [Tribal Trouble](https://github.com/sunenielsen/tribaltrouble) - Стратегия в реальном времени на Java. Лицензия: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License), рейтинг github'а - 50. ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) ## VII. Прочее -### 1. Примеры исходного кода на java +### 1. Примеры исходного кода на java [К оглавлению](#Список-полезных-ссылок-для-java-программиста) 1. [Java design patterns](https://github.com/iluwatar/java-design-patterns)  Очень хорошие примеры и справочник по паттернам разработки.  . Лицензия:  [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT) , рейтинг github'а - 6341. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -1212,13 +1216,13 @@ 1. [Spring projects Spring data jpa examples](https://github.com/spring-projects/spring-data-jpa-examples) Примеры использования разных возможностей Spring Data JPA . Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 400. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Modern Java - A Guide to Java 8](https://github.com/winterbe/java8-tutorial) - Популярный Java 8 гайд. Лицензия: [MIT](https://opensource.org/licenses/MIT). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -### 2. Результаты сравнения производительности кода на Java (benchmark) +### 2. Результаты сравнения производительности кода на Java (benchmark) [К оглавлению](#Список-полезных-ссылок-для-java-программиста) 1. [Jvm serializers](https://github.com/eishay/jvm-serializers) - бенчмарки и сравнения производительности разных библиотек сериализации в JVM . Лицензия: ?, рейтинг github'а - 970. 1. [YCSB (Yahoo! Cloud Serving Benchmark)](https://github.com/brianfrankcooper/YCSB) - бэнчмарки (тесты производительности) различных облачных сервисов. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 869. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -### 3. Работа с git & github +### 3. Работа с git & github [К оглавлению](#Список-полезных-ссылок-для-java-программиста) 1. [Gitblit](https://github.com/gitblit/gitblit) Gitblit это свободный Java Git клиент для управления, просмотр и обслуживания Git репозиторий . Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 787. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) @@ -1307,7 +1311,7 @@ - [7.2 Архитектура, бизнес правила, бизнес модель и примеры приложений](#72-Архитектура-бизнес-правила-бизнес-модель-и-примеры-приложений) - [7.3 Тестирование приложений](#73-Тестирование-приложений) - [8. Прочее](#8-Прочее) - + ## **1\. Вопросы оптимизации и производительности** ### 1.1 Производительность и оптимизация diff --git a/link-rus/video-links.md b/link-rus/video-links.md index 2c177b75..55cd8857 100644 --- a/link-rus/video-links.md +++ b/link-rus/video-links.md @@ -35,6 +35,7 @@ - [6.8 Рефлексия и Invokedynamic](#68-Рефлексия-и-invokedynamic) - [6.9 Работа с нативными библиотеками и кодом (JNI/JNA)](#69-Работа-с-нативными-библиотеками-и-кодом-jnijna) - [6.10 Особенности языка Java](#610-Особенности-языка-java) + - [6.11 Реактивное программирование на Java](#611-Реактивное-программирование-на-java) - [7. Качество кода и вопросы архитектуры](#7-Качество-кода-и-вопросы-архитектуры) - [7.1 Рефакторинги, качество кода, методики программирования](#71-Рефакторинги-качество-кода-методики-программирования) - [7.2 Архитектура, бизнес правила, бизнес модель и примеры приложений](#72-Архитектура-бизнес-правила-бизнес-модель-и-примеры-приложений) @@ -378,6 +379,12 @@ 2. [Алексей Рагозин — Структуры данных в Java, изобретаем заново](https://www.youtube.com/watch?v=mLqjySOrjOw) - описание реализации коллекций в Java и возможные методы их улучшения, 3. [Светлана Исакова — Простыми словами про вывод типов](https://www.youtube.com/watch?v=8K6sNWvqrW8) +### 6.11 Реактивное программирование на Java + +1. [Кирилл Толкачёв и Егений Борисов — Reactive или не reactive, вот в чем вопрос](https://www.youtube.com/watch?v=mX19FWX2_Hs) - рефакторинг системы в реактивном стиле, +2. [Олег Докука — Протокол RSocket — будущее реактивных приложений](https://www.youtube.com/watch?v=tSVjUKZ8Eg8) - обзор RSocket — новаторское решение для межсервисных взаимодействий, +3. [Сергей Егоров — Не будь Гомером Симпсоном для своего Reactor-а!](https://www.youtube.com/watch?v=MU4wjB5CE-c) - обзор фреймворка Project Reactor + ## **7\. Качество кода и вопросы архитектуры** ### 7.1 Рефакторинги, качество кода, методики программирования @@ -390,6 +397,7 @@ 6. [Николай Алименков — Парадигмы ООП](https://www.youtube.com/watch?v=G6LJkWwZGuc) 7. [Михаил Ершов — Разработка совместимого API](https://www.youtube.com/watch?v=EgOZSr-Uc3w) 8. [Nikolay Chashnikov - Write code faster with fewer errors: is it possible?](https://www.youtube.com/watch?v=_VhIBu8_4TE&list=PLYj3Bx1JM6Y6KJyi0TL3BJLRzgZJ4cWmL&index=57) - как избегать ошибок при написании кода, +9. [Тагир Валеев — Атомарный рефакторинг в IntelliJ IDEA: прогибаем IDE под себя](https://www.youtube.com/watch?v=C5eD-K8AO3o) ### 7.2 Архитектура, бизнес правила, бизнес модель и примеры приложений diff --git a/readme.md b/readme.md index d16bf6f2..08412fb5 100644 --- a/readme.md +++ b/readme.md @@ -1,4 +1,4 @@ -# Useful Java links +# Useful Java links This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with new structure, additional license info and github's star info for every link, with a lot of new links (all non-mobile github projects with 390 or more star) and so on. **The russian version is [in this place](https://github.com/Vedenin/useful-java-links/tree/master/link-rus)**. **The "Hello Worlds examples" project is [in this place](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds)**. @@ -10,7 +10,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n - [3. GUI](#3-gui) - [4. Business](#4-business) - [5. Game Development](#5-game-development) - - [6. Usefull libraries](#6-usefull-libraries) + - [6. Useful libraries](#6-useful-libraries) - [Collections](#collections) - [Date and Time](#date-and-time) - [Dependency Injection and AOP](#dependency-injection-and-aop-frameworks) @@ -41,7 +41,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n - [Semantic Web and Linked Data](#semantic-web-and-linked-data) - [Constraint Satisfaction Problem Solver](#constraint-satisfaction-problem-solver) - [Natural Language Processing (NLP) and Speech Recognition](#natural-language-processing-nlp-and-speech-recognition) - + - [III. Network and Integration](#iii-network-and-integration) - [1. Servers (Web Server and Application Server))](#1-servers-web-server-and-application-server) - [2. Networking](#2-networking) @@ -81,13 +81,13 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n - [7. Documentation](#7-documentation) - [8. Other](#8-other) -- [VI. Program languages and applications, that was written with Java](#vi-program-languages-and-applications-that-was-written-with-java) - - [1. Program languages, that was written with Java](#1--program-languages-that-was-written-with-java) - - [2. Other program languages tools, that was written with Java](#2-other-program-languages-tools-that-was-written-with-java) +- [VI. Program languages and applications that were written with Java](#vi-program-languages-and-applications-that-was-written-with-java) + - [1. Program languages that were written with Java](#1--program-languages-that-was-written-with-java) + - [2. Other program languages tools that were written with Java](#2-other-program-languages-tools-that-was-written-with-java) - [3. Javascript](#3-javascript) - [4. Frameworks that help to create parsers, interpreters or compilers](#4-frameworks-that-help-to-create-parsers-interpreters-or-compilers) - - [5. Opensource applications, that was written with Java](#5-opensource-applications-that-was-written-with-java) - - [6. Opensource games, that was written with Java](#6-opensource-games-that-was-written-with-java) + - [5. Opensource applications that were written with Java](#5-opensource-applications-that-was-written-with-java) + - [6. Opensource games that were written with Java](#6-opensource-games-that-was-written-with-java) - [VII. Other](#vii-other) - [1. Source code examples](#1-source-code-examples) @@ -98,7 +98,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n - [1. Communities](#1-communities) - [2. Influential Books](#2-influential-books) - [3. Websites](#3-websites) - + ## I. Development ### 1. Common frameworks and libraries @@ -119,14 +119,15 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Kilim](https://github.com/kilim/kilim) Lightweight threads for Java, with message passing, nio, http and scheduling support. License: [MIT](https://opensource.org/licenses/MIT) , [![GitHub stars](https://img.shields.io/github/stars/kilim/kilim.svg?style=social&label=Star&maxAge=2592000)](https://github.com/kilim/kilim). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Isis](http://isis.apache.org) Apache Isis is a framework for rapidly developing domain-driven apps in Java. Write your business logic in entities, domain services and repositories, and the framework dynamically (at runtime) generates a representation of that domain model as a webapp or as a RESTful API. For prototyping or production. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Zest](https://zest.apache.org/) Apache Zest is a community based effort exploring Composite Oriented Programming for domain centric application development. This includes evolved concepts from Aspect Oriented Programming, Dependency Injection and Domain Driven Design. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Embedchain-JS](https://github.com/embedchain/embedchainjs) Framework to easily create LLM powered bots over any dataset. [![GitHub stars](https://img.shields.io/github/stars/embedchain/embedchainjs.svg?style=social)](https://github.com/embedchain/embedchainjs) ### 2. Web development [Up](#useful-java-links) -#### Web Frameworks +#### Web Frameworks 1. [Play Framework](https://github.com/playframework/playframework) The Play Framework combines productivity and performance making it easy to build scalable web applications with Java and Scala. https://www.playframework.com/ . License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/playframework/playframework.svg?style=social&label=Star&maxAge=2592000)](https://github.com/playframework/playframework). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Spark](https://github.com/perwendel/spark) Spark - a Sinatra inspired web framework. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/perwendel/spark.svg?style=social&label=Star&maxAge=2592000)](https://github.com/perwendel/spark). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Blade](https://github.com/biezhi/blade) a simple, elegant java web framework! http://bladejava.com. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/biezhi/blade.svg?style=social&label=Star&maxAge=2592000)](https://github.com/biezhi/blade). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Blade](https://github.com/biezhi/blade) a simple, elegant java web framework! License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/biezhi/blade.svg?style=social&label=Star&maxAge=2592000)](https://github.com/biezhi/blade). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Atmosphere](https://github.com/Atmosphere/atmosphere) - Realtime Client Server Framework for the JVM, supporting WebSockets with Cross-Browser Fallbacks. License: CDDL1 / [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/Atmosphere/atmosphere.svg?style=social&label=Star&maxAge=2592000)](https://github.com/Atmosphere/atmosphere). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Grails](https://github.com/grails/grails-core) - Grails is a framework used to build web applications with the Groovy programming language. The core framework is very extensible and there are numerous plugins available that provide easy integration of add-on features. https://grails.org/ License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/grails/grails-core.svg?style=social&label=Star&maxAge=2592000)](https://github.com/grails/grails-core). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Ninja](https://github.com/ninjaframework/ninja) Ninja is a full stack web framework for Java. Rock solid, fast and super productive. .http://www.ninjaframework.org. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/ninjaframework/ninja.svg?style=social&label=Star&maxAge=2592000)](https://github.com/ninjaframework/ninja). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -139,8 +140,8 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Google Web Toolkit](http://www.gwtproject.org/) - GWT is used by many products at Google, including Google AdWords and Google Wallet. It's open source, completely free, and used by thousands of enthusiastic developers around the world. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Pippo](http://www.pippo.ro/) - It's an open source micro web framework in Java, with minimal dependencies and a quick learning curve.The goal of this project is to create a micro web framework in Java that should be easy to use and hack. Pippo can be used in small and medium applications and also in applications based on micro services architecture. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Spring MVC](http://projects.spring.io/spring-framework/) - Spring MVC web application and RESTful web service framework. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [JavaServer Faces](https://javaserverfaces.java.net/) - JavaServer™ Faces technology simplifies building user interfaces for JavaServer applications. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License) or [CDDL 1.0](https://opensource.org/licenses/CDDL-1.0) -1. [JavaServer Pages](https://jsp.java.net/) - This project provides a container independent implementation of JSP 2.1. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License) or [CDDL 1.0](http://opensource.org/licenses/CDDL-1.0) +1. [JavaServer Faces](https://javaserverfaces.java.net/) - JavaServer™ Faces technology simplifies building user interfaces for JavaServer applications. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License) or [CDDL 1.0](https://opensource.org/licenses/CDDL-1.0) +1. [JavaServer Pages](https://jsp.java.net/) - This project provides a container independent implementation of JSP 2.1. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License) or [CDDL 1.0](http://opensource.org/licenses/CDDL-1.0) 1. [Apache Cocoon](http://cocoon.apache.org/) Web development framework: separation of concerns, component-based. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Struts](http://struts.apache.org) Apache Struts is a free open-source framework for creating Java web applications. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Sling](http://sling.apache.org/) Innovative Web framework based on JCR and OSGi. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -150,12 +151,14 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Apache OODT](http://oodt.apache.org) Apache OODT software is component based, and offers a software architecture beyond simple science applications. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [VRaptor](https://github.com/caelum/vraptor4) VRaptor 4 delivers high productivity to your Java Web applications on top of CDI. VRaptor is an opensource MVC framework with a large developers and users community, [![GitHub stars](https://img.shields.io/github/stars/caelum/vraptor4.svg?style=social&label=Star&maxAge=2592000)](https://github.com/caelum/vraptor4). http://www.vraptor.org . License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Jooby](https://github.com/jooby-project/jooby) Scalable, fast and modular micro web framework for Java , [![GitHub stars](https://img.shields.io/github/stars/jooby-project/jooby.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cjooby-project/jooby). http://jooby.org/ . License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [CUBA Platform](https://github.com/cuba-platform/cuba) - High-level framework for developing enterprise applications with a rich web interface, based on Spring, EclipseLink and Vaadin. https://cuba-platform.com [![GitHub stars](https://img.shields.io/github/stars/cuba-platform/cuba.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cuba-platform/cuba). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Jersey](https://jersey.github.io/) - Jersey RESTful Web Services framework is open source, production quality, framework for developing RESTful Web Services in Java that provides support for JAX-RS APIs and serves as a JAX-RS (JSR 311 & JSR 339) Reference Implementation. #### Libraries for web development 1. [Tobie ua-parser](https://github.com/tobie/ua-parser) A multi-language port of Browserscope's user agent parser. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0)/[MIT](https://opensource.org/licenses/MIT)/Perl, [![GitHub stars](https://img.shields.io/github/stars/tobie/ua-parser.svg?style=social&label=Star&maxAge=2592000)](https://github.com/tobie/ua-parser). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Ghost Driver](https://github.com/detro/ghostdriver) Ghost Driver is an implementation of the Remote WebDriver Wire protocol, using PhantomJS as back-end. License: [BSD 2](https://en.wikipedia.org/wiki/BSD_licenses#2-clause_license_.28.22Simplified_BSD_License.22_or_.22FreeBSD_License.22.29), [![GitHub stars](https://img.shields.io/github/stars/detro/ghostdriver.svg?style=social&label=Star&maxAge=2592000)](https://github.com/detro/ghostdriver). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [B3log Solo](https://github.com/b3log/solo) - A blogging system written in Java, feel free to create your or your team own blog. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/b3log/solo.svg?style=social&label=Star&maxAge=2592000)](https://github.com/b3log/solo). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Nasher](https://github.com/ghaseminya/nasher-mvc-spring-security-blog-angular) - A Spring Project with spring security support with angular admin panel. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars] +1. [Nasher](https://github.com/ghaseminya/nasher-mvc-spring-security-blog-angular) - A Spring Project with spring security support with angular admin panel. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/ghaseminya/nasher-mvc-spring-security-blog-angular.svg?style=social&label=Star&maxAge=2592000)](https://github.com/ghaseminya/nasher-mvc-spring-security-blog-angular). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Baasbox](https://github.com/baasbox/baasbox) BaasBox is an Open Source project that aims to provide a backend for mobile and web apps. License: ?, [![GitHub stars](https://img.shields.io/github/stars/baasbox/baasbox.svg?style=social&label=Star&maxAge=2592000)](https://github.com/baasbox/baasbox). 1. [Kolorobot Spring MVC 4 Quickstart Maven Archetype](https://github.com/kolorobot/spring-mvc-quickstart-archetype) — The project is a Maven archetype for Spring MVC 4 web application. License: ?, [![GitHub stars](https://img.shields.io/github/stars/kolorobot/spring-mvc-quickstart-archetype.svg?style=social&label=Star&maxAge=2592000)](https://github.com/kolorobot/spring-mvc-quickstart-archetype). 1. [Gargl](https://github.com/jodoglevy/gargl) - Record web requests as they happen and turn them into reusable code in any programming language. Gargl - Generic API Recorder and Generator Lite. Pronounced "Gargle." Automate any website. Record web requests as they happen and turn them into reusable code in any programming language. License: [MIT](https://opensource.org/licenses/MIT) , [![GitHub stars](https://img.shields.io/github/stars/jodoglevy/gargl.svg?style=social&label=Star&maxAge=2592000)](https://github.com/jodoglevy/gargl). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -185,16 +188,18 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Apache Portals](http://portals.apache.org) The Apache Portals project provides various software products, including Apache Jetspeed-2, Apache Pluto, and Apache Portals Applications. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Roller](http://roller.apache.org/) Apache Roller is a full-featured, multi-user and group blog server suitable for blog sites large and small. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Chemistry](http://chemistry.apache.org/) Apache Chemistry provides open source implementations of the Content Management Interoperability Services (CMIS) specification. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Jease](http://jease.org/) Jease eases the development of content- & database-driven web-applications with Java. License: [GPL v3](https://www.gnu.org/licenses/gpl-3.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) ### 3. GUI 1. [JavaFX](http://www.oracle.com/technetwork/java/javase/overview/javafx-overview-2158620.html) - JavaFX is the next step in the evolution of Java as a rich client platform. It is designed to provide a lightweight, hardware-accelerated Java UI platform for enterprise business applications. License: [Oracle, proprietary](http://www.oracle.com/technetwork/java/javase/terms/license/index.html). ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [Scene Builder](http://www.oracle.com/technetwork/java/javase/downloads/javafxscenebuilder-info-2157684.html) - JavaFX Scene Builder is a visual layout tool that lets users quickly design JavaFX application user interfaces, without coding. Users can drag and drop UI components to a work area, modify their properties, apply style sheets, and the FXML code for the layout that they are creating is automatically generated in the background. The result is an FXML file that can then be combined with a Java project by binding the UI to the application’s logic. License: [Oracle, proprietary](http://www.oracle.com/technetwork/java/javase/terms/license/index.html). ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true), but see Gluon Scene Builder. -1. [Gluon Scene Builder] - Scene Builder is free and open source JavaFX Scene Builder, but is backed by Gluon. Commercial support offerings are available, including training and custom consultancy services. License: [BSD](https://www.google.pl/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&cad=rja&uact=8&ved=0ahUKEwjE5vqD-Y3MAhVH2ywKHe5BBXgQFggkMAI&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FBSD_licenses&usg=AFQjCNEADwPS776rXl5O9ofavy4xaW2yYw&sig2=FypX35BAWf3icOci5pQd3w&bvm=bv.119408272,d.bGg). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [SWT](http://www.eclipse.org/swt/) -SWT is an open source widget toolkit for Java designed to provide efficient, portable access to the user-interface facilities of the operating systems on which it is implemented. License: [Eclipse Public License v1.0](https://en.wikipedia.org/wiki/Eclipse_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Gluon Scene Builder](https://bitbucket.org/gluon-oss/scenebuilder) - Scene Builder is free and open source JavaFX Scene Builder, but is backed by Gluon. Commercial support offerings are available, including training and custom consultancy services. License: [BSD](https://www.google.pl/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&cad=rja&uact=8&ved=0ahUKEwjE5vqD-Y3MAhVH2ywKHe5BBXgQFggkMAI&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FBSD_licenses&usg=AFQjCNEADwPS776rXl5O9ofavy4xaW2yYw&sig2=FypX35BAWf3icOci5pQd3w&bvm=bv.119408272,d.bGg). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [SWT](http://www.eclipse.org/swt/) - SWT is an open source widget toolkit for Java designed to provide efficient, portable access to the user-interface facilities of the operating systems on which it is implemented. License: [Eclipse Public License v1.0](https://en.wikipedia.org/wiki/Eclipse_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Lanterna](https://code.google.com/archive/p/lanterna) - Lanterna is a Java library allowing you to write easy semi-graphical user interfaces in a text-only environment, very similar to the C library curses but with more functionality. License: [LGPL 2.1](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Gephi](https://github.com/gephi/gephi/) - Gephi is an award-winning open-source platform for visualizing and manipulating large graphs. It runs on Windows, Mac OS X and Linux. Localization is available in French, Spanish, Japanese, Russian, Brazilian Portuguese, Chinese and Czech. License: [GNU 3](https://en.wikipedia.org/wiki/GNU_General_Public_License) or [CDDL 1.0](http://opensource.org/licenses/CDDL-1.0). +1. [Gephi](https://github.com/gephi/gephi/) - Gephi is an award-winning open-source platform for visualizing and manipulating large graphs. It runs on Windows, Mac OS X and Linux. Localization is available in French, Spanish, Japanese, Russian, Brazilian Portuguese, Chinese and Czech. License: [GNU 3](https://en.wikipedia.org/wiki/GNU_General_Public_License) or [CDDL 1.0](http://opensource.org/licenses/CDDL-1.0). +1. [Codename One](https://www.codenameone.com/) - Open-source cross-platform app development solution for writing native apps for desktop, web & mobile in Java/Kotlin. (GPL + Classpath Exception) ### 4. Business [Up](#useful-java-links) @@ -203,7 +208,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Killbill](https://github.com/killbill/killbill) - Open-Source Subscription Billing & Payment Platform . License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/killbill/killbill.svg?style=social&label=Star&maxAge=2592000)](https://github.com/killbill/killbill). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Activiti](https://github.com/Activiti/Activiti) Activiti is a light-weight workflow and Business Process Management (BPM) Platform targeted at business people, developers and system admins. Its core is a super-fast and rock-solid BPMN 2 process engine for Java. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/Activiti/Activiti.svg?style=social&label=Star&maxAge=2592000)](https://github.com/Activiti/Activiti). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Liferay Portal](https://github.com/liferay/liferay-portal) Liferay Portal is an open source enterprise web platform for building business solutions that deliver immediate results and long-term value. Liferay Portal started out as a personal development project in 2000 and was open sourced in 2001. License: [GNU Lesser 2.1](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License), [![GitHub stars](https://img.shields.io/github/stars/liferay/liferay-portal.svg?style=social&label=Star&maxAge=2592000)](https://github.com/liferay/liferay-portal). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Broadleaf Commerce](https://github.com/BroadleafCommerce/BroadleafCommerce) - Broadleaf Commerce - Enterprise eCommerce framework based on Spring. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/BroadleafCommerce/BroadleafCommerce.svg?style=social&label=Star&maxAge=2592000)](https://github.com/BroadleafCommerce/BroadleafCommerce). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Broadleaf Commerce](https://github.com/BroadleafCommerce/BroadleafCommerce) - Broadleaf Commerce - Enterprise eCommerce framework based on Spring. License: [Broadleaf Fair Use](https://www.broadleafcommerce.com/license/community) , [![GitHub stars](https://img.shields.io/github/stars/BroadleafCommerce/BroadleafCommerce.svg?style=social&label=Star&maxAge=2592000)](https://github.com/BroadleafCommerce/BroadleafCommerce). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Droolsjbpm Drools](https://github.com/droolsjbpm/drools) Drools Expert is the rule engine and Drools Fusion does complex event processing (CEP). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/droolsjbpm/drools.svg?style=social&label=Star&maxAge=2592000)](https://github.com/droolsjbpm/drools). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Spring Roo](https://github.com/spring-projects/spring-roo) — Spring Roo is a next-generation rapid application development tool for Java developers. It focuses on higher productivity, stock-standard Java APIs, high usability, avoiding engineering trade-offs and facilitating easy Roo removal. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/spring-projects/spring-roo.svg?style=social&label=Star&maxAge=2592000)](https://github.com/spring-projects/spring-roo). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache OFBiz](http://ofbiz.apache.org) Apache OFBiz (The Apache Open For Business Project) is an open source enterprise automation software project. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -262,40 +267,43 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Dagger and Dagger2](https://github.com/square/dagger) A fast dependency injector for Android and Java. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-dagger). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/square/dagger.svg?style=social&label=Star&maxAge=2592000)](https://github.com/square/dagger), stackoverflow - [800 questions](http://stackoverflow.com/questions/tagged/dagger). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Google Guice](https://github.com/google/guice) - Guice (pronounced 'juice') is a lightweight dependency injection framework for Java 6 and above, brought to you by Google. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-guice). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0), [![GitHub stars](https://img.shields.io/github/stars/google/guice.svg?style=social&label=Star&maxAge=2592000)](https://github.com/google/guice). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache DeltaSpike](https://deltaspike.apache.org/) - DeltaSpike consists of a number of portable CDI extensions that provide useful features for Java application developers. We will also ensure true portability! We are testing DeltaSpike on different CDI implementations like Apache OpenWebBeans and JBoss Weld, and also on different Java EE servers like Apache Tomcat and TomEE, JBoss AS7, WildFly 8.x and 9.x, Oracle GlassFish 3.1+ and 4.x+, IBM WebSphere 8.x, Oracle WebLogic Server 12c, Jetty, and others. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [HK2](https://hk2.java.net) - A light-weight and dynamic dependency injection framework. [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License)/ [CDDL 1.0](http://opensource.org/licenses/CDDL-1.0). +1. [HK2](https://hk2.java.net) - A light-weight and dynamic dependency injection framework. [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License)/ [CDDL 1.0](http://opensource.org/licenses/CDDL-1.0). 1. [Eclipse AspectJ](https://eclipse.org/aspectj/) - AspectJ is a seamless aspect-oriented extension to the Java programming language, Java platform compatible, easy to learn and use. License: [Eclipse Public 1.0](https://www.eclipse.org/legal/epl-v10.html). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -#### Console and Command line +#### Console and Command line 1. [jcommander](https://github.com/cbeust/jcommander) Command line parsing framework for Java. http://jcommander.org/ License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/cbeust/jcommander.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cbeust/jcommander). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Jline](https://github.com/jline/jline2) JLine is a Java library for handling console input. It is similar in functionality to BSD editline and GNU readline. People familiar with the readline/editline capabilities for modern shells (such as bash and tcsh) will find most of the command editing features of JLine to be familiar. License: [BSD 4](https://en.wikipedia.org/wiki/BSD_licenses#4-clause_license_.28original_.22BSD_License.22.29), [![GitHub stars](https://img.shields.io/github/stars/jline/jline2.svg?style=social&label=Star&maxAge=2592000)](https://github.com/jline/jline2). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [args4j](http://args4j.kohsuke.org/) - args4j is a small Java class library that makes it easy to parse command line options/arguments in your CUI application. License: [MIT](https://opensource.org/licenses/MIT) ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [CRaSH](http://www.crashub.org) - The shell for the Java Platform Open source and open minde. License: [GNU Lesser 2.1](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License) ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [picocli](http://picocli.info) - Annotation based command line parser with strong typing for both options and positional args and support for git-like subcommands. Usage help with ANSI colors. Easily included as source to avoid external dependencies. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) #### Functional Programming *Libraries that facilitate functional programming.* 1. [Retrolambda](https://github.com/orfjackal/retrolambda) Backport of Java 8's lambda expressions to Java 7, 6 and 5. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/orfjackal/retrolambda.svg?style=social&label=Star&maxAge=2592000)](https://github.com/orfjackal/retrolambda). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Javaslang](https://github.com/javaslang/javaslang) - Javaslang core is a functional library for Java 8+. It helps to reduce the amount of code and to increase the robustness. A first step towards functional programming is to start thinking in immutable values. Javaslang provides immutable collections and the necessary functions and control structures to operate on these values, [![GitHub stars](https://img.shields.io/github/stars/javaslang/javaslang.svg?style=social&label=Star&maxAge=2592000)](https://github.com/javaslang/javaslang). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Vavr](https://github.com/vavr-io/vavr) - Vavr (formerly called Javaslang) is a functional library for Java 8+. It helps to reduce the amount of code and to increase the robustness. A first step towards functional programming is to start thinking in immutable values. Vavr provides immutable collections and the necessary functions and control structures to operate on these values, [![GitHub stars](https://img.shields.io/github/stars/vavr-io/vavr.svg?style=social&label=Star&maxAge=2592000)](https://github.com/vavr-io/vavr). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [jOOλ](https://github.com/jOOQ/jOOL) - jOOλ - The Missing Parts in Java 8 jOOλ improves the JDK libraries in areas where the Expert Group's focus was elsewhere. It adds tuple support, function support, and a lot of additional functionality around sequential Streams, [![GitHub stars](https://img.shields.io/github/stars/jOOQ/jOOL.svg?style=social&label=Star&maxAge=2592000)](https://github.com/jOOQ/jOOL). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Functional Java](https://github.com/functionaljava/functionaljava) - Functional Java is an open source library facilitating functional programming in Java. The library implements numerous basic and advanced programming abstractions that assist composition oriented development. Functional Java also serves as a platform for learning functional programming concepts by introducing these concepts using a familiar language. http://www.functionaljava.org License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29), [![GitHub stars](https://img.shields.io/github/stars/functionaljava/functionaljava.svg?style=social&label=Star&maxAge=2592000)](https://github.com/functionaljava/functionaljava). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Cyclops react](https://github.com/aol/cyclops-react) - A comprehensive functional reactive platform for JDK8. Future & functional based programming via JDK compatible extensions for Java 8 and above, [![GitHub stars](https://img.shields.io/github/stars/aol/cyclops-react.svg?style=social&label=Star&maxAge=2592000)](https://github.com/aol/cyclops-react). License: [MIT](https://opensource.org/licenses/MIT) ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Fugue](https://bitbucket.org/atlassian/fugue) -Java 8 has standardised some of the basic function interfaces, but does not include quite a few more tools that a functional programmer may expect to be available. This library attempts to fill in some of the gaps when using Java 8. In particular it provides Option and Either types as well as a Pair. There also additional helper classes for common Function, Supplier, and Iterable operations. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [TotallyLazy](https://github.com/bodar/totallylazy/) Another functional library for Java , License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0), [![GitHub stars](https://img.shields.io/github/stars/bodar/totallylazy.svg?style=social&label=Star&maxAge=2592000)](https://github.com/bodar/totallylazy/). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [derive4j](https://github.com/derive4j/derive4j) - Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching, morphisms, (near future: optics and typeclasses), [![GitHub stars](https://img.shields.io/github/stars/derive4j/derive4j.svg?style=social&label=Star&maxAge=2592000)](https://github.com/derive4j/derive4j). License: [GNU 3](https://en.wikipedia.org/wiki/GNU_General_Public_License). +1. [derive4j](https://github.com/derive4j/derive4j) - Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching, morphisms, (near future: optics and typeclasses), [![GitHub stars](https://img.shields.io/github/stars/derive4j/derive4j.svg?style=social&label=Star&maxAge=2592000)](https://github.com/derive4j/derive4j). License: [GNU 3](https://en.wikipedia.org/wiki/GNU_General_Public_License). #### Reactive Programming *Libraries for developing reactive applications.* 1. [ReactiveX RxJava](https://github.com/ReactiveX/RxJava) RxJava – Reactive Extensions for the JVM – a library for composing asynchronous and event-based programs using observable sequences for the Java VM. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/ReactiveX/RxJava.svg?style=social&label=Star&maxAge=2592000)](https://github.com/ReactiveX/RxJava), stackoverflow - [1814 questions](http://stackoverflow.com/search?q=RxJava). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Eclipse Vert.x](https://github.com/eclipse/vert.x) Vert.x is a tool-kit for building reactive applications on the JVM . License:  Eclipse Public 1 / [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/eclipse/vert.x.svg?style=social&label=Star&maxAge=2592000)](https://github.com/eclipse/vert.x), stackoverflow - [728 questions](http://stackoverflow.com/search?q=Vert.x). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Reactive Streams](https://github.com/reactive-streams/reactive-streams-jvm/) - The purpose of Reactive Streams is to provide a standard for asynchronous stream processing with non-blocking backpressure. License: [Public Domain (CC0)](https://en.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D0%B8_%D0%B8_%D0%B8%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D1%8B_Creative_Commons#CC0), [![GitHub stars](https://img.shields.io/github/stars/reactive-streams/reactive-streams-jvm.svg?style=social&label=Star&maxAge=2592000)](https://github.com/reactive-streams/reactive-streams-jvm/). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Reactive Streams](https://github.com/reactive-streams/reactive-streams-jvm/) - The purpose of Reactive Streams is to provide a standard for asynchronous stream processing with non-blocking backpressure. License: [Public Domain (CC0)](http://creativecommons.org/publicdomain/zero/1.0/), [![GitHub stars](https://img.shields.io/github/stars/reactive-streams/reactive-streams-jvm.svg?style=social&label=Star&maxAge=2592000)](https://github.com/reactive-streams/reactive-streams-jvm/). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Reactor](http://projectreactor.io/) - Reactor is a second-generation Reactive library for building non-blocking applications on the JVM based on the Reactive Streams Specification. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [RSocket](http://rsocket.io) - RSocket is a binary protocol for use on byte stream transports such as TCP, WebSockets, and Aeron. License: [Apache 2](https://github.com/rsocket/rsocket/blob/master/LICENSE),[![GitHub stars](https://img.shields.io/github/stars/rsocket/rsocket?style=social)](https://github.com/rsocket/rsocket) ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) #### Security and Authentication *Libraries that handle security, authentication, authorization or session management.* [Up](#useful-java-links) +1. [OTP-Java](https://github.com/BastiaanJansen/OTP-Java) - A small one-time password generator library according to RFC 4226 (HOTP) and RFC 6238 (TOTP). [MIT](https://opensource.org/licenses/MIT) 1. [Scribe Java](https://github.com/scribejava/scribejava) - Simple OAuth library for Java. License: [MIT](https://opensource.org/licenses/MIT) , [![GitHub stars](https://img.shields.io/github/stars/scribejava/scribejava.svg?style=social&label=Star&maxAge=2592000)](https://github.com/scribejava/scribejava). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Spring security oauth](https://github.com/spring-projects/spring-security-oauth) - Support for adding OAuth1(a) and OAuth2 features (consumer and provider) for Spring web applications. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/spring-projects/spring-security-oauth.svg?style=social&label=Star&maxAge=2592000)](https://github.com/spring-projects/spring-security-oauth). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Jasig CAS (Central Authentication Service)](https://github.com/Jasig/cas) - Apereo CAS - Single Sign On for the Web.The Central Authentication Service (CAS) is the standard mechanism by which web applications should authenticate users. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/Jasig/cas.svg?style=social&label=Star&maxAge=2592000)](https://github.com/Jasig/cas). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -308,9 +316,10 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Keycloak](http://keycloak.jboss.org/) - Integrated SSO and IDM for browser apps and RESTful web services. Built on top of the OAuth 2.0, Open ID Connect, JSON Web Token (JWT) and SAML 2.0 specifications. Keycloak has tight integration with a variety of platforms and has a HTTP security proxy service where we don't have tight integration. Options are to deploy it with an existing app server, as a black-box appliance, or as an Openshift cloud service and/or cartridge. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [PicketLink](http://picketlink.org/) - Simplified Security and Identity management for Java Applications PicketLink is an umbrella project for security and identity management for Java Applications. It is licensed under a friendly Apache v2 license. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Santuario](http://santuario.apache.org) Library implementing XML Digital Signature Specification & XML Encryption Specification. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Apache Oltu](https://oltu.apache.org/) Apache Oltu is an OAuth protocol implementation in Java. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Apache Oltu](https://oltu.apache.org/) ( *has retired* ) Apache Oltu is an OAuth protocol implementation in Java. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Syncope](http://syncope.apache.org) Apache Syncope is an Open Source system for managing digital identities in enterprise environments. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) - +1. [JObfuscator](https://www.pelock.com/products/jobfuscator) - JObfuscator is a source code obfuscator for the Java language to protect Java source code & algorithms from hacking, cracking, reverse engineering, decompilation & technology theft. License: ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [OpenAM](https://www.pelock.com/products/jobfuscator) - Access management solution that includes authentication, SSO, authorization, federation, entitlements and web services security. License: [CDDL](https://opensource.org/license/cddl-1-0), [![GitHub stars](https://img.shields.io/github/stars/OpenIdentityPlatform/OpenAM.svg?style=social&label=Star&maxAge=2592000)](https://github.com/OpenIdentityPlatform/OpenAM). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) #### High Performance *Everything about high performance computation, from collections to specific libraries.* @@ -325,6 +334,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [JCTools](https://github.com/JCTools/JCTools) - Concurrency tools currently missing from the JDK. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Koloboke](https://github.com/OpenHFT/Koloboke) - Hash sets and hash maps. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Trove](http://trove.starlight-systems.com/) - Primitive collections. License: [GNU Lesser 2.1](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [JUnion](https://github.com/TehLeo/junion) - Delivers struct types for Java programming language. 64 bit addressable struct arrays. [https://tehleo.github.io/junion/](https://tehleo.github.io/junion/) License: [License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) #### Serialization and I/O @@ -355,7 +365,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [tinylog](http://www.tinylog.org/) - Lightweight logging framework with static logger class. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -#### Bean Mapping and Validation +#### Bean Mapping and Validation *Frameworks that ease bean mapping or bean validation.* [Up](#useful-java-links) @@ -365,6 +375,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Orika](https://github.com/orika-mapper/orika) - Simpler, better and faster Java bean mapping framework. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/1.6-usefull-libraries/bean_mapping/orika). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0), [![GitHub stars](https://img.shields.io/github/stars/orika-mapper/orika.svg?style=social&label=Star&maxAge=2592000)](https://github.com/orika-mapper/orika). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Selma](https://github.com/xebia-france/selma) - Stupid Simple Statically Linked Mapper. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/1.6-usefull-libraries/bean_mapping/selma). Selma Java bean mapping that compiles. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0), [![GitHub stars](https://img.shields.io/github/stars/xebia-france/selma.svg?style=social&label=Star&maxAge=2592000)](https://github.com/xebia-france/selma). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache BVal](http://bval.apache.org/) Apache BVal delivers an implementation of the Java Bean Validation (JSR303) Specification which is TCK compliant, works on Java SE 5 or later. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [OVal](http://oval.sourceforge.net/) – is a pragmatic and extensible validation framework for any kind of Java objects. Not JSR303/JSR380 compliant but supports Bean Validation constraints. It's pretty old flexible and reliable. License: [EPL v2.0](https://www.eclipse.org/legal/epl-2.0). [![GitHub stars](https://img.shields.io/github/stars/sebthom/oval.svg?style=social&label=Star&maxAge=2592000)](https://github.com/sebthom/oval) ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -392,7 +403,6 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Byteman](http://byteman.jboss.org/) - Byteman is a tool which makes it easy to trace, monitor and test the behaviour of Java application and JDK runtime code. It injects Java code into your application methods or into Java runtime methods without the need for you to recompile, repackage or even redeploy your application. License: [LGPL 2.1](http://www.gnu.org/licenses/old-licenses/lgpl-2.1.ru.html). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Javassist](http://jboss-javassist.github.io/javassist/) -Javassist (Java Programming Assistant) makes Java bytecode manipulation simple. It is a class library for editing bytecodes in Java; it enables Java programs to define a new class at runtime and to modify a class file when the JVM loads it. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) or [LGPL or later 2.1](http://www.gnu.org/licenses/old-licenses/lgpl-2.1.ru.html) or [Mozilla Public License 1.1.](https://en.wikipedia.org/wiki/Mozilla_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [ADT4J](https://github.com/sviperll/adt4j) - This library implements Algebraic Data Types for Java. ADT4J provides annotation processor for @GenerateValueClassForVisitor annotation. ADT4J generates new class for each @GenerateValueClassForVisitor annotation. License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Auto](https://github.com/google/auto) - A collection of source code generators for Java. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [JHipster](https://github.com/jhipster/generator-jhipster) - Hipster stack for Java developers. Spring Boot + AngularJS in one handy generator. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [cglib](https://github.com/cglib/cglib) - cglib - Byte Code Generation Library is high level API to generate and transform Java byte code. It is used by AOP, testing, data access frameworks to generate dynamic proxy objects and intercept field access. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -410,8 +420,8 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Hazelcast](http://hazelcast.org/) - The Leading Open Source In-Memory Data Grid: Distributed Computing, Simplified. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Netflix Hystrix](https://github.com/Netflix/Hystrix) - Hystrix is a latency and fault tolerance library designed to isolate points of access to remote systems, services and 3rd party libraries, stop cascading failure and enable resilience in complex distributed systems where failure is inevitable, [![GitHub stars](https://img.shields.io/github/stars/Netflix/Hystrix.svg?style=social&label=Star&maxAge=2592000)](https://github.com/Netflix/Hystrix). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [JGroups](http://www.jgroups.org/) - JGroups is a toolkit for reliable messaging. It can be used to create clusters whose nodes can send messages to each other. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Orbit](http://orbit.bioware.com/) - Orbit is a modern framework for JVM languages that makes it easier to build and maintain distributed and scalable online services. It was developed by BioWare, a division of Electronic Arts. License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Quasar](http://www.paralleluniverse.co/quasar/) - Quasar is an open source JVM library that greatly simplifies the creation of highly concurrent software that is very easy to write and reason about, performant, and fault tolerant. License: [Eclipse Public License v1.0](https://en.wikipedia.org/wiki/Eclipse_Public_License) or [LGPL 3.0](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Orbit](https://github.com/orbit-legacy/orbit1) - Orbit is a modern framework for JVM languages that makes it easier to build and maintain distributed and scalable online services. It was developed by BioWare, a division of Electronic Arts. License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Quasar](https://docs.paralleluniverse.co/quasar/) - Quasar is an open source JVM library that greatly simplifies the creation of highly concurrent software that is very easy to write and reason about, performant, and fault tolerant. License: [Eclipse Public License v1.0](https://en.wikipedia.org/wiki/Eclipse_Public_License) or [LGPL 3.0](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Storm contrib](https://github.com/nathanmarz/storm-contrib) A collection of spouts, bolts, serializers, DSLs, and other goodies to use with Storm. License: [Eclipse Public 1.0](https://www.eclipse.org/legal/epl-v10.html), [![GitHub stars](https://img.shields.io/github/stars/nathanmarz/storm-contrib.svg?style=social&label=Star&maxAge=2592000)](https://github.com/nathanmarz/storm-contrib). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [JADE](http://jade.tilab.com/) - JADE (Java Agent DEvelopment Framework) is a software Framework fully implemented in the Java language. It simplifies the implementation of multi-agent systems through a middle-ware that complies with the FIPA specifications and through a set of graphical tools that support the debugging and deployment phases. License: [GNU Lesser 2.0](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache River](http://river.apache.org) Apache River software provides a standards-compilani JINI service. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -471,6 +481,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Apache Derby](https://db.apache.org/derby/) - Apache Derby, an Apache DB subproject, is an open source relational database implemented entirely in Java. Derby provides an embedded JDBC driver that lets you embed Derby in any Java-based solution. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Empire-db](http://empire-db.apache.org/) Apache Empire-db is a lightweight relational database abstraction layer and data persistence component. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Ignite](http://ignite.apache.org) Apache Ignite is an In-Memory Data Fabric providing in-memory data caching, partitioning, processing, and querying components. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Tarantool](https://github.com/tarantool/tarantool) — is an open-source NoSQL database management system and Lua application server. It maintains databases in memory and ensures crash resistance with write-ahead logging. It includes a Lua interpreter and interactive console but also accepts connections from programs in several other languages. License: [BSD licenses](https://en.wikipedia.org/wiki/BSD_licenses). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) #### **Distributed Databases.** *Databases in a distributed system that appear to applications as a single data source.* @@ -535,7 +546,8 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [FlexyPool](https://github.com/vladmihalcea/flexy-pool) - FlexyPool adds metrics and failover strategies to a given Connection Pool, allowing it to resize on demand. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [LightAdmin](http://lightadmin.org/) - Pluggable data administration UI library for Java web applications. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Jaybird JCA/JDBC driver](https://github.com/FirebirdSQL/jaybird) - JCA-JDBC Driver for Firebird database. http://www.firebirdsql.org/en/jdbc-driver/, [![GitHub stars](https://img.shields.io/github/stars/FirebirdSQL/jaybird.svg?style=social&label=Star&maxAge=2592000)](https://github.com/FirebirdSQL/jaybird). License: [GNU Lesser 2.1](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [dbeaver](https://github.com/serge-rider/dbeaver) - Free universal database manager and SQL client. http://dbeaver.jkiss.org. , [![GitHub stars](https://img.shields.io/github/stars/serge-rider/dbeaver.svg?style=social&label=Star&maxAge=2592000)](https://github.com/serge-rider/dbeaver). License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) +1. [dbeaver](https://github.com/serge-rider/dbeaver) - Free universal database manager and SQL client. http://dbeaver.jkiss.org. , [![GitHub stars](https://img.shields.io/github/stars/serge-rider/dbeaver.svg?style=social&label=Star&maxAge=2592000)](https://github.com/serge-rider/dbeaver). License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) +1. [tarantool-java](https://github.com/tarantool/tarantool-java) A Java client for Tarantool. License: [BSD licenses](https://en.wikipedia.org/wiki/BSD_licenses). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) ### 5. ORM *APIs which handle the persistence of objects.* @@ -572,7 +584,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Suro: Netflix's Data Pipeline](https://github.com/Netflix/suro) — Suro: Netflix's Data Pipeline. Suro is a data pipeline service for collecting, aggregating, and dispatching large volume of application events including log data. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/Netflix/suro.svg?style=social&label=Star&maxAge=2592000)](https://github.com/Netflix/suro). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache UIMA](http://uima.apache.org) Annotator components and a scalable integration and deployment framework for Unstructured Information analysis. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -### 7. Big data +### 7. Big data [Up](#useful-java-links) #### Frameworks and libraries for big data @@ -684,7 +696,7 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach 1. [Stanfordnlp CoreNLP](https://github.com/stanfordnlp/CoreNLP) Stanford CoreNLP provides a set of natural language analysis tools written in Java. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/2.8-natural-language-processing/stanford-core-nlp). License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License), [![GitHub stars](https://img.shields.io/github/stars/stanfordnlp/CoreNLP.svg?style=social&label=Star&maxAge=2592000)](https://github.com/stanfordnlp/CoreNLP). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) 1. [Apache OpenNLP](https://opennlp.apache.org/) - The Apache OpenNLP library is a machine learning based toolkit for the processing of natural language text. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/2.8-natural-language-processing/opennlp). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [LingPipe](http://alias-i.com/lingpipe/) - LingPipe is tool kit for processing text using computational linguistics. License: [AGPL](https://www.gnu.org/licenses/agpl-3.0.html) or ***License: proprietary***. ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) or ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) +1. [LingPipe](http://alias-i.com/lingpipe/) - LingPipe is tool kit for processing text using computational linguistics. License: [AGPL](https://www.gnu.org/licenses/agpl-3.0.html) or ***License: proprietary***. ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) or ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [Mallet](http://mallet.cs.umass.edu/) - MALLET is a Java-based package for statistical natural language processing, document classification, clustering, topic modeling, information extraction, and other machine learning applications to text. License: [Eclipse Public License v1.0](https://en.wikipedia.org/wiki/Eclipse_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Twitter Text Libraries](https://github.com/twitter/twitter-text) - This repo is a collection of libraries and conformance tests to standardize parsing of tweet text. It synchronizes development, testing, creating issues, and pull requests for twitter-text's implementations and specification. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [NLP4J](https://github.com/emorynlp/nlp4j) The NLP4J project (formerly known as ClearNLP) provides a NLP toolkit for JVM languages. This project is currently developed by the NLP Research Group at Emory University. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -692,11 +704,12 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach 1. [Z-MERT](http://cs.jhu.edu/~ozaidan/zmert/) Z-MERT is a software tool for minimum error rate training of machine translation systems. License: [GNU Lesser General Public License (LGPL)](http://www.gnu.org/licenses/lgpl-3.0.en.html). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [ClearTK](https://github.com/ClearTK/cleartk) - ClearTK is a framework for developing machine learning and natural language processing components within the Apache Unstructured Information Management Architecture, http://cleartk.github.io/cleartk/ . [![GitHub stars](https://img.shields.io/github/stars/ClearTK/cleartk.svg?style=social&label=Star&maxAge=2592000)](https://github.com/ClearTK/cleartk) License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache cTAKES](http://ctakes.apache.org/) - Apache cTAKES™ is a natural language processing system for extraction of information from electronic medical record clinical free-text. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [The Stanford Natural Language Processing Group](http://nlp.stanford.edu/software/) - A Natural Language Processing Java software tools. Subproject: [Stanford Parser](http://nlp.stanford.edu/software/lex-parser.html) - A statistical parser, [Stanford POS Tagger](http://nlp.stanford.edu/software/tagger.html), [Stanford Named Entity Recognizer](http://nlp.stanford.edu/software/CRF-NER.html), [RegexNER](http://nlp.stanford.edu/software/regexner.html), +1. [The Stanford Natural Language Processing Group](http://nlp.stanford.edu/software/) - A Natural Language Processing Java software tools. Subproject: [Stanford Parser](http://nlp.stanford.edu/software/lex-parser.html) - A statistical parser, [Stanford POS Tagger](http://nlp.stanford.edu/software/tagger.html), [Stanford Named Entity Recognizer](http://nlp.stanford.edu/software/CRF-NER.html), [RegexNER](http://nlp.stanford.edu/software/regexner.html), [Word Segmenter](http://nlp.stanford.edu/software/segmenter.html),[Classifier](http://nlp.stanford.edu/software/classifier.html),[EnglishTokenizer](http://nlp.stanford.edu/software/tokenizer.html),[TokensRegex](http://nlp.stanford.edu/software/tokensregex.html),[Temporal Tagger](http://nlp.stanford.edu/software/sutime.html),[Pattern-based Information Extraction and Diagnostics](http://nlp.stanford.edu/software/patternslearning.html),[Stanford Relation Extractor](http://nlp.stanford.edu/software/relationExtractor.html). License: [GNU 2/3](https://en.wikipedia.org/wiki/GNU_General_Public_License). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) 1. [Apache Tika](http://tika.apache.org) The Apache Tika toolkit detects and extracts metadata and structured text content from various documents using existing parser libraries. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [CMU Sphinx](http://cmusphinx.sourceforge.net/) - Open Source Speech Recognition Toolkit. License: [BSD 2](https://en.wikipedia.org/wiki/BSD_licenses#2-clause_license_.28.22Simplified_BSD_License.22_or_.22FreeBSD_License.22.29). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [ARK Twitter NLP](https://github.com/brendano/ark-tweet-nlp) - CMU ARK Twitter Part-of-Speech Tagger. http://www.ark.cs.cmu.edu/TweetNLP/ License: [GNU 2/3](https://en.wikipedia.org/wiki/GNU_General_Public_License), [![GitHub stars](https://img.shields.io/github/stars/brendano/ark-tweet-nlp.svg?style=social&label=Star&maxAge=2592000)](https://github.com/brendano/ark-tweet-nlp). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) +1. [lc4j](https://github.com/olivomarco/lc4j) - Language Categorization for Java: an Open Source library for finding out in which language a text has been written. License: [MIT](https://en.wikipedia.org/wiki/MIT_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) ## III. Network and Integration @@ -705,16 +718,16 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach [Up](#useful-java-links) 1. [Wildfly](https://github.com/wildfly/wildfly) - Formerly known as JBoss and developed by Red Hat with extensive Java EE support. License: [GNU Lesser 2.1](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License), [![GitHub stars](https://img.shields.io/github/stars/wildfly/wildfly.svg?style=social&label=Star&maxAge=2592000)](https://github.com/wildfly/wildfly). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Undertow io Undertow](https://github.com/undertow-io/undertow) - High performance non-blocking webserver. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/undertow-io/undertow.svg?style=social&label=Star&maxAge=2592000)](https://github.com/undertow-io/undertow). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Undertow](https://github.com/undertow-io/undertow) - High performance non-blocking webserver. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/undertow-io/undertow.svg?style=social&label=Star&maxAge=2592000)](https://github.com/undertow-io/undertow). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Tomcat](https://github.com/apache/tomcat) - Robust all-round server for Servlet and JSP. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/apache/tomcat.svg?style=social&label=Star&maxAge=2592000)](https://github.com/apache/tomcat). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Nginx clojure](https://github.com/nginx-clojure/nginx-clojure) - Nginx module for embedding Clojure or Java or Groovy programs, typically those Ring based handlers. License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29) , [![GitHub stars](https://img.shields.io/github/stars/nginx-clojure/nginx-clojure.svg?style=social&label=Star&maxAge=2592000)](https://github.com/nginx-clojure/nginx-clojure). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Eclipse Jetty.project](https://github.com/eclipse/jetty.project) - Lightweight, small server, often embedded in projects. License: [Eclipse Public 1.0](https://www.eclipse.org/legal/epl-v10.html) / [Apache 2](http://www.apache.org/licenses/LICENSE-2.0).0, [![GitHub stars](https://img.shields.io/github/stars/eclipse/jetty.project.svg?style=social&label=Star&maxAge=2592000)](https://github.com/eclipse/jetty.project). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Jetty](https://github.com/eclipse/jetty.project) - Lightweight, small server, often embedded in projects. License: [Eclipse Public 1.0](https://www.eclipse.org/legal/epl-v10.html) / [Apache 2](http://www.apache.org/licenses/LICENSE-2.0).0, [![GitHub stars](https://img.shields.io/github/stars/eclipse/jetty.project.svg?style=social&label=Star&maxAge=2592000)](https://github.com/eclipse/jetty.project). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache TomEE](http://tomee.apache.org/) - Tomcat plus Java EE. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [WebSphere Liberty](https://developer.ibm.com/wasdev/) - Lightweight, modular server developed by IBM. ***License: proprietary*** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) -1. [GlassFish](https://glassfish.java.net/) - GlassFish - World's first Java EE 7 Application Server. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License) Or [CDDL 1.0](http://opensource.org/licenses/CDDL-1.0). +1. [GlassFish](https://glassfish.java.net/) - GlassFish - World's first Java EE 7 Application Server. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License) Or [CDDL 1.0](http://opensource.org/licenses/CDDL-1.0). 1. [Apache Geronimo](http://geronimo.apache.org/) Java EE Application Server. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache James](http://james.apache.org) The Apache Java Enterprise Mail Server (a.k.a. Apache James) is a 100% pure Java SMTP and POP3 Mail server and NNTP News server. We have designed James to be a complete and portable enterprise mail engine solution based on currently available open protocols. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) - +1. [Payara](https://github.com/payara/Payara) Payara Server is an open source middleware platform that supports reliable and secure deployments of Java EE (Jakarta EE) and MicroProfile applications in any environment: on premise, in the cloud or hybrid.[CDDL 1.1](https://github.com/payara/Payara/blob/master/LICENSE.txt) ### 2. Networking *Libraries for network programming.* @@ -728,7 +741,7 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach 1. [EsotericSoftware Kryonet](https://github.com/EsotericSoftware/kryonet) TCP/UDP client/server library for Java, based on Kryo. License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29), [![GitHub stars](https://img.shields.io/github/stars/EsotericSoftware/kryonet.svg?style=social&label=Star&maxAge=2592000)](https://github.com/EsotericSoftware/kryonet). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Async Http Client](https://github.com/AsyncHttpClient/async-http-client) - Asynchronous HTTP and WebSocket client library. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Comsat](https://github.com/puniverse/comsat) - Integrates standard Java web-related APIs with Quasar fibers and actors. License: [Eclipse Public 1.0](https://www.eclipse.org/legal/epl-v10.html). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Grizzly](https://grizzly.java.net/) - NIO framework. Used as a network layer in Glassfish. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License) and [CDDL 1.1](https://en.wikipedia.org/wiki/CDDL). +1. [Grizzly](https://grizzly.java.net/) - NIO framework. Used as a network layer in Glassfish. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License) and [CDDL 1.1](https://en.wikipedia.org/wiki/CDDL). 1. [OkHttp](http://square.github.io/okhttp/) - HTTP+SPDY client. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Undertow](http://undertow.io/) - Web server providing both blocking and non-blocking API’s based on NIO. Used as a network layer in WildFly. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache MINA](http://mina.apache.org/) Apache MINA is a network application framework which helps users develop high performance and high scalability network applications easily. It provides an abstract, event-driven, asynchronous API over various transports such as TCP/IP and UDP/IP via Java NIO. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -882,13 +895,13 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach 1. [Apache CloudStack](http://cloudstack.apache.org/) Apache CloudStack is an IaaS (“Infrastracture as a Service”) cloud orchestration platform. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Stratos](http://stratos.apache.org) Apache Stratos is a highly-extensible Platform-as-a-Service (PaaS) framework that helps run Apache Tomcat, PHP, and MySQL applications and can be extended to support many more environments on all major cloud infrastructures. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Airavata](http://airavata.apache.org/) Apache Airavata is a software framework for executing and managing computational jobs and workflows on distributed computing resources including local clusters, supercomputers, national grids, academic and commercial clouds. Airavata is dominantly used to build Web-based science gateways and assist to compose, manage, execute, and monitor large scale applications (wrapped as Web based services) and workflows composed of these services. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) - -## 13. Cluster Management +1. [Quarkus](https://github.com/quarkusio/quarkus) Quarkus is a Cloud Native, (Linux) Container First framework for writing Java applications. [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://github.com/quarkusio/quarkus/blob/master/LICENSE.txt) +### 13. Cluster Management *Frameworks which can dynamically manage applications inside of a cluster.* [Up](#useful-java-links) 1. [Apache Aurora](http://aurora.apache.org/) - Apache Aurora is a Mesos framework for long-running services and cron jobs. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Singularity](http://getsingularity.com/) - Singularity is a Mesos framework that makes deployment and operations easy. It supports web services, background workers, scheduled jobs, and one-off tasks. License: **?**. +1. [Singularity](http://getsingularity.com/) - Singularity is a Mesos framework that makes deployment and operations easy. It supports web services, background workers, scheduled jobs, and one-off tasks. License: **?**. 1. [Apache Helix](http://helix.apache.org/) A cluster management framework for partitioned and replicated distributed resources. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Airavata](http://airavata.apache.org/) Apache Airavata is a software framework for executing and managing computational jobs and workflows on distributed computing resources including local clusters, supercomputers, national grids, academic and commercial clouds. Airavata is dominantly used to build Web-based science gateways and assist to compose, manage, execute, and monitor large scale applications (wrapped as Web based services) and workflows composed of these services. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -937,7 +950,7 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach 1. [Geo](https://github.com/davidmoten/geo/) - GeoHash utilities in Java. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Geotoolkit.org](http://www.geotoolkit.org/) - Library for developing geospatial applications. Built on top of the Apache SIS project. License: [GNU Lesser 2.1](http://www.geotoolkit.org/license.html). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [GeoTools](http://geotools.org/) - Library that provides tools for geospatial data. License: [GNU Lesser 2.1](http://www.gnu.org/licenses/lgpl-2.1.html). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [H2GIS](http://www.h2gis.org/) - A spatial extension of the H2 database. License: [GPL 3](http://www.gnu.org/copyleft/gpl.html). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) +1. [H2GIS](http://www.h2gis.org/) - A spatial extension of the H2 database. License: [GPL 3](http://www.gnu.org/copyleft/gpl.html). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) 1. [Jgeohash](http://astrapi69.github.io/jgeohash/) - Library that can assist Java developers in using the GeoHash algorithm. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [JTS Topology Suite](http://www.vividsolutions.com/jts/JTSHome.htm) - An API of 2D spatial predicates and functions. License: [GNU Lesser 3](http://www.gnu.org/copyleft/lesser.html). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Mapsforge](https://github.com/mapsforge/mapsforge/) - Software for the rendering of maps based on OpenStreetMap data. License: [GNU Lesser 3](http://www.gnu.org/copyleft/lesser.html). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -953,17 +966,19 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach *Tools that test from model to the view.* [Up](#useful-java-links) +1. [ArchUnit](https://github.com/TNG/ArchUnit) is a free, simple and extensible library for checking the architecture of your Java code. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/TNG/ArchUnit.svg?style=social&label=Star&maxAge=2592000)](https://github.com/TNG/ArchUnit). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Junit](https://github.com/junit-team/junit4) Common testing framework. License:  [Eclipse Public 1.0](https://www.eclipse.org/legal/epl-v10.html) , [![GitHub stars](https://img.shields.io/github/stars/junit-team/junit4.svg?style=social&label=Star&maxAge=2592000)](https://github.com/junit-team/junit4). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Mockito](https://github.com/mockito/mockito) Creation of test double objects in automated unit tests for the purpose of TDD or BDD. License: [MIT](https://opensource.org/licenses/MIT) , [![GitHub stars](https://img.shields.io/github/stars/mockito/mockito.svg?style=social&label=Star&maxAge=2592000)](https://github.com/mockito/mockito). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Selenium](https://github.com/SeleniumHQ/selenium) Portable software testing framework for web applications. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/SeleniumHQ/selenium.svg?style=social&label=Star&maxAge=2592000)](https://github.com/SeleniumHQ/selenium). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Cucumber jvm](https://github.com/cucumber/cucumber-jvm) Cucumber-JVM is a pure Java implementation of Cucumber that supports the most popular programming languages for the JVM. License: [MIT](https://opensource.org/licenses/MIT) , [![GitHub stars](https://img.shields.io/github/stars/cucumber/cucumber-jvm.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cucumber/cucumber-jvm). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Cucumber jvm](https://github.com/cucumber/cucumber-jvm) - BDD testing framework. Cucumber-JVM is a pure Java implementation of Cucumber that supports the most popular programming languages for the JVM. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/4.1-testing/cucumber). License: [MIT](https://opensource.org/licenses/MIT), [![GitHub stars](https://img.shields.io/github/stars/cucumber/cucumber-jvm.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cucumber/cucumber-jvm). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [JBehave](https://github.com/jbehave/jbehave-core) - extensively configurable framework for Behavior-Driven Development (BDD). BDD is an evolution of test-driven development (TDD) and acceptance-test driven design, and is intended to make these practices more accessible and intuitive to newcomers and experts alike. License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29), [![GitHub stars](https://img.shields.io/github/stars/jbehave/jbehave-core.svg?style=social&label=Star&maxAge=2592000)](https://github.com/jbehave/jbehave-core). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Spock](https://github.com/spockframework/spock) JUnit-compatible framework featuring an expressive Groovy-derived specification language. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/spockframework/spock.svg?style=social&label=Star&maxAge=2592000)](https://github.com/spockframework/spock). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Google Firing range](https://github.com/google/firing-range) Firing Range is a test bed for web application security scanners, providing synthetic, wide coverage for an array of vulnerabilities. It can be deployed as a Google App Engine application. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/google/firing-range.svg?style=social&label=Star&maxAge=2592000)](https://github.com/google/firing-range). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Fitnesse](https://github.com/unclebob/fitnesse) FitNesse is the fully integrated stand-alone acceptance testing framework and wiki.. License: [CPL-1.0](https://opensource.org/licenses/cpl1.0.php), [![GitHub stars](https://img.shields.io/github/stars/unclebob/fitnesse.svg?style=social&label=Star&maxAge=2592000)](https://github.com/unclebob/fitnesse). 1. [Sikuli](https://github.com/sikuli/sikuli) Sikuli is a visual technology to automate graphical user interfaces (GUI) using images (screenshots). The current release of Sikuli includes Sikuli Script, a visual scripting API for Jython, and Sikuli IDE, an integrated development environment for writing visual scripts with screenshots easily. License: [MIT](https://opensource.org/licenses/MIT) , [![GitHub stars](https://img.shields.io/github/stars/sikuli/sikuli.svg?style=social&label=Star&maxAge=2592000)](https://github.com/sikuli/sikuli). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [JavaHamcrest](https://github.com/hamcrest/JavaHamcrest) Matchers that can be combined to create flexible expressions of intent. License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29), [![GitHub stars](https://img.shields.io/github/stars/hamcrest/JavaHamcrest.svg?style=social&label=Star&maxAge=2592000)](https://github.com/hamcrest/JavaHamcrest). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Wiremock](https://github.com/tomakehurst/wiremock) Stubbs and mocks web services. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/tomakehurst/wiremock.svg?style=social&label=Star&maxAge=2592000)](https://github.com/tomakehurst/wiremock). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Testng](https://github.com/cbeust/testng) Testing framework. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/cbeust/testng.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cbeust/testng). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [TestNG](https://github.com/cbeust/testng) Testing framework. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/cbeust/testng.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cbeust/testng). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Galenframework Galen](https://github.com/galenframework/galen) Layout and functional testing framework for websites. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/galenframework/galen.svg?style=social&label=Star&maxAge=2592000)](https://github.com/galenframework/galen). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [AssertJ](https://github.com/joel-costigliola/assertj-core) Fluent assertions that improve readability. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/joel-costigliola/assertj-core.svg?style=social&label=Star&maxAge=2592000)](https://github.com/joel-costigliola/assertj-core). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Google truth](https://github.com/google/truth) Google's assertion and proposition framework. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/google/truth.svg?style=social&label=Star&maxAge=2592000)](https://github.com/google/truth). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -971,7 +986,6 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach 1. [Arquillian](http://arquillian.org/) - Integration and functional testing platform for Java EE containers. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Awaitility](https://github.com/jayway/awaitility) - DSL for synchronizing asynchronous operations. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Citrus](http://citrusframework.org/) - Integration testing framework with focus on client- and serverside messaging. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Cucumber](https://github.com/cucumber/cucumber-jvm) - BDD testing framework. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/4.1-testing/cucumber). License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Gatling](http://gatling.io/) - Load testing tool designed for ease of use, maintainability and high performance. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [GreenMail](http://www.icegreen.com/greenmail/) - In-memory email server for integration testing. Supports SMTP, POP3 and IMAP including SSL. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [JGiven](http://jgiven.org) - Developer-friendly BDD testing framework compatible with JUnit and TestNG. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -984,13 +998,16 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach 1. [Selenide](http://selenide.org/) -Concise API around Selenium to write stable and readable UI tests. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Unitils](http://www.unitils.org/) - Modular testing library for unit and integration testing. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [SeLion](https://github.com/paypal/SeLion) - Enabling Test Automation in Java. SeLion builds on top of TestNG and Selenium to provide a set of capabilities that get you up and running with WebDriver in a short time. It can be used for testing web and mobile applications, [![GitHub stars](https://img.shields.io/github/stars/paypal/SeLion.svg?style=social&label=Star&maxAge=2592000)](https://github.com/paypal/SeLion). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [cdp4j](https://github.com/webfolderio/cdp4j) - Web-automation library for Java. It can be used for automating the use of web pages and for testing web pages. [![GitHub stars](https://img.shields.io/github/stars/webfolderio/cdp4j.svg?style=social&label=Star&maxAge=2592000)](https://github.com/webfolderio/cdp4j) License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Image-Comparison](https://github.com/romankh3/image-comparison) - Published on Maven Central Java Library that compares 2 images with the same sizes and shows the differences visually by drawing rectangles. Some parts of the image can be excluded from the comparison. [![GitHub stars](https://img.shields.io/github/stars/romankh3/image-comparison.svg?style=social&label=Star&maxAge=2592000)](https://github.com/romankh3/image-comparison) License: [The Unlicense](https://unlicense.org) +1. [LogCaptor](https://github.com/Hakky54/log-captor) - Captures log entries for unit testing purposes. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/hakky54/log-captor.svg?style=social&label=Star&maxAge=2592000)](https://github.com/Hakky54/log-captor). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) ### 2. Code Coverage *Frameworks and tools that enable collection of code coverage metrics for test suites.* [Up](#useful-java-links) 1. [JaCoCo](http://eclemma.org/jacoco/) - Framework that enables collection of code coverage metrics, using both offline and runtime bytecode instrumentation; prominently used by EclEmma, the Eclipse code-coverage plugin. License: [Eclipse Public License v1.0](https://en.wikipedia.org/wiki/Eclipse_Public_License), [Apache 2](http://www.apache.org/licenses/LICENSE-2.0), [BSD](https://en.wikipedia.org/wiki/BSD_licenses). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Clover](https://www.atlassian.com/software/clover/overview) - Proprietary code coverage tool by Atlassian that relies on source-code instrumentation, instead of bytecode instrumentation. ***License: proprietary*** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) +1. [Clover](https://www.atlassian.com/software/clover/overview) - Proprietary code coverage tool by Atlassian that relies on source-code instrumentation, instead of bytecode instrumentation. ***License: proprietary*** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [Cobertura](http://cobertura.github.io/cobertura) - Relies on offline (or static) bytecode instrumentation and class loading to collect code coverage metrics. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) 1. [JCov](https://wiki.openjdk.java.net/display/CodeTools/jcov) - Code coverage tool used in the OpenJDK project's development toolchain. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) @@ -1003,10 +1020,10 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach 1. [Codeship](https://codeship.com/features) - Hosted services with a limited free plan. ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [fabric8](http://fabric8.io/) - Integration platform for containers. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Go](https://www.thoughtworks.com/go/) - ThoughtWork's open-source solution. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Jenkins](http://jenkins-ci.org/) - Provides server-based deployment services. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Jenkins](http://jenkins.io/) - Provides server-based deployment services. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [TeamCity](http://www.jetbrains.com/teamcity/) - JetBrain's CI solution with a free version. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [Travis](https://travis-ci.org) - Hosted service often used for open-source projects. License: ? -1. [Hudson](http://hudson-ci.org/) - Hudson monitors the execution of repeated jobs, such as building a software project or jobs run by cron. Currently Hudson focuses on the following two jobs: Building/testing software projects continuously and Monitoring executions of externally-run jobs. License: [Eclipse Public License v1.0](https://en.wikipedia.org/wiki/Eclipse_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Hudson](https://www.eclipse.org/hudson/) - Hudson monitors the execution of repeated jobs, such as building a software project or jobs run by cron. Currently Hudson focuses on the following two jobs: Building/testing software projects continuously and Monitoring executions of externally-run jobs. License: [Eclipse Public License v1.0](https://en.wikipedia.org/wiki/Eclipse_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Continuum](http://continuum.apache.org/) Apache Continuum software is an enterprise-ready continuous integration server with features such as automated builds, release management, role-based security, and integration with popular build tools and source control management systems.. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -1070,10 +1087,10 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach [Up](#useful-java-links) 1. [Bintray](https://bintray.com/) - Version control for binaries which handles the publishing. Can also be used with Maven or Gradle and has a free plan for open-source software or several business plans. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) -1. [Capsule](https://github.com/puniverse/capsule) - Simple and powerful packaging and deployment. A fat JAR on steroids or a "Docker for Java" that supports JVM-optimized containers. http://www.capsule.io/ [![GitHub stars](https://img.shields.io/github/stars/puniverse/capsule.svg?style=social&label=Star&maxAge=2592000)](https://github.com/puniverse/capsule). License: [Eclipse Public License v1.0](https://en.wikipedia.org/wiki/Eclipse_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Capsule](https://github.com/puniverse/capsule) - Simple and powerful packaging and deployment. A fat JAR on steroids or a "Docker for Java" that supports JVM-optimized containers. [![GitHub stars](https://img.shields.io/github/stars/puniverse/capsule.svg?style=social&label=Star&maxAge=2592000)](https://github.com/puniverse/capsule). License: [Eclipse Public License v1.0](https://en.wikipedia.org/wiki/Eclipse_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Central Repository](http://search.maven.org/) - Largest binary component repository available as a free service to the open-source community. Default used by Apache Maven and available in all other build tools. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) -1. [IzPack](https://github.com/izpack/izpack) - Setup authoring tool for cross-platform deployments. http://izpack.org/ License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/izpack/izpack.svg?style=social&label=Star&maxAge=2592000)](https://github.com/izpack/izpack)). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [JitPack](https://github.com/jitpack/jitpack.io/) - Easy to use package repository for GitHub. Builds Maven/Gradle projects on demand and publishes ready-to-use packages. https://jitpack.io/ License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/jitpack/jitpack.io.svg?style=social&label=Star&maxAge=2592000)](https://github.com/jitpack/jitpack.io)). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [IzPack](https://github.com/izpack/izpack) - Setup authoring tool for cross-platform deployments. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/izpack/izpack.svg?style=social&label=Star&maxAge=2592000)](https://github.com/izpack/izpack)). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [JitPack](https://github.com/jitpack/jitpack.io/) - Easy to use package repository for GitHub. Builds Maven/Gradle projects on demand and publishes ready-to-use packages. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/jitpack/jitpack.io.svg?style=social&label=Star&maxAge=2592000)](https://github.com/jitpack/jitpack.io)). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Launch4j](http://launch4j.sourceforge.net/) - Wraps JARs in lightweight and native Windows executables. License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses) or [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Nexus](http://www.sonatype.com/nexus-repository-sonatype) - Binary management with proxy and caching capabilities. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [packr](https://github.com/libgdx/packr/) - Packs JARs, assets and the JVM for native distribution on Windows, Linux and Mac OS X. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -1119,10 +1136,11 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [AppDynamics](https://www.appdynamics.com/) - Commercial performance monitor. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [JavaMelody](https://github.com/javamelody/javamelody) - Performance monitoring and profiling. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [jmxtrans](https://github.com/jmxtrans/jmxtrans/) - Tool to connect to multiple JVMs and to query them for their attributes via JMX. Its query language is based on JSON, which allows non-Java programmers to access the JVMs attributes. Likewise, this tool supports different output writes, including Graphite, Ganglia, StatsD, among others. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Kamon](http://www.kamon.io/) - Tool for monitoring applications running on the JVM. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Kamon](https://www.kamon.io/) - Tool for monitoring applications running on the JVM. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Glowroot](https://glowroot.org/) - Open source Java APM. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [New Relic](http://newrelic.com/) - Commercial performance monitor. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [SPM](https://sematext.com/spm/) - Commercial performance monitor with distributing transaction tracing for JVM apps. **License: proprietary**![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) -1. [Takipi](https://www.takipi.com/) - Commercial in-production error monitoring and debugging. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) +1. [OverOps](https://www.overops.com/) - Root cause automation in production. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) #### 6. Redefinition of classes at runtime [Up](#useful-java-links) @@ -1145,6 +1163,7 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [Bytecode viewer](https://github.com/Konloch/bytecode-viewer) A Java 8 Jar & Android APK Reverse Engineering Suite (Decompiler, Editor, Debugger & More). License: [GNU 3](https://en.wikipedia.org/wiki/GNU_General_Public_License), [![GitHub stars](https://img.shields.io/github/stars/Konloch/bytecode-viewer.svg?style=social&label=Star&maxAge=2592000)](https://github.com/Konloch/bytecode-viewer). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) 1. [Reflections](https://github.com/ronmamo/reflections) Java runtime metadata analysis, in the spirit of Scannotations. Reflections scans your classpath, indexes the metadata, allows you to query it on runtime and may save and collect that information for many modules within your project. License: [WTFPL](https://en.wikipedia.org/wiki/WTFPL), [![GitHub stars](https://img.shields.io/github/stars/ronmamo/reflections.svg?style=social&label=Star&maxAge=2592000)](https://github.com/ronmamo/reflections). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Jabba:](https://github.com/shyiko/jabba) Java Version Manager inspired by [nvm](https://github.com/creationix/nvm) (Node.js). The goal is to provide unified pain-free experience of installing (and switching between different versions of) JDK. License [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/shyiko/jabba.svg?style=social&label=Star&maxAge=2592000)](https://github.com/shyiko/jabba). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Chocotea:](https://github.com/cleopatra27) Generates postman collection, environment and integration tests from java code. License [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/cleopatra27/chocotea.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cleopatra27/chocotea). *Current implementations of the JVM/JDK.* @@ -1153,8 +1172,8 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [Zulu OpenJDK](http://www.azul.com/downloads/zulu/) - OpenJDK builds for Windows, Linux, and Mac OS X through Java 8. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) 1. [Zulu OpenJDK 9](http://zulu.org/zulu-9-pre-release-downloads/) - Early access OpenJDK 9 builds for Windows, Linux, and Mac OS X. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) -## VI. Program languages and applications, that was written with Java -### 1. Program languages, that was written with Java +## VI. Program languages and applications that were written with Java +### 1. Program languages that were written with Java [Up](#useful-java-links) 1. [Clojure](https://github.com/clojure/clojure) The Clojure programming language. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/clojure/clojure.svg?style=social&label=Star&maxAge=2592000)](https://github.com/clojure/clojure). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -1165,14 +1184,14 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [Trifork Erjang](https://github.com/trifork/erjang) A JVM-based Erlang VM. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/trifork/erjang.svg?style=social&label=Star&maxAge=2592000)](https://github.com/trifork/erjang). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -### 2. Other program languages tools, that was written with Java +### 2. Other program languages tools that were written with Java [Up](#useful-java-links) 1. [Go lang idea plugin](https://github.com/go-lang-plugin-org/go-lang-idea-plugin) Google Go language IDE built using the IntelliJ Platform. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/go-lang-plugin-org/go-lang-idea-plugin.svg?style=social&label=Star&maxAge=2592000)](https://github.com/go-lang-plugin-org/go-lang-idea-plugin). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Processing js](https://github.com/jeresig/processing-js) A port of the Processing visualization language to JavaScript. License: [MIT](https://opensource.org/licenses/MIT) , [![GitHub stars](https://img.shields.io/github/stars/jeresig/processing-js.svg?style=social&label=Star&maxAge=2592000)](https://github.com/jeresig/processing-js). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Pysonar2](https://github.com/yinwang0/pysonar2) PySonar2 is a type inferencer and indexer for Python, which performs sophisticated interprocedural analysis to infer types. License: [GNU](http://www.gnu.org/licenses/agpl-3.0.en.html) [GNU AGPLv3](http://www.gnu.org/licenses/agpl-3.0.en.html), [![GitHub stars](https://img.shields.io/github/stars/yinwang0/pysonar2.svg?style=social&label=Star&maxAge=2592000)](https://github.com/yinwang0/pysonar2). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) -### 3. Javascript +### 3. Javascript [Up](#useful-java-links) 1. [Yuicompressor](https://github.com/yui/yuicompressor) The YUI Compressor is a JavaScript compressor which, in addition to removing comments and white-spaces, obfuscates local variables using the smallest possible variable name. License: [BSD](https://en.wikipedia.org/wiki/BSD_licenses), [![GitHub stars](https://img.shields.io/github/stars/yui/yuicompressor.svg?style=social&label=Star&maxAge=2592000)](https://github.com/yui/yuicompressor). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -1188,7 +1207,7 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [JavaCC](https://javacc.java.net/) -More specific and slightly easier to learn. Has syntactic lookahead. License: [BSD ](https://en.wikipedia.org/wiki/BSD_licenses). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -### 5. Opensource applications, that was written with Java +### 5. Opensource applications that were written with Java [Up](#useful-java-links) 1. [Square Keywhiz](https://github.com/square/keywhiz) - A system for distributing and managing secrets. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/square/keywhiz.svg?style=social&label=Star&maxAge=2592000)](https://github.com/square/keywhiz). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -1208,7 +1227,7 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [Languagetool](https://github.com/languagetool-org/languagetool) - Style and Grammar Checker for 25+ Languages. License: [GNU Lesser 2.1](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License), [![GitHub stars](https://img.shields.io/github/stars/languagetool-org/languagetool.svg?style=social&label=Star&maxAge=2592000)](https://github.com/languagetool-org/languagetool). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache OpenMeetings](http://openmeetings.apache.org) Video conferencing, instant messaging, white board and collaborative document editing application. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -### 6. Opensource games, that was written with Java +### 6. Opensource games that were written with Java [Up](#useful-java-links) 1. [Bukkit](https://github.com/Bukkit/Bukkit) The Minecraft Mod API. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License), [![GitHub stars](https://img.shields.io/github/stars/Bukkit/Bukkit.svg?style=social&label=Star&maxAge=2592000)](https://github.com/Bukkit/Bukkit). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) @@ -1224,7 +1243,7 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [Tribal Trouble](https://github.com/sunenielsen/tribaltrouble) - Tribal Trouble is a realtime strategy game released by Oddlabs in 2004. In 2014 the source was released under GPL2 license. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License), [![GitHub stars](https://img.shields.io/github/stars/sunenielsen/tribaltrouble.svg?style=social&label=Star&maxAge=2592000)](https://github.com/sunenielsen/tribaltrouble). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) - + ## VII. Other ### 1. Source code examples [Up](#useful-java-links) @@ -1242,6 +1261,7 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [7guis](https://github.com/eugenkiss/7guis) 7GUIs is a GUI programming usability benchmark. License: ?, [![GitHub stars](https://img.shields.io/github/stars/eugenkiss/7guis.svg?style=social&label=Star&maxAge=2592000)](https://github.com/eugenkiss/7guis). 1. [Spring projects Spring data jpa examples](https://github.com/spring-projects/spring-data-examples) Spring Data Example Projects. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/spring-projects/spring-data-examples.svg?style=social&label=Star&maxAge=2592000)](https://github.com/spring-projects/spring-data-examples). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Modern Java - A Guide to Java 8](https://github.com/winterbe/java8-tutorial) - Modern Java - A Guide to Java 8. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Java Micro code pieces](https://onelinerhub.com/java) - community library of micro Java code solutions for popular issues. ### 2. Benchmark results [Up](#useful-java-links) @@ -1264,13 +1284,15 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o * [r/java](https://www.reddit.com/r/java) - Subreddit for the Java community. * [stackoverflow](http://stackoverflow.com/questions/tagged/java) - Question/answer platform. * [vJUG](http://virtualjug.com/) - Virtual Java User Group. +* [DevProjects](https://www.codementor.io/projects/java) - Community to discuss Java projects and share solutions. + ### 2. Influential Books *Books that had a high impact and are still worth reading.* [Up](#useful-java-links) -* [Effective Java (2nd Edition)](http://www.amazon.com/Effective-Java-Edition-Joshua-Bloch/dp/0321356683) -* [Java 8 in Action](http://www.amazon.com/Java-Action-Lambdas-functional-style-programming/dp/1617291994/) +* [Effective Java (3nd Edition)](https://www.amazon.com/Effective-Java-Joshua-Bloch/dp/0134685997) +* [Modern Java in Action](https://www.amazon.com/Modern-Java-Action-functional-programming/dp/1617293563) * [Java Concurrency in Practice](http://www.amazon.com/Java-Concurrency-Practice-Brian-Goetz/dp/0321349601) * [Thinking in Java](http://www.amazon.com/Thinking-Java-Edition-Bruce-Eckel/dp/0131872486) @@ -1281,10 +1303,11 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o * [Android Arsenal](https://android-arsenal.com) * [Google Java Style](http://google-styleguide.googlecode.com/svn/trunk/javaguide.html) +* [Hackr.io](https://hackr.io/tutorials/learn-java) * [InfoQ](http://www.infoq.com/) * [Java, SQL, and jOOQ](https://blog.jooq.org/) -* [Java.net](https://home.java.net/) * [Javalobby](https://dzone.com/java-jdk-development-tutorials-tools-news) +* [Java tutorial](https://hackr.io/tutorials/learn-java) * [JavaWorld](http://www.javaworld.com/) * [JAXenter](https://jaxenter.com/) * [RebelLabs](http://zeroturnaround.com/rebellabs/) @@ -1295,3 +1318,7 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o * [Vanilla Java](http://vanillajava.blogspot.ch/) * [Vlad Mihalcea on Hibernate](https://vladmihalcea.com/) * [Voxxed](https://www.voxxed.com/) +* [OverOps Blog](https://blog.takipi.com/) +* [Bookmarks.dev](https://www.bookmarks.dev/tagged/java) +* [Baeldung](https://www.baeldung.com/full_archive) +* [InterviewBit](https://www.interviewbit.com/courses/fast-track-java/)