Как стать автором
Обновить
31.76

Kotlin *

Статически типизированный язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Более правильный подход к подключению Yandex AppMetrica в React Native приложении

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 935

Самостоятельно ставим Yandex AppMetrica в React Native приложение без каких-либо сторонних npm'ных библиотек.

Посмотрим как поставить нативно аппметрику, также напишем два нативных модуля для получения доступа к методам аппметрики.

Гайд ориентирован на React Native разработчиков, которые не могут найти нормальное решение для подключения аппметрики.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 0

Новости

Рыночные данные в кармане: как получать их быстро и просто с помощью Java/Kotlin и Spring Boot + TinkoffApi

Уровень сложности Средний
Время на прочтение 8 мин
Количество просмотров 3.4K

Если вы хотите написать проект, связанный с рыночными данными или торговлей на бирже, и вы знакомы с Java или Kotlin и слышали про Spring Boot, то эта статья для вас

Читать далее
Всего голосов 8: ↑8 и ↓0 +8
Комментарии 2

Как я приложение на Compose писал

Уровень сложности Средний
Время на прочтение 13 мин
Количество просмотров 6.5K

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

В статье будет рассказана небольшая история создания приложения под Android полностью на Compose и о том, на сколько сильно применение Compose на продуктиве упрощает и ускоряет разработку. Личный опыт автора, которым он (то бишь я) хочет с вами поделиться.

Читать далее
Всего голосов 12: ↑12 и ↓0 +12
Комментарии 11

Просто об архитектуре в Android

Уровень сложности Простой
Время на прочтение 9 мин
Количество просмотров 7.9K

В нашем скромном мире разработки Android есть общепринятый подход к проектированию приложений - Clean Architecture, который рекомендуется Google. Несмотря на множество статей, посвященных этому стандарту, вопросы и споры вокруг того, как "правильно готовить" Clean Architecture, остаются актуальными.

Меня зовут Артем, я Android developer BSL. В данной статье я рассмотрю один из возможных путей - простота и гармоничность на основе Clean Architecture. Важно понимать, что это всего лишь один из вариантов, который основан на моем личном видении. В мире разнообразных подходов не существует идеала, и, возможно, именно в этом заключается привлекательность процесса разработки - в бесконечных спорах и поиске оптимального решения.

Читать далее
Всего голосов 9: ↑7 и ↓2 +5
Комментарии 6

Истории

DataMaps. Рассказ о нашей ORM на Kotlin

Уровень сложности Простой
Время на прочтение 15 мин
Количество просмотров 2.4K

Уже несколько лет мы с командой трудимся над платформой, которая официально называется БФТ.Платформа, а менее официально - Ice. В основном наша платформа используется в органах власти и государственных учреждениях.
Сегодня хотелось бы рассказать не обо всей платформе, а только об одном из ее компонентов - ORM (object-relational mapping) - фреймворке DataMaps.

Данная статья не инструкция или справка. Это достаточно поверхностный обзор, цель которого — получить первичную обратную связь: интересен ли наш фреймворк сообществу?

Внутри БФТ-Холдинга Datamaps зарекомендовали с одной стороны, как легкий, наглядный и понятный для разработчиков фреймворк, с другой стороны, мощный по своим возможностям.

Ознакомиться
Всего голосов 15: ↑14 и ↓1 +13
Комментарии 18

Заводим Яндекс Карты в Compose Multiplatform

Уровень сложности Средний
Время на прочтение 11 мин
Количество просмотров 2.3K

Привет! Это мой первый пост на Хабре, буду рад услышать профессиональное и не очень мнение по поводу этой статьи.

Реализуем Яндекс Карты в KMP проекте с использованием Compose Multiplatform. Нестандартное решение с интерфейсом на Swift и передачей кода через DI.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 2

Уровни изолированности транзакций для самых маленьких

Уровень сложности Простой
Время на прочтение 11 мин
Количество просмотров 9.9K

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

Если у вас есть собственные кейсы, которыми вы бы хотели поделиться, пишите в комментариях. 

Читать далее
Всего голосов 14: ↑11 и ↓3 +8
Комментарии 9

Coroutine Stacks — плагин для отладки корутин Kotlin

Уровень сложности Простой
Время на прочтение 2 мин
Количество просмотров 3.8K

Всем привет!

В рамках программы Google Summer of Code 2023 мы с моим студентом разработали плагин для Intellij IDEA, который является аналогом Parallel Stacks из Visual Studio, CLion и Rider для Kotlin coroutines. Плагин анализирует стек трейсы каждой корутины в приложении и строит граф, объединяя общие наборы стек фреймов в вершины. Таким образом, во время отладки вашего приложения вы можете проанализировать
потоки выполнения всех корутин в вашей программе.

Читать далее
Всего голосов 19: ↑19 и ↓0 +19
Комментарии 5

Создание и использование BOM в Gradle

Уровень сложности Средний
Время на прочтение 9 мин
Количество просмотров 3.8K

В каждой компании (а если она крупная, то, скорее всего, в каждом подразделении) должна быть выстроена культура использования BOM (bill of materials) для управления версиями зависимостей. В этой статье я хочу поделиться своим видением того, как это может быть организовано, а также рассмотреть более сложные случаи создания и использования BOM в Gradle-проектах.

Читать далее
Всего голосов 13: ↑12 и ↓1 +11
Комментарии 9

Рассчитываем рейтинг товара на основе оценок пользователей с KafkaStreams и OpenSearch

Уровень сложности Средний
Время на прочтение 14 мин
Количество просмотров 2.6K

Всем привет! Меня зовут Александр. Последний год тружусь фрилансером на проекте по созданию очередного маркетплейса. Мои задачи включают разработку скоринговой системы продуктов, которая бы позволяла формировать выборку товаров по популярности на основе нескольких показателей. Одним из показателей являются оценки пользователей по шкале от 1 до 5. Думаю, что не станет открытием Америки то, что расчет рейтинга товара по среднему арифметическому всех оценок приводит к насовсем корректным результатам выборки. Например, при таком подходе товар "А" с одной оценкой 5 в рейтинге будет выше товара "Б", у которого сотня оценок 5 и одна оценка 4. Решение данной проблемы давно найдено - для расчета следует применить доверительный интервал биномиального распределения по методу Уилсона (Wilson Score Confidence Interval).

Читать далее
Всего голосов 9: ↑9 и ↓0 +9
Комментарии 0

Простой вопрос по Android Core, на который даже сеньоры отвечают неправильно

Уровень сложности Средний
Время на прочтение 2 мин
Количество просмотров 13K

Мне кажется, я придумал очень простой вопрос по Android, но жаль, что не все поймут в чём же дело.

Хочешь проверить свои знания? Тогда заходи.

Читать далее
Всего голосов 22: ↑17 и ↓5 +12
Комментарии 34

Kotlin — язык программирования: для чего используется, плюсы и минусы

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 12K

Узнайте больше о языке программирования Котлин. Я расскажу, где применяется Kotlin и почему он оптимален для приложений на Android. Подробнее в блоге CREAZARD.

Приветствую! Меня зовут Громова Алена и я основатель компании мобильной разработки. Этот материал в своем блоге решила посвятить языку Kotlin, как одному из “ходовых” языков программирования, с которыми давно работает моя команда.

Читать далее
Всего голосов 7: ↑2 и ↓5 -3
Комментарии 17

remember «Forever». Как сохранить скролл при уходе с экрана

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 2.1K

Всем привет! Меня зовут Константин и я лид мобильной команды в финтех компании PeterPartner.

В этой статье решим проблему сохранения состояний экрана при навигации между экранами используя Jetpack Compose

Читать далее
Всего голосов 1: ↑0 и ↓1 -1
Комментарии 2

Ближайшие события

Открытый урок «Behaviour Tree в Unity»
Дата 8 февраля
Время 19:00
Место
Онлайн

Абстрактность в Swift

Уровень сложности Простой
Время на прочтение 13 мин
Количество просмотров 2.1K

Абстракция, Инкапсуляция, Наследованное, Полиморфизм.

Каждый про них хоть раз говорил на собеседовании или обсуждал в компании друзей, но далеко не всегда можно встретить соблюдение данных принципов в реальной жизни.

В процессе разработки 11 экранов я обнаружил слишком много повторяющегося кода, не говоря о том, что со временем вьюмодели стали расширяться, где-то были реализованы блоки кода с Combine паблишерами, а в каждой вьюмодели реализовывался один и тот же метод observe для StateFlow из KMP. В этот момент и вступает в игру первый принцип ООП - Абстракция, где повторяющийся код объединяется в один общий модуль, откуда наследники могут брать реализацию.

В данной статье мы рассмотрим способы создания абстракции в iOS проекте на языке Swift, а также сравним методы с реализацией на языке Kotlin и узнаем, с какими подводными камнями можно столкнуться.

Узнать!
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 5

Почему разработчики любят Kotlin

Уровень сложности Простой
Время на прочтение 3 мин
Количество просмотров 9.7K

Привет, Хабр! Мы в компании Friflex запустили подкаст «Гости из IT». Вместе с экспертами из разных областей IT разбираемся в технологиях и обсуждаем, как они меняют нашу жизнь и работу. 

Сегодня размышляем про Kotlin. Почему его любят, обвиняют в сахарности и не могут заключить в рамки классического определения. Своими мыслями делятся эксперты по Kotlin: Александр Нозик, директор центра научного программирования и руководитель российской Kotlin-группы, и Александр Соколинский, популяризатор Kotlin в комьюнити разработчиков. А модерируют дискуссию блогер Алексей Гладков и Петр Чернышев из Friflex.

Читать далее
Всего голосов 11: ↑6 и ↓5 +1
Комментарии 22

Работаем с enum в kotlin/jvm правильно

Уровень сложности Средний
Время на прочтение 3 мин
Количество просмотров 5.3K

А вы знали, что HashMap для enum уступает по эффективности EnumMap? Или что EnumSet под капотом это обычный long? Под катом несколько рецептов удобного применения этих структур.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 4

Stone. Квалификаторы и идентификаторы

Уровень сложности Средний
Время на прочтение 8 мин
Количество просмотров 803

Использование библиотеки DI с новых взглядом набирает обороты. И автор хотел бы рассказать еще об одной идее, которую сподвигли сделать библиотекой такой, какой она сейчас является.

Собственные решения для разработчика развивать и разрабатывать оказалось крайне удобно. Архитектура библиотеки и ее фичи разрабатывались под конкретные задачи в проектах. И особенный случай в проекте, заставил переосмыслить всем привычные квалификаторы для DI, и добавить что-то новое.

Случай, кстати, оказался не новый, и автор много его встречал в различных проектах. Так что, думаю для многих из читателей такой пример покажется до боли знакомым.

Читать далее
Рейтинг 0
Комментарии 0

Модульная запутанность. Как распарсить одну модель в разных модулях

Время на прочтение 4 мин
Количество просмотров 1.1K

Меня зовут Константин и я лид мобильной команды в финтех компании PeterPartner.

Хочу поделиться тем как распарсить одну модель с бекенда в разных Impl модулях. И немного о многомодульных приложениях в целом.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 2

Detekt: как статический анализ помогает улучшить код автотестов

Уровень сложности Средний
Время на прочтение 11 мин
Количество просмотров 2.6K

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

И у каждой ошибки есть своя цена. Было бы здорово, если бы о них можно было узнать как можно быстрее и без привлечения лишних ресурсов.

Это может касаться как простых ошибок, на которые не хочется тратить время специалистов, так и неочевидных ошибок, у которых иногда непросто определить причину.

Меня зовут Николай, и я инженер в мобильной платформенной команде Яндекс Еды. В этой статье я расскажу, как мы повышаем качество кода автотестов Android-приложения. И в этом нам помогает статический анализ.

Читать далее
Всего голосов 9: ↑9 и ↓0 +9
Комментарии 0

Массивы в Kotlin

Уровень сложности Простой
Время на прочтение 17 мин
Количество просмотров 5.6K

Я - Денис, Junior Android-разработчик в «Лайв Тайпинге». В этой статье расскажу о массивах. Вы узнаете: как они устроены в памяти компьютера, особенности реализации в разных ЯП, оптимизациях, а также частых вопросах на собеседованиях.

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

Погнали!
Всего голосов 8: ↑5 и ↓3 +2
Комментарии 20

Вклад авторов