Читаешь посты в нашем блоге и думаешь: «Кому они нужны, я на конференции не езжу».
А на конференции вы ходите не потому, что хотите узнать какие-то конкретные вещи, а не просто расширить свой кругозор.
Да, для некоторых это имеет смысл! Вы не единственный, кто так думает. Специально для вас мы сделали нечто совершенно иное.
За пару дней до Джокера пройдут две полноценные тренировки.
Каждый тренинг состоит из двух дней по 6-8 часов интенсивного обучения конкретным вещам.
Группы небольшие, поэтому тренер работает с вами лично — рассказывает, дает задания, смотрит, как вы их выполняете, дает советы.
Преподавать Spring будет человек, которого вы все знаете — Евгений Борисов, один из лучших специалистов по Spring за пределами Pivotal. Профилирование Java-приложений будет преподавать Алексей Рагозин, инженер и тренер с более чем 10-летним опытом разработки высоконагруженных распределенных систем в различных отраслях.
Подробнее об этих тренингах вы можете прочитать под катом.
На рисунке показана типичная трассировка стека Spring. На случай, если вы давно его не видели.
Весенний Потрошитель Можно ходить пешком, можно взять такси, можно получить права и самому управлять автомобилем, но максимальный контроль — с тем, кто еще и понимает, что происходит под капотом.
Этот тренинг поможет вам пройти путь от пешехода до механического гонщика.
Мы научимся не просто использовать Spring, но и расширять его возможности, а для этого нам придется залезть глубоко под капот. Давайте поговорим обо всех основных компонентах Spring, обсудим различные типы контекстов и их конгломераты, рассмотрим интеграцию Spring с другими популярными технологиями, такими как Hibernate, веб, безопасность, валидация.
Обучение будет максимально практичным.
Много кода будет написано вживую.
Будет весело, жестко, но максимально понятно.
Ключевые темы
1 день
- Базовые концепции, шаблоны проектирования и философия Spring, углубленное размышление, написание собственного фреймворка в стиле Spring
- Различные типы контекстов (XML, аннотации, Java Config, Groovy Script)
- Определение компонента
- БинПостпроцессоры
- Динамический прокси + CGLib
- BeanFactoryПостпроцессоры
- Spring аннотации и написание собственных аннотаций
- Как расширить возможности Spring
- Квалификации
- Фабричный компонент и наследование BeanDefinition
- Конфигурация Java
- Лучшие практики: смешанные контексты и когда что использовать, обновление прототипов в бинах Singleton, двойные прокси, поиск метаданных исходного класса в прокси.
- Шаблоны проектирования с помощью Spring
День 2
- Обновление прототипов в Singleton
- Пользовательская область
- Весна АОП
- Письменные аспекты
- Лучшие практики АОП
- Профили и условные обозначения
- Введение в ORM на примере JPA + Hibernate
- Использование Hibernate через Spring
- Декларативные транзакции весной
- Дополнительные модули Spring (Spring Data, Spring Data Rest, Spring MVC)
- Введение в Spring Boot
- Управление зависимостями
- Основные аннотации Spring Boot
-
@EnableAutoConfiguration
- SpringПриложение
- Окружающая средаПостпроцессоры и окружающая среда
- Приложение.
свойства/YML
- Закуска
- Существующие стартеры
- Весна.
фабрики
- Пользовательский стартер
Евгений Борисов
Ная Технологии
Евгений пишет на Java с 2001 года и принимал участие в большом количестве корпоративных проектов.
Пройдя путь от простого программиста до архитектора и устав от рутины, он стал художником-фрилансером.
Сегодня Женя пишет и проводит курсы, семинары и мастер-классы для различной аудитории: живые курсы по J2EE для офицеров израильской армии, Spring на WebEx для румын, Hibernate через GoToMeeting для канадцев, Troubleshooting и Design Patterns для украинцев.
Что где когда
Дата и время : 17-18 октября 2018 г.
Расположение :
Санкт-Петербург
Офис Нексигн
ул.
Уральская, 4 Требования к оборудованию для участников : Желательно иметь ноутбук со следующим программным обеспечением: IntelliJ IDEA (настоятельно рекомендуется 2017+), Java 8. Как зарегистрироваться : заполните форму, расположенную на официальном сайте, в самом низу этой страницы .
Ээффективное профилирование Java-приложений На практике задачи, требующие использования профилировщика, возникают в очень критические для бизнеса моменты, когда права на ошибку не так много.
Поэтому у разработчиков обычно нет возможности на опыте научиться эффективно использовать этот инструмент. Конечно, исключением являются специальные инженеры по производительности, которые занимаются профилированием полный рабочий день — но даже им нужно учиться друг у друга.
Однако эффективное использование профилировщика в критической ситуации может резко сократить время решения проблемы (от недель и месяцев до нескольких дней), а иногда и решить судьбу всего проекта.
Профилирование необходимо.
Это обучение предоставляет разработчику ключевые знания и навыки для эффективного использования профилировщика в своей работе и позволяет восполнить описанный выше пробел в навыках.
Будет полезно Java-разработчикам и Java-архитекторам (все уровни подготовки), инженерам по большим данным и SRE (Site Reliability Engineer).
Ключевые темы
- Секция 1 .
Введение.
Нисходящий подход к анализу проблем.
Классификация типичных проблем и дерево решений.
Базовая диагностика проблемного приложения с помощью инструментов JDK.
- Раздел 2 .
Поиск «горячего кода» методом выборки дампов потоков.
Работа с VisualVM. Визуализация результатов выборки: дерево вызовов, инвертированное дерево вызовов, Flame Graph.
- Раздел 3 .
Вывоз мусора и его влияние на производительность.
Анализ логов сборки мусора.
События сбора мусора в Mission Control/Java Flight Recorder. Критерии нормальной работы сборщика мусора.
- Раздел 4 .
Анализ содержимого памяти JVM. Использование гистограмм классов для анализа статической и динамической нагрузки на память.
Получение дампа памяти JVM и работа с ним.
Использование языка запросов OQL для анализа дампов.
- Раздел 5 .
Углубленная работа с Java Flight Recorder. Выборка распределения памяти и другие функции инструмента.
- Раздел 6 .
Исправляем тему выборки дампов потоков.
Демонстрация систематической ошибки оценки, присущей выборке.
- Раздел 7 .
Использование трассировки для поиска узких мест. Трассировка с помощью Visual VM. Отслеживание с помощью BTrace. Анализ проблем многопоточности.
Демонстрация различных вариантов межпоточных блокировок (взаимных блокировок) и методов их обнаружения.
- Раздел 8 .
Заключительная лекция.
Особенности донесения промежуточных результатов анализа для нетехнической аудитории.
Сочетание профилирования и других методов исследования.
Алексей Рагозин
Автор курса и тренер имеет более чем 10-летний опыт разработки высоконагруженных распределенных систем в различных отраслях.
Алексей активно выступает на российских и зарубежных конференциях по программному обеспечению, а также участник Open Source.
Что где когда
Дата и время : 17-18 октября 2018 г.
Расположение :
Санкт-Петербург
Офис компании OpenWay
Наб.
Петроградская, 36, лит. «А».
План тренировок : 8 академических пар (90 минут), сгруппированных по дням.
Требования к оборудованию для участников : участникам тренинга необходим ноутбук со следующим программным обеспечением:
- Java Development Kit (JDK) от Oracle — версия 8u144 или новее;
- Apache Maven — версия не ниже 3.0.5;
- git-клиент;
- любая интегрированная среда разработки Java;
- можно использовать любую операционную систему.
Теги: #программирование #Высокая производительность #Конференции #java #joker2018
-
Причины Отремонтировать Компьютер
19 Oct, 24 -
Дизайнер И Продакт-Менеджер Ищет Работу
19 Oct, 24 -
Самые Скачиваемые Приложения 2011 Года
19 Oct, 24 -
Hp Хочет Приучить Нас К Бумажному Интернету?
19 Oct, 24 -
Нло Забрал Денискин?
19 Oct, 24