- Meetup
- Location
JUG — Java User Group, встречи JUG.CHEL — это обсуждение различных технологий из мира Java, обмен опытом, а также просто интересное общение!
Первая встреча JUG.CHEL пройдет 23 марта в IT-парке.
Официальная часть планируется на 3 часа, за это время мы успеем прослушать 3 доклада, задать все интересующие вопросы, а также обсудить подробности с докладчиками в кулуарах и на афтепати.
Программа встречи:
1. Андрей Попов (Naumen) с докладом “Расширяем Enterprise решение с помощью встроенных приложений”.
Если Вы имеете дело с достаточно зрелым продуктом, то добавление даже простой функциональности может привести к необходимости модифицировать сотни файлов исходного кода приложения. При этом нет гарантий, что Ваши изменения не сломают что-то из старого функционала.
В докладе будет показано, как с помощью небольших встроенных приложений можно достаточно легко расширить функционал большого Enterprise решения, не внося изменений в ядро приложения.
2. Максим Зубов (Naumen), с докладом "Модель акторов и параллелизм в JVM с использованием Akka".
Когда заходит разговор о параллелизме, в голову приходят привычные слова: future, thread, synchronized. Эти термины привязаны к системной и аппаратной стороне параллельных вычислений. Но помимо них существуют принципиально другие подходы, например, модель акторов. Для Java и Scala есть полноценная реализация этой модели в инструменте Akka. Предлагается разобраться, какие преимущества есть у самой модели, какие особенности и преимущества есть в реализации, и, самое главное, как ее использовать в привычном jvm-окружении.
3. Дмитрий Чуйко (Oracle), с докладом "CompletableFuture. Хочется взять и применить".
Стандартная библиотека должна помогать выстраивать любые параллельные вычисления, да ещё бы так, чтобы хорошо использовать все ядра. В Java уже довольно давно существуют Thread, Future и ExecutorSevice. Однако часто использование потоков "вручную" порождает типичные ошибки и сложности. Бывает трудно добиться максимальной производительности, и не всегда получается вписаться в общий стиль обработки данных. Java 8 предлагает решения. Например, для модели pull удобнее использовать стримы (j.u.Streams), а для continuation — CompletableFuture. Посмотрим, как просто избавиться от блокирующих вызовов и ада коллбэков. В Java 9 будут устранены некоторые пробелы в API, которые в текущей версии требуют обходных путей, и добавится поддержка модели push.
4. Afterparty