Kotlin
2.17K subscribers
268 photos
123 videos
18 files
391 links
Подборки полезного материала по Kotlin. По всем вопросам @evgenycarter
Download Telegram
Android Kotlin Starter Project 2022

Чистое многомодульное offline-first масштабируемое приложение для Android. С использованием Jetpack Compose, MVI, корутины Kotlin/Flow, сериализацию Kotlin, Hilt и Room. Создано, чтобы продемонстрировать передовой опыт использования функций Kotlin и новейших библиотек Android.

https://github.com/krzdabrowski/android-starter-2022

✍️ @kotlin_lib
👍5
Marcin_Moskala_Effective_Kotlin_Best_Practices_Kt_Academy_2019.pdf
9.7 MB
Effective Kotlin: Best practices
Автор: Marcin Moskala (2019)

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

В книге раскрыты следующие темы:
✔️Безопасность;
✔️Читаемость;
✔️Переиспользуемость;
✔️Дизайн абстракций;
✔️Создание объектов.

✍️ @kotlin_lib
👍3
Kotlin: Иллюстрированное руководство
Готовы ли вы изучить программирование на Kotlin?

Эта серия начинается с основ Kotlin и плавно переходит от концепции к концепции, так что даже человек, не имеющий никакого опыта, сможет стать опытным разработчиком Kotlin.

Независимо от того, являетесь ли вы новичком в языке или опытным профессионалом, я надеюсь, что эта серия даст вам прочный фундамент понимания, который позволит вам стать лучшим разработчиком Kotlin.

https://typealias.com/start/


✍️ @kotlin_lib
👍4
Асинхронные моки. Создаем и тестируем telegram-бот на Kotlin

Любая асинхронность повышает уровень тревожности при разработке автоматических тестов. Особенно в ситуации, когда нужно выполнить проверку корректности работы системы, основанной на графе состояний со взаимодействием с внешним API через Flow. Примером такой системы может быть Telegram-бот, построенный на диалоге с внешним пользователем. В этой статье мы с вами создадим простой бот на Kotlin (с поддержкой многоязычности) и последовательно разберем возможные способы использования асинхронных моков и тестов для Flow с использованием библиотеки mockk и типобезопасной библиотеки для взаимодействия с API Telegram на Kotlin.

✍️ @kotlin_lib
👍2
How to move View with Keyboard in Android using Kotlin

https://johncodeos.com/move-view-with-keyboard-in-android-using-kotlin/

✍️ @kotlin_lib
👍3
Media is too big
VIEW IN TELEGRAM
Расширяем возможности kotlinx.serialization с помощью Arrow Meta

На проекте, использующим Kotlin, хочется работать с Kotlin-first библиотеками. Например, хочется вместо Jackson использовать kotlinx.serialization. К сожалению, перевести существующий проект на любимые технологии не всегда возможно из-за разницы в подходах или отсутствии фич. Например, global naming strategy.

Можно ли обойти ограничения библиотеки и добавить недостающее?
Можно! С помощью Arrow Meta.
Arrow Meta — это библиотека, позволяющая писать плагины для компилятора, линтеры и другие преобразователи исходного кода.

В данном докладе мы поговорим о настройке проекта, возможностях библиотеки и разберём реальный use-case добавления global naming strategy в kotlinx.serialization. Данный доклад будет интересен продвинутой аудитории, преимущественно использующей Kotlin для backend-разработки.

✍️ @kotlin_lib
👍1
👍1
Всех поздравляем с Днем программиста!!!
👍12🔥6👏1
Что такое Kotlin SAM?

Если вы когда-нибудь писали на Kotlinbe, то наверняка слышали о его функции SAM, а именно о функциональных интерфейсах. Эта функция используется во многих библиотеках, например, в Ktor. Таким образом, изучение того, что это такое и как его использовать, является обязательным, если не сказать - необходимым, для нас, разработчиков.

https://oguzhanaslann.medium.com/what-is-kotlin-sam-c6cfee64b00d

✍️ @kotlin_lib
👍4
Kotlin Algorithms and Design Patterns

В этом репозитории приведены наиболее распространенные алгоритмы, структуры данных и паттерны проектирования, написанные на языке программирования Kotlin.

Весь код разбит по отдельным пакетам:

ru.sorting - алгоритмы сортировки
ru.search - алгоритмы поиска
ru.structures - структуры данных (списки, массивы, стэк, очередь, бинарное дерево и др.)
design-patterns - паттерны проектирования
ru.other - другие алгоритмы (расстояние Левенштейна, алгоритм Кнута Морриса Пратта и т.д.)
Для каждого файла с кодом сделаны тесты, которые находятся в директории test/kotlin

✍️ @kotlin_lib
👍4
KMP, iOS Developers and Production

Kotlin Multiplatform (или KMP, KMM и т. п.) уже несколько лет широко используется в продакшен приложениях. JetBrains создала веб-сайт со списком компаний, которые в настоящее время используют KMP. Далее

✍️ @kotlin_lib
👍3
👍1
An Illustrated Guide • Scopes and Scope Functions

https://typealias.com/start/kotlin-scopes-and-scope-functions/

✍️ @kotlin_lib
👍1
Seal — загрузчик аудио или видео файлов для Android в цветах Material You. Умеет скачивать видео или аудио со стриминговых платформ (в том числе плейлисты целиком), встраивать субтитры в скачиваемое видео, динамически менять цвета в UI в соответствии с заветами Material Design 3. Написан на Kotlin.

https://github.com/JunkFood02/Seal

✍️ @kotlin_lib
👍4
Почему исключения в Kotlin Coroutines это сложно и как с этим жить?

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

original

✍️ @kotlin_lib
👍2