Java One 2012:Отчет Белобородова Дмитрия

Материал из CustisWiki

Перейти к: навигация, поиск

Конференции Java One и Oracle Develop 2012 в России проходили 17-18 апреля в здании Российской Академии Наук (Ленинский проспект, 32a). Несколько параллельных треков включали доклады, связанные с языком Java и прочими технологиями Oracle. В холлах были также стенды самой компании Oracle и компаний-партнеров. Меня заинтересовали только доклады, касающиеся языка Java, впечатления о посещении которых далее и приведены.

Общие впечатления, что понравилось на конференции:

  1. Интересные темы докладов, причем, сделанные не только работниками Oracle.
  2. Удовлетворительные условия технического характера, созданные для просмотра и прослушивания докладов:
    • презентации демонстрировались на больших экранах, хорошо видных из любой части аудитории;
    • наличие синхронного перевода (качество не оценивал).
  3. Раздаваемый участникам конференции набор включал необходимый минимум (расписание докладов со схемой аудиторий, ручку, блокнот) и был почти без рекламной макулатуры.
  4. На открытии продемонстрирован забавный клип Java Life, показанный впервые на американском Java One 2011.

Что не понравилось:

  1. Катастрофическая ситуация с питанием, особенно во второй день конференции. Совсем-совсем ничего не досталось на обед минимум половине людей. Пришлось даже уйти чуть раньше с доклада до перерыва перед последними двумя докладами, чтобы досталось хоть что-то поесть и смочь досидеть до конца конференции. Учитывая тот факт, что это первая на моей памяти платная оракловская конференция (оказывается, прошлогодняя тоже была платной), просто непонятно, почему нельзя было избежать проблемы с едой...
  2. В первый день не удалось попасть в синий зал на два последних доклада (не было свободных мест), подобное уже было в прошлом году на питерском Java Tech Day: слишком маленькое помещение или неправильно выбраны аудитории организаторами.

Файлы презентаций пока недоступны на официальном сайте, но ссылки на некоторые доклады появились в отзыве о конференции на Хабре.

Подробная программа конференции
Коридор со стендами
Стенд с расписанием и планом
Вход в большой зал
Сцена большого зала
Пуфики в коридоре

Отзывы о докладах расположены в хронологическом порядке их посещения и оценены по пятибалльной шкале (Javaduke.pngJavaduke.pngJavaduke.pngJavaduke.pngJavaduke.png).

Первый день

JavaFX 2.1 новое поколение клиентской платформы Java

JavaFX

Александр Кузнецов (Oracle)

Javaduke.pngJavaduke.pngJavaduke.pngJavaduke.pngJavaduke.png

Рассказывалось о второй версии библиотеки JavaFX для построения т.н. Rich Internet Applications. Все приведенные примеры и описанные возможности относились к версии 2.1 Developer Preview, хотя большая часть применима и к текущей версии 2.0.3. Насколько я понял (могу ошибаться), докладчик как раз является одним из разработчиков JavaFX.

Ключевые вещи, которые я понял после прослушивания доклада (кроме общих слов об архитектуре, возможностях и т. д.):

  • в новой версии практически отказались от использования JavaFX Script, как сложного для изучения и использования;
  • интерфейс может описываться декларативно в виде FXML-файлов и/или написанием кода;
  • JavaFX позиционируется как замена стандартной библиотеке Swing для построения интерфейса.

В конце доклада Александр показал впечатляющую демо использования JavaFX, включающую в т.ч. интеграцию с Kinect. Эту же демо в этот день увидел еще раз, Александр запускал ее повторно по просьбе докладчицы Angela Caicedo.

Насыщенный доклад и хорошая демонстрация возможностей Java FX.

Визуальный редактор JavaFX интерфейса SceneBuilder и язык разметки интерфейса FXML

Сергей Гринев (Oracle)

Javaduke.pngJavaduke.pngJavaduke.pngJavaduke.png

Логическое продолжение рассказа предыдущего докладчика. В той же аудитории было показано использование визуального редактора SceneBuilder, использующегося для создания FXML-файлов описаний интерфейса в JavaFX.

Запомнилось, что

  • для связывания кода с FXML-описанием используется аннотация @FXML;
  • для описания внешнего вида используется СSS;
  • для локализации приложений традиционно применяются .properties-файлы;
  • возможно разбиение на части FXML-файлов;
  • можно использовать JavaScript;
  • предоставляется возможность расширять набор стандартных интерфейсных элементов.

Неплохое вводное описание перед возможным использованием SceneBuilder.

JavaOne технический пленарный доклад

Dalibor Topic, Angela Caicedo, Roger Brinkley, Arun Gupta (Oracle)

Javaduke.pngJavaduke.pngJavaduke.png

Dalibor Topic упомянул (в очередной раз) про основные возможности Java 7:

  • Project Сoin (JSR 334) (небольшие приятные улучшения языка);
  • Invoke Dynamic (JSR 292) (поддержка динамической типизации, если я не ошибаюсь);
  • Fork/Join Framework (об этом был отдельный доклад, описание ниже).

Angela Caicedo рассказала о JavaFX не больше того, что уже услышал от Александра Кузнецова и Сергея Гринева. Именно на ее докладе еще раз посмотрел красивую демку.

Roger Brinkley поведал о развитии мобильной платформы Java ME.

В мини-докладе Arun Gupta рассказал о поддержке облачных вычислений («Java EE 7: Developing for the Cloud»), наиболее полезным показалась как раз информация в его изложении.

Средненько и не очень интересно.

Практическое использование веб‐компонента в клиентских приложениях на Java

Петр Железняков (Oracle)

Javaduke.pngJavaduke.png

Рассказал о

  • возможности встраивания компонентов JavaFXв клиентские приложения (в т.ч. использующие Swing);
  • возможности вызова JavaScript из Java-кода и наоборот.

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

Не очень информативно, ожидалось что-то большее.

Повторное развертывание не потребуется: мгновенное обновление в процессе создания и работы Java приложений

JRebel

Антон Архипов (ZeroTurnaround), презентация

Javaduke.pngJavaduke.pngJavaduke.pngJavaduke.png

Продукты JRebel и LiveRebel предназначены для обновления и автоматизации приложений без необходимости их повторного развертывания. Презентация проиллюстрирована живой демонстрацией продуктов, проведено сравнение JRebel с аналогичным продуктом Hotswap.

Любопытная тема и хорошая демонстрация.

Второй день

The Garbage‐First ‐ новый сборщик мусора в HotSpot JVM

Владимир Иванов (Oracle), презентация

Javaduke.pngJavaduke.pngJavaduke.pngJavaduke.pngJavaduke.png

Доклад о новом сборщике мусора Garbage‐First (G1) в JVM:

  • об основах сборки мусора;
  • архитектуре G1;
  • метриках производительности сборщика мусора;
  • сравнении G1 с другими типами сборщиков мусора (SerialGC, ParallelGC, CMS);
  • рекомендации, когда использовать и не использовать G1.

Познавательно, хорошее владение темой и уверенные ответы на вопросы.

Автоматизация тестирования JavaFX приложений. Тестирование пользовательского интерфейса для разработчиков

Александр Ильин, автор Jemmy

Александр Ильин (Oracle)

Javaduke.pngJavaduke.pngJavaduke.pngJavaduke.pngJavaduke.png

Автором доклада являлся Александр Ильин, автор библиотеки Jemmy, предназначенной для написания тестов пользовательского интерфейса Desktop-приложений, написанных на Java. В нескольких наших Swing-приложениях написаны тесты с использованием Jemmy, впечатления положительные.

Александр рассказал о дальнейшем развитии Jemmy:

  • в версии 3 добавлена поддержка JavaFX;
  • есть приложение (запускал его) Jemmy Browser, показывающее иерархию интерфейсных элементов в древовидном виде;
  • в ходе разработки версии 3 выделен Jemmy Core для упрощения поддержки различных графических библиотек, что применено в т.ч. на JavaFX.

Докладчику помогал Сергей Гринев, иллюстрирующий рассказываемое live-coding'ом.

Полезный доклад, хорошо дополняющий два предыдущих про JavaFX.

Fork/Join: особенности реализации, модели использования, производительность

Fork/Join

Алексей Шипилёв (Oracle), презентация

Javaduke.pngJavaduke.pngJavaduke.pngJavaduke.pngJavaduke.png

Очень живо сделал доклад об автоматизации выполнения параллельных задач (и слияния результатов их выполнения), т.н. Fork/Join, появившиеся в JDK7.

Ключевые слова:

Доступна презентация, которую можно посмотреть.

Живое изложение материала, интересные вопросы из зала.

Мигрируем на JavaEE со Spring

Bert Ertman, Paul Bakker (Luminis), презентация

Javaduke.pngJavaduke.pngJavaduke.png

Разработчики из голландской компании Luminis поделились опытом миграции с фрейемворка Spring на использование стандартных возможностей Java EE 6. Подробно описаны требуемые при этом шаги:

  1. Обновление версии Spring;
  2. Замена старых фреймворков (ORM, веб-фрейемворков и т.д.)
  3. Запуск Spring и Java EE совместно (side by side).
  4. Добавление JavaEE-кода с временным сохранением Spring.

и т. д.

Вынужден был раньше уйти с доклада, чтобы попытаться на последнем ланче перехватить хоть что-то из еды (на обеде ничего не досталось), чтобы смочь дослушать еще два доклада.

Оригинальная презентация, подробная пошаговая инструкция по миграции.

Расчленяя Disruptor: магия и технология высокой производительности

Disruptor

Руслан Черёмин, (Yandex), презентация

Javaduke.pngJavaduke.pngJavaduke.pngJavaduke.pngJavaduke.png

Докладчик привел результаты любопытного собственного исследования нашумевшего несколько месяцев назад «фреймворка высокопроизводительного многопоточного конвейера» под названием Disruptor компании LMAX. По этой теме на русском языке были статья на Хабре и заметки автора доклада в собственном блоге.

Презентация демонстрирует последовательное приближение автора к результатам, полученным авторами Disruptor. В занимательном изложении показывается, какие именно приемы обеспечивают подобную производительность и скорость обработки.

Отличный доклад, интересная тема исследования.

Язык Kotlin для платформы Java

Kotlin

Андрей Бреслав (JetBrains), презентация

Javaduke.pngJavaduke.pngJavaduke.pngJavaduke.pngJavaduke.png

Последние пару лет компания JetBrains (IntelliJ IDEA, ReSharper, TeamCity и т. д.) занималась разработкой нового языка программирования Kotlin. Совсем недавно выпущен первый официальный «milestone» проекта Kotlin, о чем его главный идеолог Андрей Бреслав сообщал в т.ч. на Хабре.

Доклад был посвящен вопросам

  • почему и зачем была начата разработка языка;
  • примеры синтаксиса, сравнением с аналогичным кодом на Java;
  • дальнейшие планы развития (выпуск «беты» после трех «майлстоунов»).

Основной целью была популяризация и реклама языка с ответами на много-много заданных вопросов.

Доступна для проcмотра презентация (сделана с помощью сервиса Prezi). В качестве дополнения к докладу можно послушать недавний выпуск 275 популярного подкаста Радио-Т, на который был приглашен Андрей Бреслав для рассказа о Kotlin.

Очень интересный доклад, хорошие вопросы из зала и хорошие ответы на них.

Выводы

  1. Хороший подбор докладов, высокий уровень докладчиков и слушающей аудитории (4-4.5 по пятибальной шкале).
  2. Наличие иногда нескольких параллельно читаемых одинаково интересных докладов с возможностью ознакомления с презентациями непосещенных. Постараюсь посмотреть, по крайней мере, доклады, на которых не побывал:
  3. Неважная организация мероприятия (3.5 по пятибальной шкале):
    • невозможность посещения некоторых докладов (по причине переполненной аудитории);
    • малополезный сайт с невнятной навигацией (достаточно трудно выбрать из Треки, Расписание и Сессии при желании всего лишь скачать и распечатать расписание докладов);
    • до сих пор не выложены централизованно все презентации (или ссылки на них);
    • большие проблемы с питанием.

Полезная интересная конференция с, увы, ненулевой вероятностью прослушивания докладов голодным, стоя в дверях переполненной аудитории.


Внимание! Данная статья выбрана для репликации во внешнюю базу знаний компании. Пожалуйста, не допускайте в этой статье публикацию конфиденциальной информации, ведения обсуждений в теле статьи, и более ответственно относитесь к качеству самой статьи — проверяйте орфографию, пишите по-русски, избегайте непроверенной вами информации.