Содержание курса
Введение
2 урока
1.
Приветствие
↗
2.
Онлайн-встречи
↗
Знакомство и настройка окружения
14 уроков
1.
Установка JDK
↗
2.
Установка и настройка VS Code
↗
3.
Пресловутый Hello World
↗
4.
Начало написания и ошибки
↗
5.
Донастройка VS Code
↗
6.
Комментарии
↗
7.
Что такое переменная
↗
8.
Примитивные типы
↗
9.
Арифметические операции
↗
10.
Форматирование строк
↗
11.
Продвинутое форматировние чисел
↗
12.
Техническое задание №1
↗
13.
Совместная работа
↗
14.
1:1
↗
Первые шаги
8 уроков
1.
Math
↗
2.
Классы-обертки
↗
3.
Преобразование типов
↗
4.
Пользовательские данные
↗
5.
Задачи [1..3]
↗
6.
Техническое задание №2
↗
7.
Совместная работа
↗
8.
1:1
↗
Управление программой: логика
13 уроков
1.
Операции сравнения
↗
2.
Компараторы строк
↗
3.
Логические операции
↗
4.
Условный оператор
↗
5.
Задачи [4..8]
↗
6.
Тернарный оператор
↗
7.
Обработка ошибок ввода
↗
8.
Техническое задание №3
↗
9.
Совместная работа
↗
10.
Строки
↗
11.
Техническое задание №4
↗
12.
Совместная работа
↗
13.
1:1
↗
Управление программой: циклы
6 уроков
1.
Ускорение работы
↗
2.
Циклы
↗
3.
Псевдослучайные числа
↗
4.
Задачи для тренировки [9..13]
↗
5.
Продолжение тренировки [14..19]
↗
6.
1:1
↗
Массивы: основа
5 уроков
1.
Задачи [20..26]
↗
2.
Массивы: начало. Задачи[27..31]
↗
3.
Техническое задание №5
↗
4.
Совместная работа
↗
5.
1:1
↗
Массивы: дополнение
6 уроков
1.
Массивы: двумерные
↗
2.
Задачи [32..36]
↗
3.
Массивы: многомерные
↗
4.
Техническое задание №6
↗
5.
Совместная работа
↗
6.
1:1
↗
Коллекции: основа
7 уроков
1.
Жизнь без массивов
↗
2.
Задачи [37..42]
↗
3.
Словарь
↗
4.
Практика использования словарей. Задача [43]
↗
5.
Техническое задание №7
↗
6.
Совместная работа
↗
7.
1:1
↗
Методы
7 уроков
1.
Зачем нужены методы?
↗
2.
Виды методов
↗
3.
Задачи: часть I [44..50]
↗
4.
Задачи: часть I [51..52]
↗
5.
Задачи: продолжение [53..58]
↗
6.
Задачи: продолжение [59]
↗
7.
1:1
↗
Погружение в методы
9 уроков
1.
Преамбула
↗
2.
Задачи [60..64]
↗
3.
Задачи [65..69]
↗
4.
Задачи [70..74]
↗
5.
Задачи [80..84]
↗
6.
Файлы и пакеты
↗
7.
Техническое задание №8
↗
8.
Совместная работа
↗
9.
1:1
↗
Файлы и исключения
6 уроков
1.
Дата и время: основа
↗
2.
Через файлы к исключениям
↗
3.
Работа с файлами: основа
↗
4.
Техническое задание №9
↗
5.
Совместная работа
↗
6.
1:1
↗
Введение в классы
5 уроков
1.
Классы: зачем?
↗
2.
Классы: практическое задание
↗
3.
Техническое задание №10
↗
4.
Совместная работа
↗
5.
1:1
↗
Объектно-ориентированное проектирование
8 уроков
1.
Постановка задачи
↗
2.
Наследование
↗
3.
Абстракция
↗
4.
Техническое задание №11
↗
5.
Совместная работа: полиморфизм
↗
6.
Параметрический полиморфизм
↗
7.
Про статику
↗
8.
1:1
↗
Погружение в проектирование
7 уроков
1.
Техническое задание №12
↗
2.
Совместная работа
↗
3.
Выделение зависимостей
↗
4.
Техническое задание №13
↗
5.
Совместная работа
↗
6.
Факультатив
↗
7.
1:1
↗
Проектирование по-взрослому
5 уроков
1.
Техническое задание №14
↗
2.
Совместная работа
↗
3.
Техническое задание №15
↗
4.
Совместная работа
↗
5.
1:1
↗
Основа веб-сервисов
6 уроков
1.
IntelliJ IDEA
↗
2.
Сборщик и зависимости
↗
3.
JSON: база
↗
4.
Техническое задание №16
↗
5.
Совместная работа
↗
6.
1:1
↗
SOLID как продолжение ООП
8 уроков
1.
SOLID: введение
↗
2.
Single responsibility principle
↗
3.
Open-closed principle
↗
4.
Liskov substitution principle
↗
5.
Interface segregation principle
↗
6.
Dependency inversion principle
↗
7.
SOLID: итоги
↗
8.
1:1
↗
IoC
5 уроков
1.
Основа
↗
2.
Несколько слов про Reflection API
↗
3.
Собственные исключения
↗
4.
Описание с нуля
↗
5.
1:1
↗
Шаблон проектирования как продолжение ООП
8 уроков
1.
Singleton
↗
2.
Техническое задание №17
↗
3.
Совместная работа
↗
4.
Builder
↗
5.
Техническое задание №18
↗
6.
Совместная работа
↗
7.
Prototype
↗
8.
1:1
↗
Создание веб-сервисов: база
9 уроков
1.
Создание веб-проекта
↗
2.
Spring Boot: введение
↗
3.
Spring Boot: базовое устройство
↗
4.
Способы конфигурации
↗
5.
Про аннотации
↗
6.
Внедрение зависимостей
↗
7.
Spring Web: основа
↗
8.
Начало написания сервиса
↗
9.
1:1
↗
Ускоренная обработка данных
6 уроков
1.
Функциональные интерфейсы
↗
2.
Stream API: история появления
↗
3.
Стандартные интерфейсы
↗
4.
Stream Api
↗
5.
Обновление сервиса
↗
6.
1:1
↗
RESTful API: Обзор фундаментальных концепций
2 урока
1.
Теория ключевых аспектов
↗
2.
Есть вопросик...
↗
Стартовая настройка сервиса
12 уроков
1.
Роль Postman'а в разработке API
↗
2.
Унификация ответов API
↗
3.
Проработка деталей ответа API
↗
4.
Централизованный генератор ответов
↗
5.
Воспоминания о будущем
↗
6.
Техническое задание №19
↗
7.
Совместная работа
↗
8.
Техническое задание №20
↗
9.
Совместная работа
↗
10.
Техническое задание №21
↗
11.
Совместная работа
↗
12.
1:1
↗
Логика сервиса: основа
10 уроков
1.
Модели
↗
2.
Сопоставление данных
↗
3.
Валидация: база
↗
4.
Роль регулярных выражений
↗
5.
Централизованная обработка ошибок
↗
6.
Взаимодействие с клиентом
↗
7.
Техническое задание №22
↗
8.
Совместная работа
↗
9.
Проблемы примитивных типов
↗
10.
1:1
↗
Интеграция новой функциональности
13 уроков
1.
Техническое задание №23
↗
2.
Сепарация
↗
3.
Основная модель
↗
4.
Create Dto
↗
5.
Шаблонизация пароля
↗
6.
Update Dto
↗
7.
Endpoint получения всех записей
↗
8.
Endpoint получения записи по ID
↗
9.
Endpoint создания
↗
10.
Endpoint обновления
↗
11.
Endpoint удаления
↗
12.
Endpoint's поиска
↗
13.
1:1
↗
Про архитектуру
7 уроков
1.
Подготовка
↗
2.
Хранилище
↗
3.
Логика
↗
4.
Взаимодействие
↗
5.
Техническое задание №24
↗
6.
Совместная работа: реализация инфраструктуры
↗
7.
1:1
↗
Введение в теорию хранения данных
20 уроков
1.
Зачем нужны базы данных
↗
2.
Установка и настройка окружения для работы с SQLite
↗
3.
Основные концепции структуры базы данных
↗
4.
Отношения в базе данных
↗
5.
Что такое SQL и система типов
↗
6.
Создание таблиц
↗
7.
Ограничения SQL
↗
8.
Добавление записей
↗
9.
Самостоятельная работа: наполнение данными
↗
10.
Выборка данных
↗
11.
Фильтрация данных
↗
12.
Оператор обновления данных
↗
13.
Самостоятельная работа на обновление данных
↗
14.
Оператор удаления данных
↗
15.
Самостоятельная работа: создание и наполнение базы данных
↗
16.
Сложные концепции
↗
17.
Самостоятельная работа на сложные запросы
↗
18.
Сложные запросы
↗
19.
Самостоятельная работа на объединение
↗
20.
1:1
↗
Интеграция базы данных
11 уроков
1.
Подготовка к интеграции базы данных
↗
2.
Первое подключение к базе данных
↗
3.
Создание и наполнение таблицы
↗
4.
Частичная реализация инфраструктуры для получения данных
↗
5.
Частичная реализация инфраструктуры для сохранения данных
↗
6.
Техническое задание №25
↗
7.
Совместная работа
↗
8.
Техническое задание №26
↗
9.
Совместная работа: интеграция
↗
10.
Совместная работа
↗
11.
Альтернативная совместная работа
↗
Разговор за ORM
11 уроков
1.
Мотивация к использованию ORM
↗
2.
Внедрение сущностей
↗
3.
Базовая реализация JPA
↗
4.
Реализация репозитория
↗
5.
Подготовка к отношениям
↗
6.
Переезд на JPA
↗
7.
Техническое задание №27
↗
8.
Реализация репозитория
↗
9.
Логирование: база
↗
10.
Роль SQL в инициализации данных
↗
11.
1:1
↗
Интеграция новой сущности и отношений
14 уроков
1.
Подготовка к новой структуре
↗
2.
Подготовка к интеграции
↗
3.
Тестовые данные
↗
4.
Обновление логики добавления
↗
5.
Техническое задание №28
↗
6.
Совместная работа
↗
7.
Связи
↗
8.
Обновление маппинга
↗
9.
Обновление и перенастройка
↗
10.
Новая логика обновления
↗
11.
Техническое задание №29
↗
12.
Совместная работа
↗
13.
Интеграция Swagger UI
↗
14.
1:1
↗
Бонусный модуль: Интеграция Spring Security
17 уроков
1.
Почему этот модуль не похож на другие
↗
2.
Теоретические основы и конфигурация аутентификации
↗
3.
Интеграция пользователей
↗
4.
Сервис управления токенами
↗
5.
Интеграция ключа подписи
↗
6.
Реализация пользовательской аутентификации
↗
7.
Создание фильтра безопасности
↗
8.
Конфигурация безопасности
↗
9.
DTO для аутентификации и авторизации
↗
10.
Сервиса аутентификации и регистрации пользователей
↗
11.
Контроллера аутентификации
↗
12.
Демо
↗
13.
Новые сценарии тестирования
↗
14.
Лучшие практики проектирования REST API: руководство
↗
15.
Демонстрация как нужно
↗
16.
Техническое задание №30
↗
17.
Бонус оффер
↗