Марк Рейнхольд О Jdk 7, Замыканиях, Jrockit И Hotspot

Oracle TechCasts возобновился.

Сегодня [т.е.

16 февраля] Марк Рейнхольд рассказал о JDK 7 и ответил на вопросы зрителей.

Рейнхольд рассказал о наиболее важных вещах, над которыми он работает в проекте OpenJDK, и раскрыл некоторые предварительные наброски, направленные на объединение кода JRockit и HotSpot. Проект Lambda, обычно называемый «замыканиями для Java», также был темой обсуждения.

Первая новая функция JDK 7, о которой рассказал Рейнхольд, — это попытка разбить платформу Java SE на более мелкие части, получившая название Project Jigsaw. Помимо повышения производительности, Рейнхольд видит ключевое преимущество Jigsaw в возможности не только масштабировать Java-системы, но и уменьшать их масштабы, в том числе для устройств с небольшим объемом памяти или дискового пространства.

Jigsaw позволит вам установить на такие устройства только необходимую часть JDK, не требуя при этом необходимых для всего JDK 60 МБ [Шемет в комментариях отметил, что речь идет о JRE, а не о JDK].

Кроме того, Jigsaw также должен решить проблему.

"ada.jar" Однажды и на всегда.

Разработчики наконец-то получат возможность опробовать Jigsaw в середине марта, когда выйдет сборка 88. Он пока не будет включен в основную платформу, но будет доступен для тестирования.

Вторая основная цель JDK 7 — улучшить поддержку различных динамических языков.

Этот проект добавит к JVM расширения общего назначения, которые позволят языкам, отличным от Java, достигать производительности, сравнимой с самой Java. Project Coin внесет в язык Java существенные дополнения, сравнимые с изменениями, внесенными в Java 5. Основными нововведениями Java 5 были дженерики и цикл for-each. Как и они, Coin должен облегчить повседневное программирование.

Рейнхольд упомянул несколько дополнений к Coin, а именно «удивительно полезные» строки и переключатели, а также оператор ромба, который он назвал «чрезвычайно полезным для сложных обобщенных типов».

Coin также позволит вам писать на Java, используя более компактный синтаксис, подобный Python. Кроме того, Рейнхольд рассказал об аннотациях типов и новом API для работы с файловой системой.

Он сказал, что в JDK 7 наконец-то появится настоящий API для файловой системы, а то, что было в предыдущих версиях, иначе как шуткой назвать нельзя.

Аннотации типов должны значительно улучшить возможности статической проверки программ.

Он назвал это «проверкой типа на стероидах».

На более высоком уровне новая система fork-join должна принести большие преимущества наряду с по-настоящему параллельными потокобезопасными загрузчиками классов.

Один зритель спросил его о JSR 310, API даты и времени.

Он сказал, что очень хотел бы увидеть завершение этой работы, которая долго откладывалась.

Наконец, Рейнхольд объяснил, почему он запустил Project Lambda с целью добавления замыканий в Java 7. Он сказал, что когда идея замыканий в Java была впервые предложена, она не была достаточно мотивирована, и ни одно из предложений не было встроено в язык.

Растущее использование многоядерных процессоров изменило ситуацию, и теперь он считает, что с настоящими замыканиями использовать несколько ядер будет намного проще.

Теперь ему «надоело» искажения, которые ему приходится делать, чтобы выразить в Java такие масштабные операции, как MapReduce. Расширение расписания JDK 7 дало ему возможность вводить замыкания сейчас, а не в JDK 8. По словам Рейнхольда, разработчики хотят, чтобы Java развивалась и «подавала признаки жизни», сохраняя при этом читаемость кода.

Он говорит, что в проекте Lambda уже задействовано много людей, и второй черновик Характеристики почти готов.

Приближается шестая веха, но, в отличие от предыдущей, планов по значительному расширению возможностей нет. Помимо работы над JDK, Рейнхольд участвовал в нескольких встречах с разработчиками из Sun, Oracle и других источников, где обсуждалась возможная интеграция HotSpot и JRockit. Сейчас он находится на стадии исследования, они смотрят, как эти две виртуальные машины сочетаются друг с другом.

По его словам, план постоянно меняется, и они сталкиваются с серьезными проблемами.

JRockit и HotSpot уже много лет находятся в тесной конкуренции, и оба имеют свои преимущества.

JRockit, например, проще поддерживать.

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

Другой зритель спросил Рейнхольда о работе в Oracle и его надеждах на JCP. Рейнхольд ответил, что он уверен, что Oracle сможет расширить членство в JCP, что JCP застряла на долгие годы, и он ожидает, что она наконец закончится.

На встречах, посвященных HotSpot/JRockit, Рейнхольд заметил, что многие технологи Oracle очень открыты для новых идей.

Когда они покупают компании, они иногда отказываются от собственной технологии, если купили лучшую.

В качестве примера он привел WebLogic, приобретенный у BEA. Наконец, Рейнхольда спросили о его планах относительно JavaOne в сентябре этого года.

Он сказал, что собирается делать то, что делает всегда: посещать беседы, общаться с сообществом и ложиться спать допоздна.

Теги: #java #jdk 7 #hotspot vm #openjdk #oracle #Sun #closures #java

Вместе с данным постом часто просматривают: