Kotlin
2.17K subscribers
293 photos
129 videos
18 files
425 links
Подборки полезного материала по Kotlin. По всем вопросам @evgenycarter
Download Telegram
Media is too big
VIEW IN TELEGRAM
Проектирование Kotlin за пределами выводимого типа | Росс Тейт

Программисты на Kotlin регулярно опускают неинформативные типы в своих программах. Это делает разработку быстрее, код — легче для чтения, а сопровождение — менее трудоёмким. Но это также означает, что язык Kotlin должен быть спроектирован так, чтобы компиляторы могли надёжно принимать программы без этих типовых подсказок. Мы называем это выводом типов, но по определению вывод типов означает, что компилятор должен определить пропущенные типы так, чтобы программа успешно прошла проверку типов.

Но что, если мы можем определить, что программа безопасна, не определяя эти отсутствующие типы? Что, если мы можем сделать это даже тогда, когда таких типов в принципе не существует? И что, если мы можем сделать это эффективнее любого алгоритма вывода типов? Исследуя алгоритмы типизации следующего поколения для Kotlin, мы обнаружили, что можем эффективно выйти за пределы возможностей вывода и проверки типов. Мы разработали алгоритм «type-outference» (внешнего вывода типов), который эффективно определяет «согласованность типов» — свойство, которому удовлетворяют все программы, выводимые и проверяемые по типам (но не наоборот).

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

источник

✍️ @kotlin_lib
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
🤖 Android-приложение на чистой архитектуре: разберём шаг за шагом

Чистая архитектура — это фундамент для масштабируемых Android-приложений. 26 ноября в 20:00 на открытом уроке вы создадите клиент-серверное приложение с нуля и поймёте, как строить код, который не рушится при первом изменении требований.

❗️ Разберём API для скачивания фото и описания, подключим интернет, разделим приложение на слои с использованием MVVM и реализуем логику отображения данных. Если вы уже работаете Android-разработчиком уровня junior и хотите перейти к продвинутым архитектурным решениям — этот вебинар станет отличным стартом.

👉 Вебинар проходит в преддверии старта курса «Android Developer. Professional». Регистрация открыта: https://vk.cc/cRrnFl

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM