Этот курс подходит только разработчикам с опытом в Java или других ООП-языках ― на курсе есть вступительное тестирование. Основная тема программы — создание высоконагруженных серверных приложений.
Во время обучения вы научитесь использовать язык Kotlin для разработки серверных приложений, применять асинхронное и многопоточное программирование с корутинами, выполнять интеграцию бэкенд-приложения с различными фронтендами с использованием OpenAPI. В итоге вы подготовите выпускной проект ― вы сможете выбрать, реализовать свою идею приложения или взять одну из предложенных преподавателем.
Модуль 1. Введение в Kotlin
- Тема 1. Введение в курс и обзор языка
- Тема 2. Основы Kotlin, типы, операторы, функции
- Тема 3. Объектно-ориентированное программирование
- Тема 4. Предментно ориентированные языки (DSL)
- Тема 5. Асинхронное и многопоточное программирование с корутинами
- Тема 6. Асинхронное и многопоточное программирование с каналами
- Тема 7. Kotlin Multiplatform и интероперабельность с JVM, JS
Модуль 2. Старт проекта и общие принципы разработки бэкенда
- Тема 8. Маркетинг и аналитика проекта
- Тема 9. Тестирование проекта, TDD, MDD
- Тема 10. Архитектурные вопросы и инициализация проекта
- Тема 11. Практика по инициализации проекта и TDD
Модуль 3. Модули транспортных моделей
- Тема 12. Создаем интерфейс с помощью OpenAPI
- Тема 13. Создаем API-модели с Kotlin Multiplatform
- Тема 14. Практика по разработке транспортных моделей
Модуль 4. Работа с фреймворками в Kotlin
- Тема 15. Разработка монолитного приложения со Spring
- Тема 16. Разработка микросервисного приложения с KTOR
- Тема 17. Разработка бессерверного приложения на примере AWS Lambda с использованием Kotless
- Тема 18. Практика по работе с фреймворками
Модуль 5. Модуль бизнес-логики проекта
- Тема 19. Разработка библиотеки для шаблона Chain of Responsibilities
- Тема 20. Создание модуля бизнес-логики с использованием шаблона Цепочка Ответственности.
- Тема 21. Шаг валидации в бизнес-цепочке
- Тема 22. Практика по созданию бизнес-уровня Backend-приложения
Модуль 6. Транспортный уровень приложения
- Тема 23. Транспорт с WebSocket
- Тема 24. Транспорт с RabbitMQ
- Тема 25. Транспорт с Kafka
- Тема 26. Практика по транспортному уровню приложения
Модуль 7. Работа с базами данных в Kotlin-проекте
- Тема 27. Создание репозитария
- Тема 28. Репозитарий с PostgreSQL
- Тема 29. Репозитарий с Cassandra
- Тема 30. Репозитарий с DynamoDB
- Тема 31. Практика по работе с базами данным в Backend-приложении
Модуль 8. Защита информации и управление пользователями
- Тема 32. Общие принципы защиты информации
- Тема 33. Авторизация и аутентификация в фреймворках
- Тема 34. Практика по управлению пользователями
Модуль 9. Мониторинг приложения
- Тема 35. Общие принципы мониторинга
- Тема 36. Сбор логов и построение аналитических отчетов
- Тема 37. Практика по мониторингу
Модуль 10. Проектная работа
- Тема 38. Обзор значимых проектов на Kotlin, которые выходят за рамки курса
- Тема 39. Консультация по проектам и домашним заданиям
- Тема 40. Защита проектных работ