Курс строится по принципу "от простого к сложному" и охватывает все необходимые технологии для работы Java-разработчиком.
На первых занятиях студенты знакомятся с планом обучения и основным инструментом - системой контроля версий Git. Учатся работать с базовыми командами Git и осваивают более сложные методы управления версиями. Затем переходят к основам объектно-ориентированного программирования: инкапсуляции, наследованию и полиморфизму. Каждый принцип рассматривается теоретически и сразу закрепляется на практике с Java.
В этом модуле рассматриваются способы хранения данных в программе. Студенты изучают разницу между примитивными и ссылочными типами данных, работают с символами и строками в Java. Отдельное внимание уделяется обработке ошибок - студенты учатся правильно выбрасывать и обрабатывать исключения, что является критически важным для создания стабильных приложений.
Модуль посвящен работе со средой разработки IntelliJ IDEA. Студенты осваивают отладку программ с помощью Debug и изучают функционал, который ускоряет разработку. Эти навыки значительно повышают эффективность работы программиста.
Здесь студенты учатся работать с потоками ввода-вывода, осваивают работу с файлами и изучают пакет NIO для более эффективной работы с данными. Второй блок модуля посвящен многопоточности - от стандартных методов до продвинутых способов синхронизации с использованием пакета java.util.concurrent.
Модуль начинается с детального изучения коллекций в Java - списков, словарей, множеств и очередей. Затем студенты переходят к анализу сложности алгоритмов, изучают О-нотацию и учатся работать с типовыми алгоритмами, деревьями и графами.
Этот блок охватывает современные подходы в Java-разработке. Студенты изучают обобщения (Generics), Stream API для работы с потоками данных, функциональное программирование с использованием лямбда-выражений и функциональных интерфейсов.
Модуль начинается с основ работы с базами данных и языка SQL. Студенты изучают операции DDL, DML, DQL и TCL. Затем переходят к практической реализации - учатся подключаться к базам данных из Java с помощью JDBC и конвертировать SQL-данные в Java-объекты.
В этом модуле студенты изучают рефлексию и аннотации, а затем переходят к дизайну и архитектуре приложений. Учатся работать с шаблонами проектирования и реализовывать их на практике. Отдельно рассматриваются инструменты сборки проектов - Maven и Gradle, их конфигурация и использование.
Студенты осваивают основы тестирования программного обеспечения, изучают фреймворки для юнит-тестирования и учатся писать тестовые сценарии. Второй блок модуля посвящен сетевому взаимодействию - от основ коммуникации в сети до реализации протоколов передачи данных, синхронных и асинхронных операций.
Этот большой модуль охватывает все аспекты веб-разработки на Java. Студенты изучают основы HTTP, архитектуру веб-сервисов, учатся создавать RESTful-приложения и автоматизировать документирование программ. Также рассматриваются веб-серверы, Java-сервлеты, основы логирования приложений и работа с ORM-фреймворками на примере JPA и Hibernate.
Завершающий технический модуль посвящен самому популярному фреймворку для Java. Студенты последовательно изучают Spring Core, Spring Data Access, Spring Web, Spring Boot, Spring Data и Spring Security. Учатся создавать RESTful-программы в Spring, конфигурировать приложения, реализовывать фильтрацию, пагинацию и настраивать безопасность веб-приложений.
Курс завершается выполнением дипломного проекта, где студенты применяют все полученные знания на практике.
Курс рассчитан на студентов, которые завершили курс Java Basic, или людей с базовыми знаниями любой С-подобной языка программирования.
Занятия проходят дистанционно. Студенты получают доступ к видеозаписям уроков в личном кабинете. На протяжении всего курса работает оперативная служба поддержки.
Все преподаватели - практикующие специалисты из топовых IT-компаний.
Существует возможность вернуть средства за обучение до шестого занятия.
Студенты получают бонусы: тренинги по прохождению собеседований и составлению резюме с HR-специалистом, а также тестовое собеседование с техническим специалистом.