Comments by "Das Kleine Krokodil" (@Das.Kleine.Krokodil) on "02. Kotlin — Михаил Левченко" video.
-
00:00:07 Введение
• Миша Левченко представляет презентацию о том, как не надо писать на языке Kotlin.
• Он отмечает, что многие знают, как писать на Kotlin, но не знают, как не писать.
00:04:04 Отличия от Java
• В Kotlin нет понятия "поле", вместо этого используются "свойства" с геттерами и сеттерами.
• В Kotlin есть только один конструктор, который вызывается при создании объекта.
• Все классы в Kotlin являются клоузами по умолчанию.
00:10:48 Дополнительные возможности Kotlin
• Дейта-классы для хранения данных и создания методов на основе свойств.
• Возможность объявить класс и сразу его инстанс (объект).
00:12:37 Что не стоит делать в Kotlin
• Не использовать логику в свойствах, так как это может сломать ожидания пользователей.
• Не использовать индексы для получения свойств из праймер-конструктора, так как это может привести к неожиданным результатам.
• Не злоупотреблять обжект-классами и дейта-классами для хранения данных и логики.
00:16:26 Функции и лямбды
• В Kotlin функции могут быть объявлены вне класса и иметь ключевое слово "fun".
• Лямбды могут быть использованы для создания функций на месте, что позволяет сократить код.
00:21:02 Система типов Kotlin
• Kotlin имеет доработанную систему типов, включающую типы "en" и "unit".
• Тип "en" является супертипом почти всех типов в Kotlin, а тип "unit" - аналогом типа "void" в Java.
• Тип "nul" используется для обозначения отсутствия значения и может быть использован для проверки на null.
00:28:59 Работа с нал типами
• В Kotlin можно использовать конструктор "en" для создания типа, который является объединением текущего типа и нал типа.
• С помощью этого конструктора можно создавать "налобыл" иерархии, которые являются супертипами наших типов.
• В Kotlin также есть функция "flow-typing", которая позволяет проверять на нал и понижать тип, если проверка прошла успешно.
00:32:52 Введение в Kotlin
• Видео начинается с объяснения оператора Элвиса, который позволяет вернуть значение по умолчанию, если слева от него находится null.
• Затем обсуждается платформа типов, которая была создана специально для интерпаса.
00:36:53 Дженерики и контравариантность
• В Kotlin дженерики имеют ковариантность, что означает, что они могут быть как принимаемыми, так и возвращаемыми типами.
• Контравариантность означает, что дженерик может быть только принимаемым типом.
00:44:18 Корутины и исключения
• В Kotlin корутины могут быть написаны вручную, но это не рекомендуется.
• В Kotlin были удалены check-exceptions, так как их нельзя было игнорировать.
00:47:43 Персистентные структуры данных
• В Kotlin можно использовать персистентные структуры данных, которые позволяют избежать создания новых списков при добавлении элементов.
00:48:28 Функции и лямбды
• Видео обсуждает функции и лямбды в Kotlin, их использование и преимущества.
• В Kotlin есть экстеншены, которые позволяют создавать функции с расширенными возможностями.
00:52:46 Использование функций и лямбд
• В Kotlin есть пять основных функций, которые можно использовать для работы с лямбдами.
• Эти функции позволяют работать с коллекциями, проверять на нал, конфигурировать классы, возвращать результат выражения и вызывать функции на аргументе.
00:56:31 Операторы и инфиксные функции
• В Kotlin есть ключевые слова, которые позволяют превратить функции в операторы.
• Инфиксные функции могут быть полезны для создания быстрых и лаконичных выражений.
01:01:00 Использование инлайн функций
• Инлайн функции позволяют избежать создания объектов и лямбд, что может быть полезно для оптимизации кода.
• Однако, не стоит злоупотреблять инлайн функциями, так как это может привести к снижению производительности.
01:01:00 Особенности Kotlin
• Автор объясняет, что Kotlin имеет статическую типизацию, что делает его более безопасным и удобным в использовании.
• Он также упоминает, что Kotlin поддерживает дженерики, которые позволяют создавать универсальные типы и функции.
01:03:00 Использование делегатов и свойств
• Автор рассказывает о делегатах, которые позволяют абстрагировать повторяющийся код и использовать его в разных местах.
• Он также объясняет, как использовать свойства для создания функций, которые могут быть вызваны для изменения значения свойства.
01:06:00 Полезные идиомы и паттерны
• Автор приводит примеры полезных идиом и паттернов, таких как использование байлейзи для отложенного выполнения кода и обзор для обновления значений свойств.
• Он также упоминает о тесте по Kotlin, который будет проведен 18 июня, и приглашает зрителей принять участие.
01:12:00 Заключение
• В заключение автор призывает зрителей изучать Kotlin, используя различные ресурсы, такие как книги, телеграм-чаты и онлайн-курсы.
• Он также предлагает задавать вопросы в комментариях и обещает ответить на них в следующем видео.
4
-
1
-
1