image

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


JVM Language Summit: ведущие эксперты о будущем Java
— Черновой вариант value types на подходе
— Инвесторы вливают деньги в Hadoop
JITWatch: новый инструмент performance-инженера
… и многое другое


1. Новости


1.1. Будущее Java

Ссылка
Ссылка 2

В первых числах августа в Санта-Клара, Калифорния, прошел очередной JVM Language Summit. Особое внимание было приковано к John Rose, который рассказывал про Java будущего. Достаточно хорошую выжимку его доклада можно прочитать, пройдя по первой ссылке. Среди ключевых моментов — value types, более глубокая интеграция между нативным и управляемым слоями, концепция java-over-java, адаптация платформы под современные тенденции развития железа и прикладного софта.

1.2. Minimal value types

Ссылка

Раз уж зашла речь о value types, еще одна приятная новость. John Rose предлагает не ждать N лет, пока фича будет финализирована, а выпустить ее черновой вариант. Предполагается, что фичу будут использовать любознательные «power users» (смешно звучит, учитывая что речь идет про Java-разработчиков). Очень правильная идея. Она позволит Oracle поддерживать более тесный контакт с пользователями, и организовать продолжительную и насыщенную стадию альфа/бета-тестирования. Главное, чтобы это начинание не повторило судьбу печально известного sun.misc.Unsafe — уж больно сильно будут чесаться руки увести value types в продакшн. Борьбе со злоупотреблениями в статье посвящен целый абзац, см. «Scoping of these features».

image
Источник: blogs.oracle.com/java/jvm-language-summit-highlights

1.3. Будущее Java EE в наших руках

Ссылка

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

1.4. Deprecation API

Ссылка

И еще одна хорошая новость. Судя по всему, в Java 9 мы увидим улучшенный deprecation API. Соответствующим JEP (созданный еще в конце 2014 года) уже запланирован в девятку. Его реализация должна сделать жизненный цикл API более понятным и управляемым, и со временем привить разработчикам дисциплину работы с deprecated-методами.

1.5. А что там у шарпОв?

Ссылка

Немного контраста. Microsoft рассказал о своих планах на C# 7.0. Шарп в современном виде уже впитал в себя огромное количество языковых фич. Поэтому в седьмой версии прорывных улучшений не ожидается. Парни просто фиксируют свое лидерство над множеством других языков (включая Java, естественно). Локальные функции, tuples на уровне языка, паттерны в case-switch, еще меньше головной боли при работе с эксепшнами. Короче говоря, с жиру бесятся. Когда-нибудь и на нашей улице будет праздник.

1.6. Долларов слонам

Ссылка
Ссылка 2

Инвесторы продолжают вливать в экосистему Hadoop серьезные деньги. Так, MapR закрыл очередной раунд инвестиций, получив 50M$. Предполагается, что это последнее вливание перед грядущим IPO компании.

Одновременно с этим SAP анонсировал поглощение стартапа Altiscale, продающего так называемые big-data-as-a-service (BDaaS? BDataS?) решения. Сумма сделки составила 125M$.

1.7. Долларов EPAMу

Ссылка

EPAM отчитался за второй квартал 2016 года. Чистая прибыль одного из крупнейших аутсорсеров составила 22M$. Вместе с первым кварталом это дает суммарную цифру 50M$. Согласно информации на официальном сайте, в компании работает более 18 тысяч сотрудников. Таким образом, за полгода средний доход компании на сотрудника составил ~2800$, или ~460$ в месяц, или ~20$ в день. Тяжелый бизнес.

image
Источник: www.investors.com/news/epam-systems-second-quarter-earnings-preview

1.8. JITWatch

Ссылка
Ссылка 2

Парни из JetBrains выпустили классный плагин JITWatch, который позволяет следить за JIT-компиляцией в runtime. Краткий рассказ Дмитрия Жемерова о возможностях плагина можно посмотреть по второй ссылке.

Хочется верить, что JetBrains продолжит работу над интеграцией перфоманс-инструментов в IDEA. Mission Control, JMH, Honest Profiler, Flame graphs, Hdr Histogram, Perf,… С каждым днем их становится все больше. Но с ростом возможностей растет и количество головной боли. Нужен универсальный продукт, который был бы интегрирован с IDE, и объединял бы в себе функции и преимущества популярных продуктов.

2. Почитать


2.1. Видео с JVM Language Summit 2016

Ссылка

Видео всех докладов были выложены на соответствующий YouTube-канал сразу после саммита. Если вы хотите быть в курсе последних новостей JVM, этот канал для вас.

2.2. JVM warm-up

Ссылка

Обзорный доклад о JIT и прогреве JVM от Mark Price, перфоманс-инженера компании LMAX. Не является хардкорным, а потому хорошо подойдет инженерам, которые только начинают свое знакомство с внутренностями JVM.

2.3. Checked vs unchecked exceptions

Ссылка

В группе Mechanical Sympathy произошла попытка разжечь известный холивар checked vs unchecked exceptions. Все началось с того, что одного разработчика возмутил переход драйверов Elasticsearch и Cassandra на unchecked-модель. Обсуждение полезно тем, что содержит очень сжатые и емкие мнения о плюсах и минусах обоих видов исключений. Лично мне наиболее близок подход Peter Lawrey — интерфейсы библиотек на unchecked exception, их имплементация — на checked. Как только вы выставляете checked exceptions наружу, они начинают доставлять боль пользователям, их и просто игнорируют. В худшем случае — пустыми catch-блоками.

2.4. Новые коллекторы в Java 9

Ссылка

Статья рассказывает про два новых коллектора в Java 9 — Collectors.filtering и Collectors.flatMapping. Хорошие дополнения, которые усилят взаимопроникновение коллекций, стримов и лямбд друг в друга.

2.5. Динамические тесты в JUnit

Ссылка

Официальный релиз JUnit 5 все ближе, поэтому самое время потрогать killer feature новой версии — динамические тесты.

3. Мудрость


3.1. Природа знаний


3.2. Open source


3.3. С больной головы на здоровую


3.4. Модные тренды



4. Юмор


4.1. Сплетни

image
Источник: joyreactor.cc/post/1014100

Выпуски: Предыдущий

Поделиться с друзьями
-->

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


  1. 23derevo
    06.09.2016 02:37
    +11

    Новоcть дня для любителей перфоманса:


  1. poxu
    06.09.2016 19:08
    +6

    Картинка с курями неграмотная. Код не только устаревший, но ещё и не рабочий.


    Вместо


    Кукарек<кококо> кукарек = new Кукарек<кококо>;

    надо


    Кукарек<Кококо> кукарек = new Кукарек<>();

    То бишь мало того, naming conventions нарушены и лишний раз параметр шаблона написан там, где сейчас type inference есть, так ещё и скобки круглые у конструктора вовсе забыли.


    Ну кто, после такого кода джаву всерьёз воспринимать будет? Вот из за таких курей байки про джаву и ходют.
    Стыдно! Стыдно товарищи!


  1. sidristij
    07.09.2016 09:01

    1.5. Поэтому в седьмой версии прорывных улучшений не ожидается

    Ну я бы так не сказал )) Одни только паттерны много чего стоят.