Найти в Дзене

Язык программирования Kotlin

575 читали · 2 года назад
Регулярные выражения в Kotlin
1. Введение Мы можем найти применение (или злоупотребление) регулярными выражениями практически в любом программном обеспечении, от быстрых скриптов до невероятно сложных приложений. В этой статье мы рассмотрим, как использовать регулярные выражения в Kotlin. Мы не будем обсуждать синтаксис регулярных выражений; для адекватного понимания статьи требуется знакомство с регулярными выражениями в целом, и рекомендуется знание синтаксиса Java Pattern в частности. 2. Настройка Хотя регулярные выражения не являются частью языка Kotlin, они входят в его стандартную библиотеку...
645 читали · 1 год назад
Kotlin в 2025: главный язык для Android-разработки и не только
Kotlin окончательно закрепился как основной язык для Android, а также нашел применение в других областях. По данным Google и JetBrains: ✅ 92% топ-1000 Android-приложений используют Kotlin ✅ Рост вакансий на 45% с 2023 года ✅ 3-е место среди самых любимых языков (Stack Overflow Survey 2025) 🔹 Мобильная разработка (Android, iOS через KMM) 🔹 Бэкенд (Ktor, Spring Boot) 🔹 Кроссплатформенные приложения (Compose Multiplatform) 🔹 Data Science (Kotlin for Jupyter) Критерий ...
147 читали · 2 года назад
Generic в Kotlin
1. Обзор В этой статье мы рассмотрим универсальные типы в языке Kotlin . Они очень похожи на язык Java, но создатели языка Kotlin постарались сделать их немного более интуитивными и понятными, введя специальные ключевые слова, такие как out и in. 2. Создание параметризованных классов Допустим, мы хотим создать параметризованный класс. Мы можем легко сделать это на языке Kotlin, используя универсальные типы: class ParameterizedClass<A>(private val value: A) { fun getValue(): A { return...
188 читали · 1 год назад
Введение в многоплатформенную разработку на Kotlin
В этом уроке мы разберём многоплатформенную разработку в Kotlin. Мы разработаем простое приложение, которое будет работать на нескольких платформах, таких как JVM, JS и Native. Это также поможет нам понять преимущества многоплатформенной разработки и различные случаи использования, где мы можем эффективно применять её. Очень часто мы пишем части программы, которые не зависят от платформы, на которой они выполняются. Например, мы вызываем REST API для получения данных и выполняем дополнительную обработку перед возвратом результата...
Разница между операторами «==» и «===» в Kotlin
1. Обзор В этой статье мы поговорим о разнице между операторами «==» и «===» в Kotlin . В Котлине, как и в Java, есть две разные концепции равенства: ссылочное равенство и структурное равенство. 2. Ссылочное равенство Для ссылочного равенства мы используем символ === , который позволяет нам оценить ссылку на объект (если она указывает на тот же объект). Это эквивалент оператора «==» в Java. Допустим, у нас определены два целых числа: val a = Integer(10) val b = Integer(10) и мы проверяем их оба,...
111 читали · 2 года назад
Аналогии потокового API Java 8 в Kotlin
1. Введение Java 8 ввела концепцию потоков в иерархию коллекций. Они позволяют выполнять очень мощную обработку данных очень удобным для чтения способом, используя некоторые концепции функционального программирования, чтобы заставить процесс работать. Мы рассмотрим, как мы можем достичь той же функциональности, используя идиомы Kotlin. Мы также рассмотрим функции, которые недоступны в обычном Java. 2. Java против Kotlin В Java 8 новый fancy API можно использовать только при взаимодействии с экземплярами java...
Деструктурирующие объявления в Kotlin
1. Overview В этом руководстве мы познакомим вас с концепцией деструктурирования объявлений в Kotlin и рассмотрим, как ее можно использовать. 2. Деструктурирующие объявления Эта концепция состоит в рассмотрении объектов как набора отдельных переменных. 2.1. Объекты Разбиение объекта на несколько переменных может быть удобным: val person = Person(1, "Jon Snow", 20) val(id, name, age) = person Таким образом, мы создали три новые переменные: println(id) //1 println(name) //Jon Snow println(age) //20 Объявление деструктурирования компилируется в виде следующего кода: val id = person...
340 читали · 2 года назад
HTTP-запросы с использованием Kotlin и http
1. Введение Протокол HTTP и API, построенные на его основе, в наши дни имеют первостепенное значение в программировании. В JVM у нас есть несколько доступных вариантов, от библиотек низкого уровня до библиотек очень высокого уровня, от уже существующих проектов до начинающих разработчиков. Однако большинство из них ориентированы в первую очередь на Java-программы. В этой статье мы рассмотрим khttp, идиоматическую библиотеку Kotlin для использования ресурсов и API на основе HTTP. Прежде чем приступить...
175 читали · 2 года назад
Руководство по блоку «when{}» в Kotlin
1. Обзор В этом руководстве представлен блок When{} на языке Kotlin и показаны различные способы его использования. 2. Блок if{} в Котлине Блок When{}, по сути, представляет собой расширенную форму оператора switch-case, известного из Java. В Kotlin, если найден соответствующий вариант, выполняется только код в соответствующем блоке случая, и выполнение продолжается со следующего оператора после блока if . По сути, это означает, что нам не нужны операторы прерывания в конце каждого блока case ...
Введение в сопрограммы Kotlin
1. Обзор В этой статье мы рассмотрим сопрограммы языка Kotlin. Проще говоря, сопрограммы позволяют нам свободно создавать асинхронные программы , и они основаны на концепции программирования в стиле передачи продолжения . Язык Kotlin предоставляет нам базовые конструкции, но может получить доступ к более полезным сопрограммам с помощью библиотеки kotlinx-coroutines-core . Мы рассмотрим эту библиотеку, как только поймем основные строительные блоки языка Kotlin. 2. Создание сопрограммы с помощью BuildSequence Давайте создадим первую сопрограмму, используя функцию buildSequence ...
Функции расширения в Kotlin
1. Введение Kotlin вводит концепцию функций расширения, которые являются удобным способом расширения существующих классов новыми функциональными возможностями без использования наследования или каких–либо форм шаблона декоратора, после определения расширения. по сути, мы можем использовать его, поскольку оно было частью исходного API. Это может быть очень полезно для упрощения чтения и сопровождения нашего кода, поскольку мы можем добавлять методы, соответствующие нашим потребностям, и создавать...