image

В этом выпуске


— JUnit 5 к нам приходит
— Сборка окончена: CMS будет удален из Java
— Java EE: Oracle прервал молчание
— В дебри JIT вместе с Azul
… и многое другое


1. Новости


1.1.Вышел первый майлстоун-релиз JUnit 5

Ссылка 1: http://www.swiftmind.com/de/2016/07/07/junit-5-0-0-m1-released/
Ссылка 2: http://www.codeaffine.com/2016/02/18/junit-5-first-look/

Разработчики обещают много приятных фич — поддержка лямбд, динамическую регистрацию тестов, и т.д… Более подробно можно почитать в официальной документации. Часть этого функционала присутствовала и в предыдущих версиях. Но API JUnit 4 далек от идеала. Наращивание функционала привело к накоплению технического долга, выражающегося в конкурирующих интерфейсах, запутанных сущностях, и прочих странностях. В новой версии API будет не только более продвинутым, но и более удобным, и целостным. Ждем.

1.2. Дни CMS сочтены

Ссылка 1: http://openjdk.java.net/jeps/291
Ссылка 2: http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2016-June/018353.html
Ссылка 3: http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2016-July/018532.html

Это не новость. Идея удалить CMS была материализована в виде JEP-а еще в 2015-м году. Oracle хочет целиком сфокусироваться на развитии G1. Однако сейчас разработчики вплотную подошли к началу выпиливания, что породило ряд вопросов.

Так, представители SAP и Google заявляют, что хотят продолжать развивать CMS в рамках своих сборок OpenJDK. Поэтому CMS нельзя просто взять и выпилить. Его хорошо бы либо абстрагировать, либо выключать его компиляцию каким-нибудь макросом. Но и здесь не все гладко, так как Oracle с большим скрипом пропускает пуши со стороны в кодовую базу OpenJDK.

Парням из Oracle все эти сложности нафиг не нужны. Идеальный вариант для них — просто грохнуть кодовую базу. Комментарий Mark Reinhold позволяет надеяться, что IT-гигант проявит определенную ответственность, и стороны смогут придти к компромиссу.

1.3. Тренды и тенденции в Java: большое исследование RebelLabs

Ссылка: http://zeroturnaround.com/rebellabs/java-tools-and-technologies-landscape-2016/

Ребята из ZeroTurnaround провели большой опрос Java-специалистов, и составили картину современных тенденций в мире Java. 75% разработчиков думают, что они лучше, чем в среднем по больнице. 3 из 5 попробовавших микросервисы на вкус, не поняли, зачем это все нужно. IDEA наконец обогнала Eclipse. И прочее, и прочее. Почитайте, крайне интересно.

1.4. Oracle рассказал о будущем Java EE

Ссылка: http://www.theregister.co.uk/2016/07/07/oracle_java_ee_8/

Если коротко: «отставить панику, ситуация под контролем, на JavaOne все расскажем». На самом деле, тема стенаний Java EE уже немного утомила. Поэтому возможно действительно стоит расслабиться, и просто дождаться сентября. А там, гляди, и «само рассосется». Хотя едва ли многие из вас сильно напрягались по этому поводу :-)

Тем временем Mark Little из RedHat немного прояснил ситуацию с MicroProfile. Это инициатива про стандарты, и не про стандарты. Про Java EE, и не про Java EE. Продвигать ее будут через JCP, и не через JCP. Короче говоря, за все хорошее, против всего плохого. Пока что выглядит слишком рыхло.

Кстати, еще одна хорошая новость — WebSphere теперь Java EE 7 compliant! Поздравляем коллег из IBM. Как говорится, дорога ложка к обеду.

2. Почитать


2.1. В дебри JIT вместе с Azul

Ссылка: https://www.youtube.com/watch?v=oH4_unx8eJQ


Шикарный доклад о внутренностях JIT от Douglas Hawkins из Azul Systems. Настоятельно рекомендовано к просмотру, если вы не присутствовали на самом ивенте, организованным JUG.RU.

2.2. О чем молчит G1

Ссылка: https://dzone.com/articles/understanding-g1-gc-log-format

У CMS земля горит под ногами. Поэтому самое время поднатореть в дебаге проблем G1, и разобраться, что он печатает в лог. Автор статьи достаточно сжато и лаконично рассказывает, как начать говорить с новым сборщиком мусора на одном языке.

2.3. Интервью с CEO JetBrains

Ссылка: http://www.rbc.ru/spb_sz/04/07/2016/577a35b09a79477fa19c6cb5

Всегда инетерсно почитать интервью с умным человеком. Просто оставлю это здесь.

3. Мудрость


3.1. Do Repeat Yourself


3.2. Про тестирование


3.3. Performance и элегантность

Это все хорошо конечно, но элегантность и простота зачастую требуют титанических усилий. Мы редко можем это себе позволить в повседневной практике.

4. Юмор


4.1. Все тлен


4.2. Антипаттерны



Предыдущие выпуски

#5 (20.06.2016 — 03.07.2016)
#4 (06.06.2016 — 19.06.2016)
#3 (23.05.2016 — 05.06.2016)
Поделиться с друзьями
-->

Комментарии (3)


  1. sunless
    19.07.2016 10:21

    Shanandoah, терерь CMS. Хотспоту очень не хватает нормального API, чтобы делать plug-able GCs. Зы: для JITa эту проблему почти решили.


  1. lany
    19.07.2016 14:59

    так как Oracle с большим скрипом пропускает пуши со стороны в кодовую базу OpenJDK

    Речь не о всей OpenJDK, а конкретно о HotSpot. В classlib довольно много сторонних коммитеров, насколько я знаю.


  1. MaximChistov
    19.07.2016 15:24
    +1

    Нравится ваш дайджест. Спасибо, что пишите! :)