На этом курсе начинают с основ языка Java. Рассматривают историю языка, принципы работы байт-кода и виртуальной машины JVM. Студенты учатся работать с JDK и основными командами - javac, java, jar. На практике создают первую программу и знакомятся со средами разработки Eclipse и NetBeans.
Далее изучают фундаментальные понятия - алфавит языка, комментарии, ключевые слова и идентификаторы. Рассматривают примитивные типы данных, переменные и константы. Студенты осваивают основные операции - арифметические, присваивания, отношения и логические. Важным элементом является преобразование типов и приоритет операций.
Этот модуль посвящен контролю за выполнением программы. Изучают условные операторы, циклы for, while, do while и оператор switch. Рассматривают особенности работы с бесконечными циклами и прерыванием потока управления.
Студенты учатся работать с массивами - от объявления и инициализации до работы с многомерными структурами. Осваивают методы копирования, поиска и сортировки с помощью класса Arrays. Важным аспектом является передача массивов в методы и работа с параметрами командной строки.
Модуль знакомит с основами ООП - абстрагированием, инкапсуляцией, модульностью и иерархией. Студенты изучают понятия объектов и классов, их состояние, поведение и идентичность. Знакомятся с UML-диаграммами для визуализации структуры программы.
Углубленно изучают работу с классами - поля, методы, конструкторы и блоки инициализации. Рассматривают спецификаторы доступа public и private, статические поля и методы. Важным элементом является понимание механизма сборки мусора и управления памятью.
Этот модуль охватывает ключевые концепции ООП - наследование, полиморфизм и инкапсуляцию. Студенты учатся создавать иерархии классов, использовать ключевое слово super, переопределять методы. Рассматривают абстрактные классы, интерфейсы и альтернативы множественному наследованию.
Изучают класс Object и его основные методы - equals(), hashCode(), toString(). Рассматривают правила реализации этих методов и работу с интерфейсом Cloneable. Особое внимание уделяют различиям между поверхностным и глубоким клонированием.
Модуль посвящен внутренним классам и перечислениям. Студенты учатся создавать внутренние, локальные и анонимные классы. Изучают перечисления как классы с их методами values(), valueOf() и применением в конструкции switch.
Рассматривают работу с текстовыми данными через классы String, StringBuffer и StringBuilder. Изучают методы поиска, сравнения и манипуляции со строками. Важным элементом является документирование кода с помощью javadoc и создание профессиональной документации.
Студенты осваивают механизмы обработки исключительных ситуаций в Java. Изучают иерархию классов исключений, разницу между контролируемыми и неконтролируемыми исключениями. На практике учатся использовать try-catch-finally блоки, создавать собственные исключения и настраивать систему логирования.
Модуль охватывает рефлексию для анализа структуры классов, систему ввода-вывода с работой с файлами и потоками. Изучают универсальные типы, коллекции и многопоточность с синхронизацией потоков.
Студенты учатся работать с базами данных через JDBC, выполнять запросы SELECT, INSERT, UPDATE, DELETE. Осваивают работу с XML - парсинг через SAX и DOM, генерацию классов по схеме. Рассматривают сетевые возможности Java через классы URL и сокеты.
Завершающие модули охватывают технологию RMI для распределенного программирования, Java Beans для компонентного подхода и основы веб-программирования с сервлетами и JSP. Завершается курс рассмотрением инверсии управления в Spring и защитой программного проекта.
Курс включает поддержку ментора и практические задания для закрепления знаний. Студенты создают собственный проект для портфолио. После успешного завершения выдается сертификат. Занятия проходят дважды в неделю, что позволяет эффективно сочетать обучение с другими делами.