Курс начинается с основ синтаксиса Java. Студенты узнают о преимуществах языка и его применении, создадут первую программу. Учатся работать с переменными, типами данных int и String, выполнять математические операции. Получают навыки работы с консолью и знакомятся со средой разработки IDEA.
Далее идет изучение условных операторов if-else и циклов while, for, do-while. Рассматриваются массивы - от одномерных до многомерных. Каждая тема включает факультативные занятия для закрепления материала и рассмотрения дополнительных тем.
Студенты изучают функции - объявление, вызов, параметры и возвращение значений. Подробно рассматриваются строки, их методы и особенности работы. Вводятся понятия констант и экранирования символов.
Следующий блок посвящен типам данных и введению в объектно-ориентированное программирование. Студенты узнают о примитивных и ссылочных типах, создании объектов, конструкторах. Изучают статические переменные и методы, внутренние классы.
Раздел охватывает работу с коллекциями - ArrayList, HashSet, HashMap. Студенты изучают generics, итераторы, сравнение различных типов коллекций. Отдельно рассматриваются перечисления Enum и конструкция switch.
Значительное внимание уделяется обработке исключений - от базового try-catch до создания собственных исключений. Изучаются различные типы исключений, блок finally, try with resources.
Студенты осваивают потоки ввода-вывода - InputStream, OutputStream, Reader, Writer. Рассматриваются классы java.nio для эффективной работы с файлами. Отдельный модуль посвящен работе с датами и временем с помощью современных API.
Раздел раскрывает принципы ООП - инкапсуляцию, полиморфизм, наследование. Студенты изучают интерфейсы, абстрактные классы, перегрузку и переопределение методов. Знакомятся с Stream API и лямбда-выражениями.
Особое внимание уделяется многопоточности - от базовых Thread и Runnable до ExecutorService и Future. Рассматриваются синхронизация, проблемы deadlock, работа с volatile и synchronized.
Студенты изучают Reflection API, аннотации, сериализацию в JSON/XML форматах. Отдельный блок посвящен работе с сокетами для сетевого программирования. Рассматриваются паттерны проектирования и методологии разработки.
Знакомство с Maven включает управление зависимостями, сборку проектов. Изучаются библиотеки Guava и Apache Commons, системы тестирования JUnit и Mockito, логирование с помощью SLF4J.
Раздел охватывает основы сетевых технологий, HTTP/HTTPS протоколы, клиент-серверную архитектуру. Студенты работают с HttpClient, сервлетами, контейнерами Tomcat. Изучают MVC архитектуру, JSP, веб-сервисы.
Студенты осваивают работу с реляционными базами данных MySQL - от базовых SQL запросов до транзакций и нормализации. Изучают JDBC для взаимодействия Java-приложений с БД. Глубоко рассматривается ORM Hibernate - маппинг объектов, работа со связями, стратегии наследования.
Завершающий раздел посвящен Spring Framework. Студенты изучают IoC и DI, создание бинов, Spring MVC для веб-разработки. Осваивают проектирование REST API, архитектуру controller-service-dao. Работают с Spring ORM, транзакциями, тестированием.
Особое внимание уделяется Spring Boot для быстрой разработки, Spring Security для защиты приложений, Spring Data JPA для упрощенной работы с базами данных.
Занятия проходят в небольших группах, что обеспечивает индивидуальный подход. Каждый студент получает постоянную поддержку ментора на протяжении всего обучения.
Курс включает большие практические проекты для портфолио. По запросу студентов организовываются дополнительные факультативы. После успешного завершения выдается диплом.
Выпускники получают помощь в трудоустройстве - от составления резюме до подготовки к собеседованиям. Курс дает реальные навыки, необходимые для работы Java-разработчиком.