- PVSM.RU - https://www.pvsm.ru -

Java-дайджест за 7 сентября

Java-дайджест за 7 сентября - 1

  • Англоязычной версией этого дайджеста вы можете поделиться с друзьями, используя вот эту ссылку [1].
  • OpenJDK официально завершил свой переход на GitHub [2].
  • Вышел Azure Spring Cloud [3]. Это платформа для развертывания и управления сервисами на основе Spring Boot и Spring Cloud, работающими на облаках Microsoft Azure. Совместно создается, управляется и обслуживается сотрудниками Microsoft и VMware.
  • Вышел новый релиз-кандидат Eclipse IDE 4.17 RC1 [4]. В нем есть пачка новых фичей, включая поддержку JEP 358: Helpful NullPointerExceptions [5].
  • GitHub опубликовал новый отчёт [6] о последних инцидентах и проблемах доступности их сервисов. Самый длинный инцидент длился целых пять часов.
  • Десятого июля этого года JetBrains проводили мероприятие под названием "Technology Day for Java". Презентации и видео доступны по ссылке [7].
  • Появился R2DBC адатер для MyBatis [8]. В README много китайского языка, но это неважно, ведь в исходниках — Java.
  • Вышел Eclipse Ditto [9] 1.2.0. Eclipse Ditto — опенсорсный фреймворк для создания и управления "цифровыми двойниками" в IoT. В новом релизе они сфокусировались на обработке в стиле "At least once" (QoS 1), внедрении таймстемпов и метаданных, HTTP-аутентификацией пуш-соединений с помощью клиентских сертификатов.
  • Вышло обновление [10] Big Data Tools — плагина для работы с большими данными в IntelliJ IDEA Ultimate. Добавился мастер создания SSH-туннелей, появилась возможность лимитировать загружаемые данные в таблице приложений в Spark Monitoring, а к Zeppelin теперь можно подключать пользовательские модули. В целом, это был багфикс-релиз, который позволил куда более удобно пользоваться Spark Monitoring.
  • Выпущены Spring Tools 4.7.2 [11]. В нем появился совершенно новый визард для добавления Spring Boot стартеров к существующим проектам и ранняя экспериментальная версия сборки образов Spring Boot OCI совместно с Docker.
  • Вышла Eclipse Dirigible 5.2 [12]. В новом релизе добавили генерацию OData из Entity Data Model и в целом улучшили поддержку OData. Dirigible — это Cloud Development Platform со своими инструментами разработки и рантаймом.
  • Один из пользователей Реддита выложил свой проект — новый kubectl plugin [13]. Он написан на Java и запускается при помощи jbang.
  • Крутой демо-проект [14], который демонстрирует эффект волны, генерируя нерегулярные контуры, объединенные кривыми безье QuadCurve. Волны анимируются с помощью изменения координат контрольных точек самого контура.
  • Другая крутая демка на ту же тему [15]. Это спецэффект, который с помощью JavaFX демонстрирует затемнение стандартных элементов интерфейса цветными тенями (что делает их невидимыми), после чего добавляется "фонарик", который динамически соединяется с узлами интерфейса на линии видимости.
  • И еще одна интересная утилита для командной строки, написанная на Java. Она может автоматически добавлять пропущенные import-ы в Java-файлы, и для этого не нужно запускать IDE. Взять её можно на on Github [16], а прочитать анонс — на Reddit [17].

Матчасть

  • Вышел Chaos Probe: новый инструмент анализа стабильности для моделей глубокого обучения, написанный на JavaFX. Как он работает можно посмотреть на on YouTube [18]. Приложение целиком написано на Java 14 и JavaFX, и предоставляет интерактивные визуализации моделей глубокого обучения (Keras), предназначенных для классификации изображений.
  • Кстати, к слову, в Google изобрели новую модель для глубокого обучения под названием BigBird [19], которая позволяет нейросетевым трансформерам обрабатывать последовательности в 8 раз длиннее, чем раньше. Это позволяет лучше решать некоторые задачи в области обработки естественного языка, включая автоматические ответы на вопросы и суммаризацию документов.

Дискуссии

  • На Reddit обнаружился тред [20] посвященный поиску наименее жирного докерного образа для JDK.
  • Пользователь Reddit написал [21], свой небольшой экспериментальный HTTP server, использующий Project Loom.
  • Один и тот же Redditor задал два параллельных вопроса про то, можно ли использовать Java на GPU [22] и FPGA [23].

Сервисы

  • Snyk [24] выпустили [25] новые инструменты для приоритизации дыр в безопасности. Триаж можно ускорить с помощью фичей вроде "Priority Score", "Exploit Maturity" и так далее.
  • Вышел AWSSSMChaosRunner [26]. Это библиотека для осуществления chaos engineering для Amazon AWS. Она позвоялет удаленно запускать команды относительно выбранного набора инстансов EC2. Исходники библиотеки находятся в открытом доступе, впрочем, толку от этого мало, учитывая что вы всё равно сидите на проприетарном Amazon.
  • Google анонсировали [27] новую сервисно-ориентированную архитектуру под названием Runner v2 для своего Dataflow [28] — их GCP-сервиса, выполняющего пайплайны Apache Beam.
  • Amazon AWS анонсировали нечто под названием AWS Contact Center Intelligence solutions [29]. Их решения, объединенные в Contact Center Intelligence (CCI) [30] будут направлять всю мощь искусственного интеллекта на помощь контактным центрам. Можно будет использовать Amazon Kendra, Amazon Translate, Amazon Transcribe, и сервисы компаний-партнеров вроде Accenture, Acqueon, Slalom или Vonage.

Стримы и подкасты

  • Автор этого дайджеста попробовал записать видеотуториал по написанию плагина [31] для IntelliJ IDEA.
  • Новый эпизод "A Bootiful Podcast" [32] Джоша Лонга. Мы обсудим SpringOne 2020 и кингу Джоша "Reactive Spring" вместе с Jonathan Giles — он Java Architect в Microsoft и Java Champion.
  • "Unit Tests Considered Harmful" [33]. Это новый эпизод подкаста Adam Bien в блоге Airhacks.
  • Вышел новый подкаст Yan Cui [34], посвященный Serverless Orchestration & Choreography, Distributed Tracking, Cold Starts и всякой всячине.
  • Видео-туториал [35] про то, как писать нативные Java-приложения на NetBeans IDE с использованием GraalVM и Gluon.

Статьи

  • Новый эпизод дайджеста Джоша Лонга, "This Week in Spring." [36].
  • Новый эпизод дайджеста Trisha Gee, Java Annotated Monthly [37].
  • "How to test the application's integration with Kafka and Testcontainers" [38] by Łukasz Chrząszcz.
  • Vlad Mihalcea написал очередной туториал [39] о том, как кодировать и декодировать JSON properties при использовании JPA.
  • Короткий туториал [40] о том, как написать свою первую AWS Lambda на Java.
  • А в этом блогпосте [41] сотрудники JetBrains раскрывают пачку рефакторингов для IntelliJ IDEA, которые пригодятся в повседневной жизни.
  • Java Architecture for XML Binding (JAXB) API была объявлена устаревшей ещё в Java 9, а в Java SE 11 её удалили. И что теперь делать? Что-что — смотреть готовый небольшой пример [42] на сайте Adam Bien.
  • Michael Scharhag написал статью "OCR in Java with Tess4J" [43]. Используя инструкции из этой статьи, вы напишете преобразователь JPEG-картинок в текст. Tess4J — это обертка с использованием Java JNA, которая заворачивает внутрь Tesseract OCR API. Tesseract — известная библиотека для распознавания изображений, 94% которой написано на C++.
  • Michael Scherlag написал статью "Extending JUnit 5" [44]. Используя её, можно написать кастомное расширение и использовать его с помощью аннотации @ExtendWith.
  • Быстрый туториал [45] о том, как билдить Maven с помощью Github Actions.
  • Новый официальный туториал про Vaadin [46], показывающий, как его связать с Hazelcast.
  • Top 12 Java Thread, Concurrency and Multithreading Interview Questions For experienced Programmers [47]. Кажется, вопросы не то чтобы шибко сложные, но для тех, кто никогда не писал сложных многопоточных приложений они могут оказаться совершенно новыми.

О нумерации дайджестов

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

Автор: Олег Чирухин

Источник [48]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/java/356751

Ссылки в тексте:

[1] вот эту ссылку: https://darkest.land/2020/09/07/this-week-in-java-1/

[2] переход на GitHub: https://github.com/openjdk/jdk

[3] Azure Spring Cloud: https://spring.io/blog/2020/09/02/hello-azure-spring-cloud

[4] Eclipse IDE 4.17 RC1: https://www.eclipse.org/eclipse/news/4.17/jdt.php?v=rc1

[5] JEP 358: Helpful NullPointerExceptions: https://openjdk.java.net/jeps/358

[6] опубликовал новый отчёт: https://github.blog/2020-07-08-introducing-the-github-availability-report/

[7] доступны по ссылке: https://pages.jetbrains.com/technology-day-java-2020

[8] R2DBC адатер для MyBatis: https://github.com/linux-china/mybatis-r2dbc

[9] Eclipse Ditto: https://www.eclipse.org/ditto/2020-08-31-release-announcement-120.html

[10] Вышло обновление: https://blog.jetbrains.com/idea/2020/09/big-data-tools-eap-10/

[11] Spring Tools 4.7.2: https://spring.io/blog/2020/09/03/spring-tools-4-7-2-released

[12] Eclipse Dirigible 5.2: https://www.dirigible.io/release/2020/09/02/news_new_release_5_2.html

[13] kubectl plugin: https://filippobuletto.github.io/kubectl-java-test/

[14] демо-проект: https://www.youtube.com/watch?v=TYENQucbOOY

[15] демка на ту же тему: https://www.youtube.com/watch?v=0vUUTWhIsIU

[16] on Github: https://github.com/nicolascouvrat/javaimports

[17] на Reddit: https://www.reddit.com/r/java/comments/ijleh5/ive_created_a_cli_utility_to_automatically_add/

[18] on YouTube: https://www.youtube.com/watch?v=Pab2fLwxI_g

[19] BigBird: https://arxiv.org/abs/2007.14062

[20] тред: https://www.reddit.com/r/java/comments/ij5qek/an_openjdk_14_docker_image_thats_33_slimmer_than/

[21] написал: https://www.reddit.com/r/java/comments/ii939b/i_created_a_sample_http_server_using_jetty_with/

[22] GPU: https://www.reddit.com/r/java/comments/iku9yl/running_java_on_gpus/

[23] FPGA: https://www.reddit.com/r/java/comments/ikucup/running_java_on_fpgas/

[24] Snyk: https://snyk.io/

[25] выпустили: https://snyk.io/blog/snyks-developer-first-prioritization-capabilities/

[26] AWSSSMChaosRunner: https://aws.amazon.com/blogs/opensource/building-resilient-services-at-prime-video-with-chaos-engineering/

[27] анонсировали: https://cloud.google.com/blog/products/data-analytics/multi-language-sdks-for-building-cloud-pipelines

[28] Dataflow: https://cloud.google.com/dataflow

[29] AWS Contact Center Intelligence solutions: https://aws.amazon.com/blogs/aws/aws-announces-aws-contact-center-intelligence-solutions/

[30] Contact Center Intelligence (CCI): https://aws.amazon.com/machine-learning/contact-center-intelligence/

[31] видеотуториал по написанию плагина: https://www.youtube.com/watch?v=e1WexbV0veU

[32] "A Bootiful Podcast": https://spring.io/blog/2020/09/04/a-bootiful-podcast-springone-2020-josh-s-book-reactive-spring-and-microsoft-java-architect-and-fellow-java-champion-jonathan-giles

[33] "Unit Tests Considered Harmful": https://adambien.blog/roller/abien/entry/unit_tests_considered_harmful_an

[34] подкаст Yan Cui: https://soundcloud.com/infoq-channel/yan-cui-on-serverless-orchestration-choreography-distributed-tracking-cold-starts-and-more

[35] Видео-туториал: https://www.youtube.com/watch?v=cceRz3LToIo

[36] "This Week in Spring.": https://spring.io/blog/2020/09/02/this-week-in-spring-springone-2020-edition-september-1st-2020

[37] Java Annotated Monthly: https://blog.jetbrains.com/idea/2020/09/java-annotated-monthly-september-2020/

[38] "How to test the application's integration with Kafka and Testcontainers": https://chrzaszcz.dev/2020/08/kafka-testing/

[39] очередной туториал: https://vladmihalcea.com/encrypt-decrypt-json-jpa/

[40] Короткий туториал: https://blog.rajanpanchal.net/write-your-first-aws-lambda-in-java

[41] блогпосте: https://blog.jetbrains.com/idea/2020/09/everyday-refactorings-in-intellij-idea/

[42] готовый небольшой пример: https://adambien.blog/roller/abien/entry/from_pojo_to_xml_and

[43] "OCR in Java with Tess4J": https://www.javacodegeeks.com/2020/08/ocr-in-java-with-tess4j.html

[44] "Extending JUnit 5": https://www.javacodegeeks.com/2020/08/extending-junit-5.html

[45] Быстрый туториал: https://blog.frankel.ch/github-actions-maven-releases/

[46] туториал про Vaadin: https://vaadin.com/learn/tutorials/hazelcast

[47] Top 12 Java Thread, Concurrency and Multithreading Interview Questions For experienced Programmers: https://www.java67.com/2012/08/5-thread-interview-questions-answers-in.html

[48] Источник: https://habr.com/ru/post/518054/?utm_source=habrahabr&utm_medium=rss&utm_campaign=518054