miniJUG
1.46K subscribers
1 photo
127 links
Новости Java: https://www.youtube.com/@mini_jug
Также подписывайтесь на второй канал: @microJUG
Буст: https://t.me/miniJUG?boost
Twitter: https://twitter.com/mini_JUG
Сайт: https://minijug.org
Feed: https://minijug.org/feed.xml
Чат: https://t.me/mini_JUG
Download Telegram
Java исполняется 25 лет

Друзья, сегодня у нас знаменательная дата. 23 мая 1995 года, ровно 25 лет назад, вышла первая публичная версия языка программирования Java. Новый язык мгновенно завоевал огромную популярность: благодаря простоте, кроссплатформенности, отсутствию необходимости вручную освобождать память и при этом довольно неплохой производительности разработчики получили огромный прирост в скорости написания программ. Java быстро стала стандартом де-факто для написания корпоративных веб-приложений. Сегодня по самым скромным оценкам порядка 15% всего Интернета работает на JVM.

С момента выхода первой версии язык и платформа кардинально эволюционировали. JDK стала полностью открытым и свободным ПО. JIT-компилятор был усовершенствован настолько, что программы на Java по скорости хорошо приблизились к C++. Появилось несметное количество инструментов и библиотек, решающих самый большой спектр задач. С возможностями IntelliJ IDEA не может соревноваться ни одна другая среда разработки. Новые сборщики мусора Shenandoah и ZGC сделали возможным писать приложения, чувствительные к миллисекундным временам отклика. Сам язык значительно изменился: появились дженерики, аннотации, лямбда-выражения, модули. Были созданы другие популярные языки на основе JVM, такие как Scala, Kotlin, Groovy.

Сегодня Java продолжает развиваться огромными темпами. Версии Java стали выходить раз в полгода, что теперь позволяет разработчикам начать пользоваться нововведениями намного раньше. В рамках проекта Amber в языке появляются всё новые и новые синтаксические изменения, которые позволят сделать код ещё выразительнее и безопаснее. Проекты Valhalla и Graal позволят ещё сильнее увеличить производительность Java-программ, сократив разницу с нативными языками до минимума. Проект Panama ликвидирует брешь в возможностях взаимодействия JVM с нативным кодом. Проект Loom позволит писать многопоточные конкурентные приложения так же просто, как в Erlang и Go. Проект Leyden поможет в решении проблемы медленного старта Java-приложений.

25 лет – это немалый возраст для языка, но Java ни в коем случае не устарела. Наоборот, сегодня она находится на самом пике своего цветения и продолжает уверенно укреплять свои позиции на рынке. Эти 25 лет были прекрасным временем, но будущее будет ещё более светлым и захватывающим.

Всех с праздником! 🥳
Всем привет. На днях я поучаствовал в подкасте @javaswag. Обсудили много интересным тем. Я рассказал про то, почему когда-то ушёл C# на Java, как функциональные языки повлияли на мой стиль кода, стоит ли использовать var или нет, и какие крутые новшества появились в Java 9-11 (спойлер: не только модули). В общем, приглашаю послушать.

Ссылка на SoundCloud
Ссылка на Google Podcasts
Ссылка на Apple Podcasts

Ну и подписывайтесь на канал @javaswag – там берут интервью у многих других интересных гостей.
Исследуем sealed классы в Java 15

Продолжаем исследовать новые возможности, которые появляются в Java. В прошлые разы мы подробно рассматривали улучшенный оператор instanceof и записи, а сегодня объектом исследования будут sealed классы, которые запланированы к выходу в пятнадцатой версии Java.

Идея введения в язык «запечатанных» типов впервые была подробно описана в феврале 2019 года в документе «Data Classes and Sealed Types for Java», и в июле того же года получила свой JEP 360: https://habr.com/ru/post/505696/
Вышла вторая часть выпуска подкаста @javaswag про нововведения в новых версиях Java. В этот раз мы обсудили Nestmates, выражения switch, блоки текста, паттерн-матчинг для instanceof, записи, CDS-архивы. Так же поздравили нашу любимую Java с днём рождения и вспомнили, как она начиналась.

Ссылки: SoundCloud, Google Podcasts, Apple Podcasts.

P.S. В следующем выпуске у нас будет интересный гость. Его имя я пока называть не буду, но дам вам подсказку: он недавно стал чемпионом. В каком виде спорта – угадайте сами :)
Forwarded from javaswag
https://soundcloud.com/javaswag/10-tagir-valeev-sibirskiy-java-chempion

В 10 выпуске подкаста Javaswag поговорили с Тагиром Валеевым о джава чемпионстве, фичах Intellij IDEA и коммитах в OpenJDK.

00:00 Приветствие
01:11 Как стать джава чемпионом
08:31 Кандидат наук
17:12 Как ты все успеваешь?
28:26 Три самые крупные фичи в IDEA
37:01 Поддержка рекордов в IDEA
40:19 IDEA умеет генерировать рекорды по классам?
43:42 Как IDEA справляется с полугодовым релизным циклом?
46:46 Недооцененная фича в IDEA по мнению Тагира
52:51 Насколько глубоко анализирует IDEA?
1:00:38 Выведение контрактов в IDEA
1:07:02 Какой самый первый патч в OpenJDK?
1:08:29 OpenJDK и GitHub
1:13:23 Можно ли обновлять поля рекордов?
1:18:28 Деконструкция рекордов
1:23:10 Рекорды и сериализация
1:24:31 На рекорды стоит смотреть через призму сериализации
1:25:32 Сериализация восстанет из пепла
1:26:20 Про конференции
1:29:38 JVM Language Summit

Гость - https://twitter.com/tagir_valeev
Вышла Java 15

Сегодня, 15 сентября 2020 года, в свет вышла 15-я версия платформы Java. Как и всегда, доступны для скачивания сборки Oracle JDK и OpenJDK.

В новый релиз попало 14 JEP'ов и сотни более мелких улучшений. Если хочется ознакомиться с полным списком изменений с точностью до всех JIRA-тикетов, то их можно посмотреть на сайте Алексея Шипилёва. Также если интересны все изменения API, то их можно посмотреть...

Подробнее: https://habr.com/ru/post/519270/
Новости Java #1

Всех с Новым 2021 Годом! 🎄

Новый год – новое начинание. Будем делать еженедельную подборку новостей Java.

• В компиляторе javac нашли баг, который не позволяет использовать лямбды в компактных конструкторах записей при определённых обстоятельствах. Баг был обнаружен пользователем skohlman в Твиттере.

Вышла стабильная версия JetBrains Runtime под Apple M1. Теперь она включена почти во все IDE компании, начиная с версии 2020.3.1. Пользователи уже доложили о нескольких ошибках, которые проявляются в различных IDE.

• Разработчики обнаружили новый класс HexFormat, который появится в Java 17. С помощью этого класса можно будет конвертировать строки с шестнадцатеричными символами в массивы байтов и обратно.

• Huawei реализовал свой порт OpenJDK 11 под архитектуру Linux/RISC-V и спрашивает, заинтересовано ли сообщество во включении этого порта в jdk-master. Alibaba изъявили желание помочь и сделать вклад в разработку.

• Команда Jetty рассказала об опыте перехода веб-сервера на виртуальные нити из проекта Loom. Они сделали вывод, что количество нитей – это не всегда главный лимитирующий фактор, и правило «просто всегда создавай виртуальную нить» может не сработать, если каждая нить имеет глубокий стек или держит какие-то большие ресурсы.

• Разработчик из Oracle рассказал о том, как ускорил MD5 в OpenJDK.

📆 До выхода Java 16 осталось 72 дня.
Новости Java #2

Понедельник! Новости прошедшей недели:

• Первый JEP, который попадёт в Java 17
• Брайан Гетц и новые детали паттерн-матчинга
• Утилита apidiff
• JetBrains, SolarWinds и русские хакеры
• Брюс Эккель и проблемы Gradle
• Выход Gradle 6.8

Читать подробнее: https://minijug.ru/java_news_2.html

📆 До выхода Java 16 осталось 65 дней.
Новости Java #3

Доброе утро понедельника! Новости недели:

• На сайт minijug.ru добавлен feed в формате Atom
• Java 16 во второй фазе Rampdown
• Изменения javac в отношении preview API
• Новый черновик JEP: Primitive Objects (Preview)
• Новый выпуск Java Annotated Monthly
• Новая сборка Loom
• Scala 2.12.13

Читать подробнее: https://minijug.ru/java_news_3.html

📆 До выхода Java 16 осталось 58 дней.
Новости Java #4

Новости прошедшей недели (18-25 января):

• 25 лет с выхода JDK 1.0
• Обновления JDK (8u282, 11.0.10, 13.0.6, 15.0.2, 16-ea+33, 17-ea+6)
• Брайан Гетц и планы развития паттерн-матчинга в Java
• Интервью с Брайаном
• 20 лет с выхода первой версии IntelliJ IDEA и онлайн-конференция IntelliJ IDEA Conf
• Онлайн-митап JUGNsk 28 января
• Статья Тагира Валеева на Хабре
• GraalVM 21.0
• Eclipse Tycho 2.2.0

Читать подробнее: https://minijug.ru/java_news_4.html

📆 До выхода Java 16 остался 51 день.
Новости Java #5

Новости прошедшей недели (25 января – 1 февраля):

• Сниппеты в JavaDoc
• Улучшение производительности регулярных выражений
• IntelliJ IDEA 2021.1 EAP
• JMC 8.0.0 EA

Подробнее: https://minijug.ru/java_news_5.html

📆 До выхода Java 16 осталось 44 дня.
Новости Java #6

Утро понедельника! Новости за прошедшую неделю (1-7 февраля):

• Вышел первый релиз-кандидат JDK 16
• Вышла сборка JDK 17-ea+8
• Стал известен второй JEP, предложенный к выходу в Java 17
• JFrog объявила о закрытии Bintray
• Опубликовано три новых черновика JEP: Frozen Arrays, Internal Frozen Arrays и Generational Shenandoah
JUG.ru выложил видео с конференции Joker 2020
• Вышел Kotlin 1.4.30
• Опубликован JetBrains 2020/21 Annual Highlights

Читать полностью: https://minijug.ru/java_news_6.html

📆 До выхода Java 16 осталось 37 дней.
Новости Java #7

Новости 8-14 февраля:

• Вышел ещё один JEP по проекту Valhalla: Unify the Basic Primitives with Objects (Preview). В нём предлагается мигрировать 8 примитивных типов Java (int, long, double, float, short, byte, char, boolean) таким образом, чтобы они стали экземплярами соответствующих классов-обёрток (Integer, Long, Double, Float, Short, Byte, Character, Boolean), которые сами станут примитивными классами. В такой схеме, например, тип int станет алиасом для Integer.val, а Integer – к int.ref.

Благодаря такой унификации у примитивных типов появятся свойства, которых у них не было с самого появления языка: наследование, наличие методов (17.toString(), 23.compareTo(42)) и возможность быть параметрами дженериков (будет отдельный JEP).

• В рассылке OpenJDK предложили перевести проект jdk11u на Git. Так как переход 16u и 13u на Git уже совершён, то это поможет унифицировать процесс разработки обновлений разных мажорных версий JDK. Переход на Git предлагается сделать к июню 2021 года, когда начнётся работа над JDK 11.0.13.

• Компания JetBrains начала программу раннего доступа (EAP) к своему новому продукту Qodana – платформы для статического анализа и измерения качества кода. Qodana состоит из двух частей: движок для запуска анализа в CI и веб-панель с отчётами. Статический анализатор кода представляет собой движок IntelliJ IDEA без графического интерфейса, и его можно запустить на любом CI-сервере. Для TeamCity есть готовый плагин.

• Николай Парлог (aka nipafx) выложил на YouTube интервью с Брайаном Гетцом про то, почему сериализация, nullability, мутабельность и другие аспекты сделаны умолчательными в Java, и можно ли это было сделать по-другому.

📆 До выхода Java 16 осталось 30 дней.
Новости Java #8

Новости 15-28 февраля:

• Вышло два новых черновика JEP: Record and Array Patterns (Preview) и Pattern Matching for switch (Preview).
• Вышел первый релиз-кандидат Scala 3: Scala 3.0.0-RC1.
• Вышла Scala 2.13.5.
• Опубликованы результаты опроса JakartaEE.
• Объявлена виртуальная конференция JakartaOne Livestream на русском.
• Новые ранние сборки JDK 17 и JDK 17 Panama.
• Вышла версия 1.0 библиотеки FlatLaf для кроссплатформенного Look and Feel в приложениях на Swing.
• В Android аннотация @Deprecated была по ошибке помечена как Deprecated.

Читать полностью: https://minijug.ru/java_news_8.html

⚡️ Java 16 выйдет через две недели!
Новости Java #9

Что произошло 1-8 марта:

• Брайан Гетц запустил дискуссию про паттерны с условиями в switch.
• Ещё одно письмо от Брайана: паттерны примитивных типов и конверсии.
• Новый JEP 398: Deprecate the Applet API for Removal.
• Мартовский выпуск Java Annotated Monthly.
• Обновление статуса переезда AdoptOpenJDK в Eclipse Foundation.
• Обновления ранних сборок JDK: JDK 17-ea+12, JDK 17-lanai+3-133.
• Вышел JMH 1.28.

Читать полностью: https://minijug.ru/java_news_9.html

⚡️ Java 16 выйдет через неделю!
Новости Java #10

Новости 8-14 марта:

• Эксперты близки к финализации синтаксиса условий в паттернах.
• Брайн Гетц начал обсуждение паттернов в присваивании.
• Два новых JEP: JEP 399: Intermediate-Representation Graph Serialization и JEP 400: UTF-8 by Default.
• Роман Кеннке предложил сжимать заголовок объекта до 64/32 бит.
• JetBrains выпустила новый инструмент Projector для удалённой разработки в IDE.
• Вышел Apache NetBeans 12.3.
• Вышел Hibernate Reactive 1.0.
• Вышел JavaFX 16.
• Новые ранние сборки JDK: JDK 17-ea+13, JDK 17-loom+4.

Читать полностью: https://minijug.ru/java_news_10.html

⚡️ Java 16 выйдет через 2 дня
Вышла Java 16

Вышла 16-я версия платформы Java SE. В этот релиз попало около двух с половиной тысяч закрытых задач и 17 JEP'ов.

Уже сейчас доступны для скачивания дистрибутивы Oracle JDK и OpenJDK.

Подробнее: https://habr.com/ru/post/547364/
Новости Java #11

Прошедшая неделя оказалась насыщенной новостями:

• Самая главная новость – это, конечно же, выход Java 16.
• Вышло 4 новых JEP. Среди них JEP 403 – сделать опцию --illegal-access недействительной.
• Ещё два JEP предложен к выходу в Java 17.
• Запущено голосование за создание проекта Lilliput.
• Вышел Eclipse 2021-03.
• Вышла IntelliJ IDEA 2020.3.3.
• Вышел Async Profiler 2.0.
• Вышел JDK Misson Control 8.0.0.
• Вышел Spring Framefork 5.3.5.
• Cтатья JDK 16 Security Enhancements.
• Вышла Guava 30.1.1.
• Новейшие сборки JDK 17: JDK 17-ea+13 и JDK 17-loom+5.

Читать полностью: https://minijug.ru/java_news_11.html
Новости Java #12

Немного новостей:

• Вышло 3 новых JEP. Это JEP 405: Record Patterns & Array Patterns (Preview), JEP 406: Pattern Matching for switch (Preview) и JEP 407: Remove RMI Activation. Про первые два мы уже писали в предыдущих выпусках. В JEP 407 предлагается окончательно удалить устаревшую часть RMI, которая называется RMI Activation. В Java 15 она стала deprecated for removal.

• Появилось 3 новых черновика JEP: Dynamic Deserialization Filters, PAC-RET protection for Linux/AArch64 и Arm64e support for MacOS/AArch64.

• Официально объявлено, что проект jdk11u переедет на Git и GitHub. Это случится летом, когда начнётся разработка JDK 11.0.13.

• Вышел Eclipse Jetty 11 (а точнее 11.0.2).

• Вышел JMH 1.29.

• Вышла статья ZGC | What's new in JDK 16. В ней утверждается, что в JDK 16 удалось снизить максимальные паузы с 10мс до 1мс.
Новости Java #13

☕️ Утро понедельника! Новости прошедшей недели:

• Появилось расписание процесса выхода JDK 17.
• В Java появится простой веб-сервер, который можно будет запускать из командой строки.
• Проект Lilliput будет официально запущен.
• Выложены видео докладов с конференции JakartaOne Livestream.
• Вышел Apache Maven 3.8.1.
• Вышел Lombok 1.18.20 с поддержкой Java 16.
• Вышла IntelliJ IDEA 2021.1 RC.
• Вышел JOL 0.15.
• Новые ранние сборки JDK: JDK 17-ea+16, JDK 17-loom+6.
• Вышла Scala 3.0.0-RC2.

Читать полностью: https://minijug.ru/java_news_13.html
Новости Java #14

Новости 5-11 апреля:

• 2 новых JEP: Sealed Classes и Remove the Experimental AOT and JIT Compiler.
• Проект Lilliput стартовал.
• Вышла IntelliJ IDEA 2021.1.
• Google выиграл многолетнюю тяжбу с Oracle.
• Microsoft будет выпускать свою сборку OpenJDK.
• Вышел Gradle 7.0.
• Тагир Валеев предложил патч в OpenJDK с оптимизацией операций Stream::limit и Stream::skip.

Подробнее: https://minijug.ru/java_news_14.html