Описание
Курс объясняет различные аспекты создания многопоточных приложений, от фундаментальных механизмов на базе класса Thread и интерфейса Runnable вплоть до динамически подгружаемых пулов подпроцессов в связке с объектами ExecutorService; также рассмотрены готовые библиотечные решения для целого ряда более специализированных, но в то же время широко распространенных задач (синхронизаторы, потокозащищенные прокси-коллекции, атомарные классы и т.д.). В модуле по локализации разобраны вопросы создания интернационализируемых (I18N) приложений, в т.ч. ресурсов с привязкой к социокультурным и экономическим особенностям целевого региона. Date/Time API, реализованный в Java 8, позволил устранить целый комплекс проблем, присущих старым, мутирующим хроноклассам, и переход на этот новый механизм является одним из канонических приемов модернизации кодовой базы типичного промышленного приложения. В заключительном модуле рассмотрены современные приемы работы с файловой подсистемой ввода-вывода, реализованные в 7-ом релизе Java (NIO.2); отметим, что владение этой тематикой является обязательной предпосылкой к изучению асинхронной Java, которая тесно связана с парадигмой т.н. реактивного программирования, рассматриваемого на дальнейших этапах программы профподготовки современного Java-разработчика. Материал данного учебного блока полностью входит в тематику сертификационного экзамена.
Обучение проходит в смешанном формате:
-
Самостоятельное изучение материалов курсов в системе дистанционного обучения (СДО). По окончании теоретической части курса участникам будет предложен тест для проверки и подтверждения уровня знаний.
-
Практические сессии с преподавателем для обсуждения вопросов по практической части курса и реализации задач.
Баланс теории и практики - 30\70, что позволяет сосредоточиться на практических аспектах и сформировать востребованные навыки у выпускников курса.
удостоверение о повышении квалификации государственного образца
Целевая аудитория
Предварительная подготовка
Разбираемые темы
-
1. Основы работы с подпроцессами
-
2. Многопоточные решения в стандартной библиотеке
-
3. Упрощение синхронизации: Locking Framework
-
4. Рекурсивная многопоточность: Fork / Join Framework
-
Проект и живая практика с преподавателем
-
Итого 42 часа: теория – 16 ч. (38%), практика – 26 ч. (62%)