JPoint 2016 Student Day — первые доклады

от автора

Ровно через месяц, в воскресенье, 24 апреля, в Москве пройдет Java-конференция для студентов JPoint Student Day. Две недели назад я уже писал об этой конференции — что это такое, чего ждать и кого мы ожидаем на ней увидеть. Всего на конференции будет около двух десятков докладов, половина из них уже анонсирована. Давайте вместе на них посмотрим.

Вот они:

  • Никита Липский, Excelsior — JVM: краткий курс общей анатомии;
  • Роман Елизаров, Devexperts — Многопоточное программирование — теория и практика;
  • Виктор Гамов, Hazelcast — Распределяй и властвуй: введение в распределенные системы;
  • Антон Архипов, ZeroTurnaround — Байткод для любознательных;
  • Дмитрий Чуйко, Oracle — Чёрная метка, StampedLock и его друзья;
  • Михаил Дударев, Licel — Java Security от А до Я;
  • Виктор Полищук, Infopulse — Веб-приложение, о котором я мечтал;
  • Егор Бугаенко, Teamed.io — Объектно-Ориентированное Враньё;
  • Nicolas Fränkel, hybris — Refactoring your legacy code for better maintainability.

Неплохо для студенческого ивента?

Спикеры — авторитетные как на подбор: Никита Липский — разработчик виртуальных машин, Роман Елизаров — эксперт по многопоточности мирового уровня и Java Champion, Антон Архипов — Java Champion, гуру класслоадинга и модификации байткода (JRebel), Виктор Гамов — Senior Solutions Architect в Hazelcast, популярнейшем In-Memory Data Grid и т.д. Про каждого из наших спикеров можно рассказывать долго.

Напомню, что эта конференция — для студентов и преподавателей. Если вы принадлежите к числу первых или вторых — добро пожаловать под кат, где я подробнее расскажу об этих докладах.


lipskyНикита Липский, Excelsior — JVM: краткий курс общей анатомии

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

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


elizarovРоман Елизаров, Devexperts — Многопоточное программирование — теория и практика

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

Мы рассмотрим теоретические модели, которые используются для описания поведения многопоточных программ. Будут рассмотрены понятия последовательной согласованности и линеаризуемости (с примерами) и объяснено зачем это все-нужно программисту-практику. Будет показано как эти понятия применяются в модели памяти Java с примерами кода приводящего к неожиданным результатам с точки зрения человека, который с ней не знаком.


gamovВиктор Гамов, Hazelcast — Распределяй и властвуй: введение в распределенные системы

Информации, зараза, много, и ее становится всё больше. Волей-неволей приходится сталкиваться с пресловутыми «распределенными вычислениями». Что же делать? Реплицировать данные? Как распределять вычисления? У каждого подхода есть свои преимущества и недостатки, как и очевидные, так и те, что не всегда лежат на поверхности.

Hazelcast (in-memory data grid с открытым исходным кодом) предоставляет множество инструментов для организации распределенных вычислений. После небольшого введения и обзора терминов, на основе примеров кода, я покажу, как использовать Hazelcast для распределенной обработки данных.


arhipovАнтон Архипов, ZeroTurnaround — Байткод для любознательных

Программы на Java состоят из классов, а классы состоят из байт-кода. Любой нормальный Java-программист впервые увидев байт-код озадачится — Что это!? Как это вообще читать? Что с этим можно сделать?.. Если вам интересно, что делает Java-компилятор с исходным кодом программы на Java, приходите на лекцию и мы рассмотрим азы по работе с байт-кодом, как его читать, и какие существуют инструменты для работы с байт-кодом.


chuykoДмитрий Чуйко, Oracle — Чёрная метка, StampedLock и его друзья. Как не нарушить пиратский кодекс

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


dudarevМихаил Дударев, Licel — Java Security от А до Я

Все то, что я бы хотел услышать о Java Security, если бы мне об этом рассказали:

  • JCA/JCE — шифры, подписи, хеши и другие животные;
  • Как защитить свой песочный замок, от детской лопатки (Java Sandbox, OSGI & etc);
  • Алиса Бобу прислала кораллы (что нужно знать о SSL/TLS).

polishchukВиктор Полищук, Infopulse — Веб-приложение, о котором я мечтал

Я работаю над веб-приложениями с начала моей Java карьеры. Я страдал со всеми этими Struts, JSF, Spring MVC, GWT и т.д. Но времена изменились, появилось больше готовых клиентских инструментов, новые специализации и потенциальные угрозы.

Я хочу рассказать про цену, которую мы платим разрабатывая веб-приложение на Java. А также предложить решения, которые могут спасти проект – другой. Ведь понимание проблемы – это уже половина решения.

Я знаю как нельзя. Я пытался создать идеальное создание”. И после нескольких лет мучений, мне кажется я нашел “идеал”. Спешу поделиться.


bugaenkoЕгор Бугаенко, Teamed.io — Объектно-Ориентированное Враньё


frankelNicolas Fränkel, hybris — Refactoring your legacy code for better maintainability


Сайт конференции со всей информацией: http://students.javapoint.ru/

Профессиональная конференция для студентов с экспертами такого уровня — уникальное явление не только для России. Мы изучали, мы знаем. Могу ответственно заявить, что в мире подобные мероприятия можно пересчитать по пальцам одной руки.

И это не только заслуга нашей команды. Будем откровенны, нам с вами просто очень повезло, что многие Java-эксперты мирового уровня говорят на русском языке.

ссылка на оригинал статьи https://habrahabr.ru/post/280049/