Kotlin это новый популярный объектно-ориентированный язык программирования. Kotlin используется для создания серверного программного обеспечения, прикладных программ, Android-приложений, разработки веб-сайтов, игр и многого другого. Обладая современным и упрощенным по сравнению с Java синтаксисом, Kotlin устраняет значительное количество его недостатков, сохраняя 100 % совместимость с Java. Созданные на языке Kotlin приложения могут успешно работать на любом компьютере независимо от его архитектуры.
На курсе «Kotlin. Уровень 1. Основы программирования» рассматриваются все элементы и конструкции самого языка Kotlin, а также разбираются варианты его совместного использования с Java. Все теоретические положения детально демонстрируются на практических примерах сертифицированными преподавателями Центра «Специалист».
Курс предназначен для всех программистов, желающих повысить свой уровень.
По окончании курса Вы будете уметь:
- Использовать ветвление и циклы
- Создавать методы на Kotlin
- Применять лямбда-выражения
- Работать с массивами и со строками
- Разрабатывать классы на Kotlin
- Работать с Data-классами
- Изучите систему типов Kotlin
- Использовать наследование и полиморфизм
- Разрабатывать абстрактные классы и интерфейсы
- Обрабатывать ошибки, возникающие в программе
- Научитесь пользоваться коллекциями
- Познакомитесь с функциональным программированием
- Использовать в программе параметризованные типы
- Получите представление о тестировании кода на Kotlin
- Получите представление о паттернах проектирования
Спойлер: Программа курса
Модуль 1. Введение в Kotlin
- Языковые лексемы
- Модули, пакеты, файлы и классы
- Настройка среды
- Константы, переменные и функции
- Строки, строковые шаблоны
- Система типов
- Допустимость null
- Совместимость с Java
- Лабораторная работа: работа со строковыми литералами и шаблонами строк
- Создание и вызов функций
- Именованные аргументы, значения по умолчанию
- Операторы ветвления
- when
- Автоматическое приведение типов
- Операторы циклов
- Диапазоны
- Пары и триплеты
- Деструктурирование и мультидекларации
- Встраивание функций
- Лабораторная работа: циклы и ветвление
- Лабораторная работа: замена if и switch на when
- Синтаксис лямбда-выражений
- Ссылки на методы
- Функциональные интерфейсы
- Обзор основных концепций ООП
- Перечисления
- Объявление класса
- Поля, свойства, методы, модификаторы доступа
- Конструкторы и инициализаторы
- Data-классы
- Перегрузка операторов
- Функции-расширения и свойства-расширения
- Отложенная инициализация
- Лабораторная работа: создание классов
- Лабораторная работа: конструкторы и инициализаторы
- Лабораторная работа: Data-классы
- Внутренние классы
- Вложенные классы
- Шаблон синглтон
- Объекты-компаньоны
- Лабораторная работа: Использование объектов-компаньонов
- Наследование как механизм повторного использования кода
- Конструктор при наследовании
- Преобразование типов
- Виртуальные методы и позднее связывание
- Абстрактные классы и методы
- Open, final, sealed
- Делегирование как альтернатива
- Лабораторная работа: создание иерархий классов
- Концепция интерфейсов
- Объявление интерфейса
- Методы в интерфейсах
- Реализация интерфейса
- Использование и создание аннотаций
- Концепция исключений
- Исключения Kotlin
- Использование операторов try, catch и finally
- Идиома try-with-resource
- Лабораторная работа: работа с исключениями
- Лабораторная работа: обработка исключений Java кода
- Иерархия классов коллекций
- Концепция параметризованных типов данных
- Работа с параметризованными методами и интерфейсами
- Обзор возможностей коллекций в Kotlin
- Лабораторная работа: работа с коллекциями
- Функции высшего порядка
- Работа с коллекциями в функциональном стиле
- Последовательности
- Лабораторная работа: функциональное программирование при работе с коллекциями
- JUnit
- Mockito
- Лабораторная работа: тестирование методов и классов