Базовый курс «Разработчик на Kotlin» с нуля: введение в Котлин разработку - обучение онлайн ОТУС
2026-03-10 21:46 Diff
Введение в программирование. Экосистема, настройка окружения

В этом модуле вы погрузитесь в экосистему современной разработки на Kotlin. Вы узнаете, как настроить профессиональное рабочее окружение с нуля: установить и настроить IDE (IntelliJ IDEA), познакомитесь с системой контроля версий Git и научитесь создавать свой первый Kotlin-проект. На практике вы освоите базовый рабочий цикл разработчика: создание репозитория, написание кода, коммит изменений и их отправка на GitHub. Этот модуль заложит технический фундамент, необходимый для успешного прохождения всего курса.

Тема 1: Вводное занятие

Тема 2: Работа с IDE, с Git и настройка Kotlin-окружения//ДЗ

Тема 3: Git: ветки, слияния и разрешение конфликтов

Введение в Kotlin. Основы программирования

В этом модуле вы освоите фундаментальные конструкции языка Kotlin, которые являются основой любого приложения. Вы научитесь объявлять переменные, используя ключевые слова `val` и `var`, и управлять потоком выполнения программы с помощью условий (`if`, `when`) и циклов (`for`, `while`). Вы узнаете, как структурировать код, создавая и используя собственные функции, а также познакомитесь с основными типами данных: строками, перечислениями (`enum`) и коллекциями — массивами и списками. На практике, выполняя домашние задания, вы напишете свои первые работающие программы, которые смогут обрабатывать данные и выполнять различные алгоритмические задачи. Этот модуль сформирует ваш базовый синтаксический инструментарий для перехода к объектно-ориентированному программированию.

Тема 1: Переменные и базовые операции

Тема 2: Условные структуры и логические выражения. Циклы for и while

Тема 3: Создание и использование функций

Тема 4: Строки, Enum и Массивы/Списки (array/list)//ДЗ

Тема 5: Многомерные массивы и листы

Объектно-ориентированное программирование

В этом модуле вы перейдете от процедурного стиля к объектно-ориентированному, основному для Kotlin. Вы научитесь моделировать предметную область, создавая свои собственные классы и объекты, а затем реализуете ключевые принципы ООП: наследование, полиморфизм и инкапсуляцию. Вы изучите более абстрактные концепции, такие как интерфейсы и абстрактные классы, и поймете их роль в проектировании гибкой архитектуры. На практике вы создадите иерархии классов, научитесь корректно обрабатывать ошибки с помощью исключений, а также сделаете первые шаги.

Тема 1: Основы класс��в и объектов

Тема 2: НПИ - Наследование, полиморфизм и инкапсуляция//ДЗ

Тема 3: НПИА - Интерфейсы и абстрактные классы//ДЗ

Тема 4: Анонимные и внутренние классы

Тема 5: Иерархия классов, обработка ошибок, немного о lambda функциях//ДЗ

DSL. Создание и проектирование

В этом модуле вы погрузитесь в мощные парадигмы, которые делают Kotlin выразительным и удобным для разработчика. Вы освоите продвинутые возможности языка, такие как лямбда-выражения и scope-функции (`let`, `run`, `apply`), которые лежат в основе декларативного стиля. На основе этих знаний вы изучите принцип предметно-ориентированного языка (DSL) и на практике спроектируете и реализуете свой собственный мини-DSL для конкретной задачи. В завершение модуля вы познакомитесь с важными концепциями качества кода: напишете тесты, узнаете о подходе TDD и изучите специальные ключевые слова Kotlin. Этот модуль научит вас писать не просто рабочий, но ещё и элегантный, надёжный и легко читаемый код.

Тема 1: Lambda, scope-функции и необходимая база для DSL

Тема 2: DSL. Изучаем и реализуем свой//ДЗ

Тема 3: Тестирование и TDD, а также интересные keywords в Kotlin

Структуры данных

В этом модуле вы перейдете к работе с эффективными способами хранения и обработки данных. Вы изучите базовые структуры данных Kotlin (List, Set, Map), их отличия от Java-аналогов и механизм обобщенного программирования (Generics). Вы поймете принципы работы ассоциативных массивов (Map) на основе хэш-функций и примените их на практике. Также вы рассмотрите фундаментальные алгоритмы сортировки и научитесь оценивать их сложность. В заключение модуля вы откроете для себя современный подход к асинхронности в Kotlin — корутины, которые позволяют писать неблокирующий и легко читаемый код для многозадачных операций. Этот модуль даст вам ключевые знания для создания производительных и отзывчивых приложений.

Тема 1: Структуры данных в Kotlin и их отличия от Java. Generics

Тема 2: Hash-функция и ассоциативные массивы (Map)

Тема 3: Алгоритмы сортировок и их сложность

Тема 4: Асинхронное и многопоточное программирование с корутинами

Фреймворки

В этом модуле вы перейдете от языка к созданию реального бэкенд-приложения, используя промышленный фреймворк Spring Boot. Вы познакомитесь с архитектурой веб-приложения, научитесь создавать RESTful API контроллеры и настраивать проект с помощью Gradle (Kotlin DSL). Вы освоите работу с базами данных через Spring Data JPA, что позволит вам описывать сущности и выполнять CRUD-операции практически без написания SQL. Вы узнаете, как правильно структурировать код, разделяя его на слои (контроллеры, сервисы, репозитории), внедрять зависимости и обрабатывать ошибки. В завершение вы закрепите навыки, написав unit- и интеграционные тесты, чтобы убедиться в надежности созданного функционала. Этот модуль даст вам практический опыт для разработки полноценных серверных приложений.

Тема 1: Введение в Spring Boot//ДЗ

Тема 2: Работа с базами данных через Spring Data JPA

Тема 3: Конфигурация, сервисы и обработка ошибок//ДЗ

Тема 4: Тестирование // ДЗ

Проектный модуль

Тема 1: Выбор темы и организация проектной работы

Тема 2: Консультация по проектам и выбор темы проекта

Тема 3: Защита проектных работ

Тема 4: Подведение итогов курса