Kotlin Developer
6.22K subscribers
264 photos
8 videos
359 links
Самый топовый канал по Kotlin

По вопросам сотрудничества и рекламы: @NadikaKir

Мы на бирже: https://telega.in/c/KotlinSenior
Download Telegram
Какая польза от typealias? Во что он компилируется?

Польза в более лаконичном названии уже существующих классов и переменных. Компилируется в public final class
Магия размерностей и магия Котлина. Часть первая: Введение в KotUniL

Амперы нельзя складывать с вольтами. Сантиметры можно складывать с дюймами, но очень внимательно. Иначе получится как с космическим аппаратом стоимостью 125 миллионов долларов Mars Climate Orbiter, который успешно долетел до Марса, но бездарно разбился о его поверхность.

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

Читать статью
В чем разница между a и b?
Магия размерностей и магия Котлина. Часть вторая: Продвинутые возможности KotUniL

Это вторая статья из серии статей про магии размерностий и Котлина на примере библиотеки KotUniL.

В
первой статье мы рассмотрели, как с помощью этой библиотеки не разбивать космические аппараты :-).

В этой статье мы рассмотрим менее очевидные, но не менее интересные фичи библиотеки.

Читать статью
Зачем нужен тип Nothing, какие выражения имеют такой тип?

Если возвращаемый тип Nothing - значит return из данного метода выкинет нас полностью из приложения, либо там бесконечный цикл. Выражения ошибок(error) часто имеют такой тип. Компилируется такая функция в воид-функцию, возвращающая throw
👩‍💻 Магия размерностей и магия Котлина. Часть третья: Смешение магий

Это третья, заключительная статья серии, посвящённой библиотеке по манипулировали физическими величинами системы СИ, а также другими величинами, в Котлин. В ней мы рассмотрим, как фундаментальные математические структуры, которые природа “заложила” в систему СИ, предопределяют дизайн библиотеки и как возможности и ограничения Котлина были использованы при разработке библиотеки KotUniL.

➡️ Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
Когда компилятор использует примитивные типы? В каких случаях происходит автобоксинг?

Компилятор по максимуму пытается использовать примитивы, где это возможно. однако если мы указываем null-type(:?) в любом случае будет ссылочный тип
Хитрости и приемы эффективного программирования на Kotlin

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

Читать статью
Зачем вообще нужны Sequences?

Для оптимизации производительности в работе с большими коллекциями(от 1000). Фишка в том, что значения в таких коллекциях создаются только по мере необходимости, не инициализируя их заранее.
Из за этого нет доступа к содержимому по индексу, а также не контролируется размер.
Моя любимая функция Kotlin

За последние несколько лет я видел много дискуссий о функциях Kotlin. Среди обсуждаемых тем обнуляемость всегда в первых рядах. Мне она нравится, но это определенно не моя любимая функция.

Больше всего в Kotlin мне нравятся некоторые мелкие особенности, благодаря которым язык становится очень элегантным. Например, смарт-кастинг (контракты), приостановка, функции приемника/расширения и делегирование.

Но на данный момент моей любимой особенностью является сочетание функций inline и suspend.

Читать статью
Что выведет этот код?
Что такое функциональный тип, какие у него ограничения?

Функциональный тип-сохранение лямбды в локальной переменной
(Int,Int) -> Int -вот пример
Под капотом функциональные типы объявляются как обычные интерфейсы FunctionN с единственным методом invoke(), где содержится тело лямбды.
Как внедрить KMM в существующие проекты и не пожалеть: теория, наш опыт и гайд

Новые технологии упрощают работу. Но если уже есть проект, на создание которого потрачено большое количество времени и денег, морально тяжело что-то менять. А мы рискнули, набили шишек, но теперь знаем, как внедрить новую технологию без проблем. В этой статье наш опыт — от провала до любви к Kotlin Multiplatform Mobile — и гайд, как перейти на нее легко и быстро.

Читать статью
Что выведет следующий код?
Как работают SAM-conversions?

SAM - Single Abstract Method. или функциональный интерфейс.
очень удобное использование лямбды вместо анонимных классов(все реализуется под капотом, упрощенный синтаксис) В лямбде реализуется единственный метод интерфейса.