При разработке современных приложений важнейшую роль играет качество клиент-серверного взаимодействия. Для достижения стабильной связи между мобильными и веб приложениями и серверной частью необходимо стремиться к созданию надежного и эффективного механизма обмена данными. Это подразумевает создание устойчивого API, которое трудно сломать даже при изменениях в архитектуре сервера, а также легкость интеграции новых клиентов.
Рубрика «kotlin» - 6
Optional vs Nullable на стыке технологий
2025-04-20 в 17:16, admin, рубрики: kotlin, openapi, swift, TypeScriptPet-проект: «Граф Компетенций»
2025-04-17 в 5:15, admin, рубрики: kotlin, Logseq, markdown, obsidian, база знаний, граф компетенций, матрица компетенций, сезон open sourceГраф компетенций – это инструмент для генерации матрицы компетенций ИТ специалистов и тестового материала под каждый уникальный случай.
Целевая аудитория – это непосредственно собеседующий и собеседуемый. Собеседующий готовит темы и вопросы, а кандидат учит теорию.
Сокращения
ГК(CG) – граф компетенций, МК – матрица компетенций, ТУ – тематический узел
Мотивация
Автоматизация версионирования в Kotlin Multiplatform: Решение для Android и iOS
2025-03-28 в 13:16, admin, рубрики: android, compose multiplatform, iOS, kmm, kmp, kotlin, kotlin multiplatform, mobile, multiplatform, versioningПривет! Меня зовут Антон, я Android-разработчик. Недавно у меня появилась идея создать приложение, которое в будущем можно будет опубликовать в сторы. С самого начала я знал, что хочу, чтобы оно работало сразу на двух платформах — iOS и Android.
Передо мной стояло два пути: погрузиться в нативную разработку для iOS или воспользоваться кроссплатформенной технологией. Первый вариант, безусловно, интересен, но требует слишком много времени на освоение. А вот с кроссплатформенной разработкой у меня уже был опыт, поэтому решение далось легко — я выбрал Kotlin Multiplatform (KMP).
Сравнение Dagger 2, Dagger Hilt и Koin
2025-03-13 в 7:15, admin, рубрики: android development, dagger 2, dependency injection, hilt, koin, kotlinВ этой статье мне хотелось бы разобрать вопрос, которым часто задаются начинающие и молодые разработчики мобильных приложений под Android. Многие мобильные разработчики слышали о таких широко известных инструментах внедрения зависимостей (DI), как Koin и Dagger. Они решают одну задачу — управление зависимостями, но делают это по-разному. Но в чём же их принципиальная разница, в чём их отличия, их плюсы и минусы, и какой из этих инструментов выбрать при разработке нового проекта (и в зависимости от его сложности и требований)? Обо всём об этом постараюсь кратко изложить далее и дам рекомендации по выбору для новых проектов.
1. Dagger 2Читать полностью »
Тёмный лес разработки для нестандартных устройств: как войти и не заблудиться
2025-03-11 в 9:12, admin, рубрики: android, android studio, aosp, fastboot, Google, java, kotlin, linux, play services, systemui
Если разработку под устройства можно сравнить с тёмным лесом, то как в нём не заплутать?
Привет, путник! Меня зовут Денис Малых, я работаю в Яндексе и руковожу разработкой общих компонент для платформы, на которой работают наши устройства. А ещё — я член программного комитета конференции Читать полностью »
Telegram Storage. Бесплатная база данных
2025-02-17 в 6:16, admin, рубрики: kotlin, nosql, nosql-database, telegram-storageДа будет Хабр снова торт! Да придут на него статьи о программировании! И да пребудут на нем всегда технические обсуждения. А теперь к делу... Каждый самостоятельно развивающийся программист, рано или поздно сталкивается с тем, что ему нужна облачная база данных для своего проекта. Между тем, ваш проект может быть не денег ради, а души для, друзей, знакомых, небольшой аудитории, и посему платить деньги за настоящее взрослое облачное хранилище данных жалко. Предлагаю вам очень простое в подключении, многократно проверенное мной лично, стабильное и весьма изящное решение этого вопроса. Подойдет, если вы программируете на Kotlin.
Безопасное обновления состояния в ViewModel
2025-02-06 в 13:15, admin, рубрики: arrow, kotlin, mvi, ViewModelЭто краткая заметка о подходе, который я выработал для себя, чтобы обновлять состояние экрана при использовании MVI-like паттерна в ViewModel.
Сразу оговорюсь, что классический "полноценный" MVI подразумевает использование редьюсеров, которые решают часть проблем, описанных в этой заметке, но сугубо на мой вкус, этот подход заставляет писать много бойлерплейтного кода.
Вводные
Предположим, у нас есть базовая ViewModel такого вида (опущу работу с эффектами и прочее, т.к. для примера это излишне):
Читать полностью »
Управление настройками с помощью Jetpack DataStore: Простой подход к сохранению данных разных типов
2025-01-16 в 7:15, admin, рубрики: android, jetpack, Jetpack DataStore, kotlin, mvvm, ViewModelВведение
Всем здравствуйте. Это моя первая статья на такую публику, поэтому просьба не судить строго! :-)
При разработке Android-приложений часто возникает необходимость сохранять пользовательские настройки, такие как выбор темы, язык или другие данные пользователя. Jetpack DataStore — это современное решение для хранения таких данных, которое заменяет устаревший SharedPreferences. В этой статье мы рассмотрим, как использовать DataStore для хранения различных типов данных (Boolean, Integer, Float и String) и как интегрировать его с архитектурой MVVM, используя StateFlow для обновления UI.
Что такое DataStore?
Пожалуй, большинству читателей будет не очень интересна предыстория того как я пришел к этому решению.
Скрытый текст
Металл и алгоритм отжига
2024-12-23 в 8:11, admin, рубрики: gradle, kotlin, Алгоритмы, искусственный интеллект, ПрограммированиеВ этой статье я продемонстрирую алгоритм Брайна Люка "Отжиг", который помогает найти подходящее решение среди множества возможных. И его реализацию на примере задачи о N - Ферзей.
Алгоритм вероятностный и его преимущество в том, что он изучает разные варианты, чтобы не застрять на плохом решении, в отличие от жадных алгоритмов.
