Java-разработчик. Уровень Специалист
Образовательная программа представляет собой комплексный курс для современного Java-разработчика.Начать обучение можно с 5 бесплатных уроков*, а затем перейти к полной версии программы. Программа охватывает все современные аспекты промышленной разработки на Java, начиная с ООП и функционального программирования, погружает в Spring Framework и работу с базами данных, и включает необходимые профессиональному разработчику темы многопоточности, ввода-вывода и архитектуры REST-сервисов. Программа «Java-разработчик. Уровень Специалист» позволит углубить свои знания языка Java, получить опыт решения сложных задач и подготовиться к сдаче сертификации в IBS или к сдаче Oracle сертификации OCPJP
250 ак.ч.
Онлайн
JVA-PRG-002
Java-разработчик. Уровень Специалист
Записаться на курс
Длительность
250 ак.ч.
Локация
Онлайн
Код
JVA-PRG-002
Расписание и цены
15.05.2024 - 10.10.2024
120 000 руб.
* Для физических лиц действует скидка 10% Закажите корпоративное обучение с учетом ваших потребностей
Java-разработчик. Уровень Специалист
Записаться на курс
Длительность
250 ак.ч.
Локация
Онлайн
Код
JVA-PRG-002
Расписание и цены
15.05.2024 - 10.10.2024
120 000 руб.
* Для физических лиц действует скидка 10% Закажите корпоративное обучение с учетом ваших потребностей

Описание

Это фундаментальная программа, с примерами и предоставлением кодовой базы, и занятиями с преподавателем, в рамках которой вы сможете вместе разобрать в деталях практические задачи.

Программа состоит из 7 курсов, содержащих теорию, видео-разборы и задачи. По окончанию каждого курса вы будете отрабатывать навыки на онлайн встречах с преподавателем.

Обучение проходит в смешанном формате:

  • Самостоятельное изучение материалов курсов в системе дистанционного обучения (СДО). По окончании теоретической части каждого курса программы участникам будет предложен тест для проверки и подтверждения уровня знаний.

  • Практические сессии с преподавателем для обсуждения вопросов по практической части курса и реализации задач.

Баланс теории и практики -  40\60, что позволяет сосредоточиться на практических аспектах и сформировать востребованные навыки у выпускников программы.


 1. Курс: ООП и функциональная парадигма

Специфические особенности внутренних классов, статических компонентов, а также обобщенных типов (Generics) и коллекций из Java Collections Framework, которые, являясь обязательными элементами подготовки любого Java-разработчика, служат фундаментом данного учебного блока, чье внимание сосредоточено на ФП, т.е. функциональном программировании: современной парадигме решения вычислительных задач, внедренной в 8-й версии Java. 

Благодаря ФП повышается не только производительность приложений, но и качество создаваемого кода, т.к. облегчается его написание, модификация и последующее сопровождение. В учебных модулях данного блока прослежен генезис, связи и различия между ФП и ООП, подробно представлены встроенные функциональные интерфейсы, на детальном уровне и со множеством примеров рассказано о лямбда-выражениях во всех их формах, т.е. не только канонических, но и сокращенных, в т.ч. через ссылки на методы. 

Упор при освоении Stream API сделан на решении заданий лабораторного практикума, которые охватывают все принципиально важные аспекты ФП: от базовых операций типа filter/map/reduce до collect-агрегирования и конвейерных интерфейсов со специализацией по примитивам. Предпоследний модуль посвящен разбору наиболее существенных нововведений, осуществленных после выхода JDK8 (до 11-го релиза включительно). В заключительном модуле блока рассмотрены широко востребованные шаблоны проектирования, не вошедшие в учебный материал курса базовой подготовки. Следует также отметить, что данный блок почти в полном объеме включен в тематику сертификационного экзамена.        

   

2. Курс: Spring Framework

Данный курс является основополагающим для работы со Spring. Он познакомит вас с основами Spring и Spring Boot - основного фреймворка для разработки бизнес-приложений на Java. Начинается он с описания концепции внедрения зависимостей. Далее мы поговорим о видах бинов и способах их создания и конфигурирования, рассмотрим области видимости бинов, настройку бинов с помощью application.properties, использование профилей, различные аннотации, используемые для внедрения бинов и конфигурирования приложения. Данный курс подойдет для подготовки к сертификационному экзамену по теме Spring Boot


3. Курс: Работа с базами данных

Данный курс познакомит вас с очень важной темой: работой с реляционными Базами Данных из Java/Spring приложений. Начинается он с базовых понятий баз данных, таких как отношения, первичные и внешние ключи, язык SQL. Далее рассматривается работа с Базами Данных из Java. 

Мы познакомимся с подключением и настройкой драйверов баз данных. Далее изучим мэппинг объектно-ориентированной модели на таблицы БД, поймем, почему он необходим, в чем его преимущества и сложности применения, включая знаменитую проблему N+1. Поговорим про спецификацию JPA, ее отличия от Hibernate. 

Завершается этот блок самым мощным на сегодня инструментом для работы с БД - Spring Data. Вы узнаете, как работать с базами данных из Spring приложений, используя доменную модель и реляционную базу данных. Данный курс подойдет для подготовки к сертификационному экзамену по теме Основы БД, JPA/Hibernate, Spring Data.

 

4. Курс: Архитектура REST

В этом курсе изучается архитектура REST. Вы познакомитесь с принципами проектирования REST API, моделью зрелости REST-сервисов. Курс начинается с введения в протокол HTTP, его методы и часто используемые заголовки. Далее рассматривается реализация REST-сервисов с помощью Spring контроллеров. 

Затем вы познакомитесь с уровнями зрелости REST-сервисов, включая самодокументирующиеся сервисы с применением HATEOAS. Финальная часть курса затрагивает инструменты Swagger и спецификацию OpenAPI, которые стали стандартом де-факто для документирования REST API. Данный курс подойдет для подготовки к сертификационному экзамену по теме Spring REST.


 5. Курс: Вспомогательные инструменты

Данный учебный блок представляет собой комплект модулей, каждый из которых посвящен конкретному инструменту, входящему в тулкит современного Java-разработчика. В разделе "Сборщики проектов" разобраны продвинутые возможности Maven / Gradle, не вошедшие в рамки курса базовой подготовки. 

Docker-модуль посвящен практическим приемам контейнеризации приложений, что позволяет запускать их на любой платформе, не требуя заранее создавать специфическое окружение. В разделе CI/CD рассматривается технология автоматизации процессов интеграции нового кода с уже развернутым приложением на примере популярнейшего Jenkins. 

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


6. Курс: Продвинутые аспекты применения Java

Данный блок представляет собой комплект семантически автономных модулей. Так, в первом из них рассмотрены продвинутые аспекты механизма обработки исключений, в частности, конструкции multicatch, передача внешних ресурсов в try-блок, особенности финализации, а также тонкости проверки инвариантов модели через assert'ы. 

Модуль про дженерики и коллекции объясняет особенности применения ключевых слов extends/super, интерфейсных пересечений и ряда специфических структур данных, таких как PriorityQueue, BlockingQueue и др. 

Заключительный модуль блока посвящен основополагающим концепциям. лежащим в основе работы значительного числа классов и интерфейсов в Java Collections Framework. Отметим также, что весь материал данного блока входит в тематику сертификационного экзамена.

7. Курс: Стандартная библиотека Java II

Блок объясняет различные аспекты создания многопоточных приложений, от фундаментальных механизмов на базе класса Thread и интерфейса Runnable вплоть до динамически подгружаемых пулов подпроцессов в связке с объектами ExecutorService; также рассмотрены готовые библиотечные решения для целого ряда более специализированных, но в то же время широко распространенных задач (синхронизаторы, потокозащищенные прокси-коллекции, атомарные классы и т.д.).

В модуле по локализации разобраны вопросы создания интернационализируемых (I18N) приложений, в т.ч. ресурсов с привязкой к социокультурным и экономическим особенностям целевого региона. Date/Time API, реализованный в Java 8, позволил устранить целый комплекс проблем, присущих старым, мутирующим хроноклассам, и переход на этот новый механизм является одним из канонических приемов модернизации кодовой базы типичного промышленного приложения. 

В заключительном модуле рассмотрены современные приемы работы с файловой подсистемой ввода-вывода, реализованные в 7-ом релизе Java (NIO.2); отметим, что владение этой тематикой является обязательной предпосылкой к изучению асинхронной Java, которая тесно связана с парадигмой т. н. реактивного программирования, рассматриваемого на дальнейших этапах программы профподготовки современного Java-разработчика.

Материал данного учебного блока полностью входит в тематику сертификационного экзамена.Java-разработчики с опытом
от 2 лет, разработчики на С-подобных языках с опытом от 3 лет, тестировщики с уверенным знанием Java и с опытом разработки от трех лет.

Целевая аудитория

Java-разработчики с опытом от 2 лет, разработчики на С-подобных языках с опытом от 3 лет, тестировщики с уверенным знанием Java и с опытом разработки от трех лет.

Предварительная подготовка

Основы языка Java, ООП и базовые паттерны проектирования.

Разбираемые темы

  • 1. Курс: ООП и функциональная парадигма

    • Углубленный дизайн классов
    • Дженерики и коллекции (Часть I)
    • Лямбда-выражения и функциональные интерфейсы. Stream API
    • Шаблоны проектирования
    • Проект и живая практика с преподавателем

    Итого 38 часов: теория – 12 ч. (32%), практика – 26 ч. (68%)
  • 2. Курс: Spring Framework

    • Основы Spring
    • Spring Boot
    • Проект и живая практика с преподавателем

    Итого 30 часов: теория – 8 ч. (27%), практика – 22 ч. (73%)
  • 3. Курс: работа с базами данных

    • Основы работы с базами данных
    • Основы JPA. Hibernate
    • Spring Data
    • Проект и живая практика с преподавателем

    Итого 34 часа: теория – 12 ч. (35%), практика – 22 ч. (65%)
  • 4. Курс: архитектура REST

    • HTTP, REST, принципы проектирования REST API
    • Основы Spring REST
    • Richardson Maturity Model
    • Swagger/OpenAPI
    • Проект и живая практика с преподавателем

    Итого 34 часа: теория – 12 ч. (35%), практика – 22 ч. (65%)
  • 5. Курс: вспомогательные инструменты Java-разработчика

    • Сборщики проектов: Maven/Gradle
    • Docker
    • CI/CD
    • Lombok
    • Проект и живая практика с преподавателем

    Итого 34 часа: теория – 12 ч. (35%), практика – 22 ч. (65%)
  • 6. Курс: продвинутые аспекты применения Java

    • Инварианты и продвинутая обработка исключений
    • Generics и коллекции
    • Алгоритмы и структуры данных
    • Проект и живая практика с преподавателем

    Итого 38 часов: теория – 12 ч. (32%), практика – 26 ч. (68%)
  • 7. Курс: стандартная библиотека Java II

    • Многопоточность
    • Локализация
    • Java 8 Date/Time API
    • NIO - операции с файлами
    • Проект и живая практика с преподавателем

    Итого 42 часа: теория – 16 ч. (38%), практика – 26 ч. (62%)
  • 8.Бонус-курс: Разработка на Java и Spring с помощью Chat GPT: от составления ТЗ до модульного тестирования

    На курсе вы научитесь, как с помощью Chat GPT можно разработать приложение Spring промышленного уровня, включающее анализ предметной области, построение UML-диаграмм, генерацию и модификацию доменной модели, подключение к базе данных при помощи JPA и Spring Data, реализацию бизнес-логики, генерацию REST-контроллеров, разработку тестов.

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

    Итого на курс 42 часа: теория – 16 ч (38%), практика – 26 ч (62%)

  • Итого 250 часов: теория – 84 ч. (34%), практика – 166 ч. (66%)

  • Развернуть программу

Примечание

*Мы рады представить вам уникальную возможность получить бесплатный доступ к первым 5 урокам программы Java-разработчик.Уровень Специалист , которая стартует в мае 2024 года.Доступ действителен в течение 3 дней с момента регистрации.
Раcписание курсов
Вид:
15.05.2024 - 10.10.2024
14:30-16:00
Локация:Онлайн
Длительность:250 ак.ч.
Время:14:30-16:00
120 000 руб.
Записаться
Смотреть полное расписание
Тренеры
Судакевич Игорь
Эксперт в области разработки ПО (Java). Master of Computer & Information Technology (Univ.of Pennsylvania)
Игорь — преподаватель-практик по программированию на языке Java, сертифицированный Java-разработчик, уполномоченный инструктор корпорации «Оракл», инструктор платформы Udemy, Java-методист c 15-летним опытом, консультант-репетитор по Java-сертификации.

Игорь начал карьеру как физик-экспериментатор, разрабатывая аппаратное и программное обеспечение для одного из самых первых в СССР сканирующих туннельных микроскопов в сфере, которая через 20 лет получила название «нанотехнология».

Один из экспертов-разработчиков проекта Java-сертификации под эгидой IBS.

Лауреат конкурса молодых ученых в области физики твердого тела (Япония, 1990).

Проекты:

  • разрабатывал аппаратное и программное обеспечение для одного из самых первых в СССР сканирующих туннельных микроскопов в сфере, через 20 лет получившей название «нанотехнология»

  • 15 лет работал в Токио (Токийский технологический институт, затем Институт статистики ООН), где занимался внедрением технологий автоматической обработки больших массивов данных, в том числе на frontend- и backend-приложениях

  • 6 лет работал инженером-разработчиком в Pioneer Co. в Токио.


Ваши преимущества
Экспертность
Тренеры-эксперты из реальных проектов крупнейших компаний, лидеров в своей отрасли
Живое обучение
“Живая” коммуникация с тренером даже в онлайн-формате
Практика
Максимально наполненные практикой занятия, работа в группах, выполнение домашних заданий
Пользователь только что записался на курс ""
Спасибо!
Форма отправлена успешно.