Найти в Дзене
Kotlin. Ключевые слова in и out. А так же что такое ковариантность и контрвариантность
Здравствуйте! В этой статье речь пойдет про вариантность параметризованных типов в Котлин. ВНИМАНИЕ. СТАТЬЯ УСТАРЕЛА. ЧИТАЙТЕ ЕЁ НОВУЮ ВЕРСИЮ НА ХАБРЕ. Цель данной статьи дать первичное понимание работы ковариантности и контрвариантности в Котлин. Здесь будет рассмотрено использование ключевых слов in и out в параметризованных типах. Вариантность – это состояние наличия отношений наследования между параметризованными типами, содержащими параметры из одной иерархии наследования. Это мы и будем разбирать на примерах...
2 года назад
Kotlin. Зачем нужны дженерики (generics)?
Здравствуйте! Хотели бы вы создавать "универсальные" классы, которые могут работать с любым типом данных, будь то Int, Double, String, ... (или какой-то свой тип), причем этот код будет поддерживать все типы данных одновременно? Речь пойдет про обобщенное программирование в Котлин. Мы сможем создавать универсальные структуры, такие как классы, интерфейсы и функции, которые подходят для работы с любыми типами данных. Сразу давайте введем новое понятие – «тип» . Типом называют некую структуру, которая...
166 читали · 2 года назад
Kotlin. Зачем нужны ключевые слова inline, noinline, crossinline?
Здравствуйте! Сегодня поговорим как мы можем оптимизировать работу функций высшего порядка в Котлин, с помощью ключевого слова inline. Inline нужен в следующих случаях: Функции высшего порядка, как вы помните, это функции, которые берут другие функции в качестве параметра (или возвращают их в качестве результата). Допустим есть такой код: Здесь всё просто, есть функция doSomething, которая что-то делает, и есть место её вызова — это функция main. Для её работы, лямбда выражения компилируются в анонимные классы, каждый раз когда используются...
677 читали · 2 года назад
Kotlin. Зачем нужно ключевое слово typealias?
Приветствую! Продолжаем делать наш код более продвинутым :) Сегодня мы разберем на примерах зачем нужно ключевое слово typealias в Kotlin. Как оно работает, что дает программисту его использование, и как это всё отражается на байт-коде. C помощью typealias, Котлин позволяет создать простой и короткий псевдоним нужного типа данных, который будет легко читаться и тем самым убрать нагромождение в коде. 👉 Давайте сразу посмотрим пример. Допустим, есть такая функция doSomething (а может даже не одна), которая берет другую функцию в качестве параметра и как-то её использует у себя...
2 года назад
Kotlin. Зачем нужно ключевое слово operator?
Привет! Сегодня мы поговорим зачем нужно ключевое слово operator в Kotlin. Если коротко, то оно служит, чтобы расширить стандартные операции языка (такие как +, - , * и другие) на ваши собственные типы данных. По умолчанию Котлин умеет складывать, умножать, вычитать, делить, инкрементировать (да много чего еще) со числовыми типами данных, умеет соединять строки, добавлять значения в массивы и тд. Это известно и понятно, но мы бы хотели научить Котлин работать так же с наши классами. Вот тут нам и поможет ключевое слово operator...
100 читали · 2 года назад
Если нравится — подпишитесь
Так вы не пропустите новые публикации этого канала