Jet конференция 2016. Мои впечатления

Вот и прошла уже вторая Java Jet конференция по программированию в Минске. Не может не радовать тот факт, что постепенно сообщество Java программистов в Беларуси набирает обороты и с каждым разом собирает все большее число заинтересованных. В этом году процесс конференции был разделен на 2 дня. Первый день – день тренингов на такие темы как Dive into Hadoop от Алексея Зиновьева и Architecture Kata от Jaroslaw Palka. Второй день – день докладов.

 

Java World 2016

 

Немного о тематике тренингов

Любой желающий мог выбрать более интересную ему тему и погрузится в нее в компании единомышленников, под наблюдением профессионалов. Лично для меня, более интересной оказалась вторая тема. Но давайте все по порядку.

Dive into Hadoop – это тренинг, предназначенный для Java программистов, желающим начать работу с Big data, но не знающих с чего начать. Целью тренинга было познакомить аудиторию с компонентами Hadoop, погрузится в теорию алгоритмов MapReduce и тестирования.

Второй тренинг, Architecture Kata, направлен на развитие навыков построения и презентации архитектуры приложений. На эту тему написано множество книг и лекций. Кажется, ну что же в этом сложного? Прочитал, и уже вроде как все просто и понятно. А сложностей, на самом деле, предостаточно. Кроме технической стороны приложения, ведь есть еще и такие моменты, как возможность недопонимания между заказчиком и инженером. Заказчик может вовсе не знать, чего конкретно хочет. У него просто есть идея, и чемодан с деньгами. Научится конвертировать идею в реальный проект, понятный как разработчикам, так и заказчику – вот цель данного тренинга, которая была с успехом достигнута!

 

Silver Screen Java 2016

 

Второй день

Конференция проходила в кинотеатре Silver screen в ТЦ Arena City. Был охвачен большой стек технологий и тем, среди которых любой сможет найти себе что-то интересное. Доклады были поделены на 4 потока: Control your data, Ease the life with %s, How about some testing, Your inevitable choice. Кинотеатр имеет так же 4 зала, каждый из которых был выделен под отдельный поток. Это оказалось очень удобно как для слушателей, так и для докладчиков. Расписание было организовано таким образом, что время перерывов со всех потоков совпадало, во время которых можно было перейти из одного зала в другой, обсудить затронутые темы лично с докладчиком или со своими коллегами, выпить кофе или просто отдохнуть.

Хочу отметить, что среди представленных докладов, большое внимание было уделено таким актуальным на сегодняшний день тем как обработка больших данных, с каждым днем набирающий популярность Котлин, различные проблемы и методы тестирования, микросервисы, и что-то даже из области философии программирования на Java.

Наибольшее впечатление произвели на меня такие доклады как «No container: a Modern Java Stack with Bootique» Andrus Adamchik, «An Immutible Object-Oriented Web Framework» Yegor Bugaenko, «Advanced Testing Tools» Tomasz Borek, «Standardize Caching in Java: JCache» Alparslan Avci.

 

Jet conference 2016

 

Технология программирования веб приложений стремительно меняется в течение времени. От имеющихся возможностей языка и фреймворков требуется все больше возможностей, скорости, ресурсов. Без внимания не остается так же и удобство переносимости проекта с локального сервера на продакшн, горизонтальной масштабируемости и прозрачности работы сервисов. Andrus Adamchik рассказал о довольно молодом фреймворке Bootique, который представляет собой нечто близкое к Dropwizard и Spring boot. Это можно назвать очередной попыткой привести разработчиков от контейнерной модели проектирования к модели микросервисов. Выглядит многообещающе. Что ж, почему бы не попробовать?

В докладе Егора Бугаенко предлагается взглянуть на привычный мир объектное ориентированного программирования немного в другом ключе, попытаться уйти от императивного метода программирования к декларативному. ООП в привычном понимании Java разработчиков выглядит как создание объектов, инициализация его полей, и бесконечное диктование каких-либо инструкций, которые необходимо этому объекту выполнить. В докладе Егора представлена концепция программирования представляющая из себя метод проектирования классов таким образом, чтобы в конце концов от программиста требовалось лишь создать объект класса определенным образом, сказать ему ЧТО именно от него требуется, а не КАК это требуется сделать. С одной стороны подобный стиль написания кода вызывает опасения в точки зрения наглядности. Алгоритм работы может быть слишком запутанным и непонятным. С другой стороны возможно уже и не надо столь вникать в суть работы классов. Программисту лишь необходимо создать объект, а все остальные заботы он уже примет на себя.

Тестирование является неотъемлемой частью разработки программного обеспечения. Оно так же постепенно растет в масштабах вместе с самим проектом. Представленные Томашем Бореком инструменты тестирования удивляют своим многообразием и удобством. Когда возникает необходимость написать несколько юнит тестов, отличающихся лишь набором входyых параметров, можно сократить их количество путем параметризации. Среди рассмотренных фреймворков параметризованного тестирования были рассмотрены такие как JUnit Zohhak, TestNG,  JUnitParams и многие другие.

Alparslan Avci рассказал слушателям как ускорить работу приложения, что такое распределенное кеширование и что такое стандарт JCache. Был приведен наглядный пример, показывающий простоту и пользу использования JCache. А точнее алгоритм действий при добавления, изъятия данных из кеша и обработки исключительных ситуаций.

 

Java World audiance

 

Итоги

Конференция Jet позволяет специалистам обменяться опытом, открыть для себя что-то новое, обсудить насущные проблемы и их решение. Не может не радовать тот факт, что такого масштаба конференция прошла в Минске и собрала на себе такое большое количество докладчиков и слушателей. Все доклады были представлены хорошо, погрузится в предоставляемую информацию оказалось легко и комфортно. Единственное что не может не расстраивать, это отсутствие возможности присутствовать на всех интересующих докладах, когда они идут одновременно в нескольких залах. Но благо можно рассчитывать на видеозаписи докладов, ожидаемые в ближайшее время. Большое спасибо организаторам предоставленную возможность и докладчикам за интересные темы и тренинги. С нетерпением жду Java Jet 2017!