Александр Нозик — Kotlin и контекстно-ориентированное мышление
By JPoint, Joker и JUG ru — Java-конференции · другие пересказы этого канала
Это пересказ, составленный ИИ, — видео канала JPoint, Joker и JUG ru — Java-конференции длительностью 45 мин «Александр Нозик — Kotlin и контекстно-ориентированное мышление», опубликовано 27 октября 2025 г.. Полная расшифровка сжата до 9 тезисов с переходом по таймкодам.
Пересказ
Доклад посвящен контекстно-ориентированному программированию, его историческому развитию и долгожданному появлению контекстных параметров в Kotlin, которые предоставляют мощные инструменты для явного управления и структурирования кода.
Тезисы
- Контекстные параметры/ресиверы являются одной из самых долгожданных функций в Kotlin, сравнимой с Project Valhalla в Java, и призваны обеспечить мощные инструменты для управления контекстом.
- Контекстно-ориентированное программирование, определяемое как изменение поведения объектов или методов в зависимости от их окружения, имеет долгую историю, начиная с Haskell и Smalltalk, с попытками реализации в Scala (implicits) и Java.
- В Kotlin уже существуют механизмы работы с контекстом, такие как `this` для области видимости класса и объекта, вложенные объекты и, особенно, функции-расширения с ресиверами, которые явно определяют контекст выполнения функции.
- Ранние подходы к расширению контекстов в Kotlin включали конкурирующие предложения: «Compile Time Extension Interfaces» (похожие на тайп-классы Scala) и «Multiple Receivers» (явное разрешение нескольких ресиверов).
- В Kotlin 1.7 были введены контекстные ресиверы с ключевым словом `context`, позволяющие передавать дополнительные контексты и динамически изменять поведение функций в зависимости от загруженного контекста.
- Эта новая функциональность позволяет более гибко структурировать код, улучшает читаемость и поддерживаемость, а также открывает новые возможности для оптимизации, например, в математических операциях.
- Финальная и стабилизированная версия, KIP-36, представляет *контекстные параметры*, которые являются именованными, что решает проблемы неоднозначности при обращении к нескольким контекстам и позволяет явно ссылаться на них по имени.
- Контекстные параметры значительно улучшают неявную передачу параметров, управление жизненным циклом ресурсов, создание типобезопасных маркерных скоупов, разработку DSL и упрощают внедрение зависимостей.
- Внедрение контекстных параметров ожидается как радикальное изменение в подходе к разработке библиотек в Kotlin, предлагая улучшенную модульность и дизайн.
Пересказ любого видео с YouTube — бесплатно
Вы только что прочитали пересказ этого видео. Вставьте ссылку на любое другое — получите тезисы с таймкодами за секунды. Без регистрации, 5 в день бесплатно.
Ещё материалы
Другие пересказы
1 ч 8 минАлексей Шипилёв — Java-объекты наизнанку
Этот доклад Алексея Шепелёва на Joker 2021 подробно разбирает внутреннее устройство объектов в HotSpot JVM, методы измерения их размера и множество факторов, таких как битность VM, размер кучи, конфиг
45 минДенис Фокин, Егор Куликов — Генерация тестов для Spring: из чего же, из чего же сделаны тесты
Доклад представляет инструмент Unit Test Bot, который автоматически генерирует юнит- и интеграционные тесты для Java-приложений, в том числе на фреймворке Spring, используя символьное исполнение и дру
46 минАндрей Боханко — Что такое LLVM и при чем здесь Java?
Доклад посвящен проекту LLVM, его истории, философии, причинам успеха, широкому распространению в различных областях программирования и его ограниченному, но растущему влиянию на экосистему Java.
1 ч 21 минРеалии QA в США: 6 месяцев отказов и оффер только после личной встречи. Антон Денисенко
Антон Денисенко, QA-инженер с 13-летним опытом, делится своим сложным шестимесячным опытом поиска работы в США с беременной женой, преодолевая трудности рынка труда, снижение зарплат и специфику работ
3 ч 57 минПЕРВЫЕ РАЗБОРКИ в СКВАДЕ ВИТУБЕРШ / БРАТИШКИН, СТИНТ (вся суть ру-витубинга в одном видео)
Видео представляет собой разбор многочисленных конфликтов, обвинений в доксинге, невыполнении заказов и кибербуллинге внутри русскоязычного VTuber-сообщества, с особым акцентом на VTuber Moki-Moki и с