Занятие 1: Типы данных
· Повторение основных типов данных: int, double, String, boolean
· Особенности совместимости типов int и double
· Типы данных: byte, short, long, float, char
· Константы: final, static
Занятие 2: Циклы, условные операторы и массивы
• Повторение условных операторов и циклов: if, else if, else, for, while, break, continue
• Циклы: do…while, for each..
• Массивы и многомерные массивы
Занятие 3: Введение в коллекции
· Отличие массивов и коллекций
· Основные типы коллекций: ArrayList, Set, HashMap
· Статические и не статические объекты
Занятие 4: Углубление в ООП
• Повторение основ ООП
• Модификаторы доступа
• Инкапсуляция
• Классы: вложенные, абстрактные, статические и не статические
Занятие 5: Углубление в ООП ч.2
• Класс Object и его методы: hashCode(), equals(), toString()
• Возможности интерфейсов, начиная с Java 8
• Enum-классы
Занятие 6: Элементы функционального программирования, SOLID и STUPID
• Функциональные интерфейсы, лямбда-выражения
• Ссылки на методы
• Что такое код по SOLID?
• Как не надо писать код?
Занятие 7: Исключения
• Что такое исключения в Java и зачем они нужны?
• Проверяемые и непроверяемые исключения
• Обработка исключений
Занятие 8: как работает изнутри: разбираемся с распределением памяти
• Ссылочные типы данных и тд.
• Устройство распределения памяти
Занятие 9: Создание индивидуального проекта
• Обзор проекта и его целей.
• Проектирование структуры.
• Начало разработки.
Занятие 10: Создание проекта и завершение курса
• Разработка логики.
• Тестирование и отладка.
• Презентация и защита проектов учеников.
• Обсуждение процесса разработки и уроков, извлеченных из проекта.