Дайджест интересных событий из мира Java, и вокруг нее #8 (01.08.2016 — 31.08.2016)

    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

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

    Ads
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More

    Comments 3

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


      Народ в чятиках активно обсуждает, что пора мигрировать с OracleJDK на IcedTea :)
        +6

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


        Вместо


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

        надо


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

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


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

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

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

          Only users with full accounts can post comments. Log in, please.