
Мы вырастили монстра, который больше не нужен (с)
Рассмотрим возможности применения модного фреймворка HTMX в связке с Ktor на примере написания загрузчика видео.
Статически типизированный язык программирования
Мы вырастили монстра, который больше не нужен (с)
Рассмотрим возможности применения модного фреймворка HTMX в связке с Ktor на примере написания загрузчика видео.
Всем привет! Меня зовут Данил Киселев, я Android-разработчик в AGIMA. В этой статье расскажу, как мы реализовали собственный инструмент для доставки сборок Android-приложений. Цель статьи — сэкономить время команд, которые занимаются разработкой Android-проектов и у которых пока нет подобного решения. Также к статье я прикрепил репозиторий с кодом проекта. Вы можете использовать его как стартовую версию и дорабатывать под свои нужды.
Всем привет!
В этой статье я покажу, как создать свайп для элементов RecyclerView с использованием ItemTouchHelper, который будет отрисовывать несколько кнопок. Этот функционал может быть полезен для добавления взаимодействия с элементами списка, например, для удаления или редактирования элементов.
Хочу поделиться своим опытом создания кроссплатформенного приложения на базе kotlin-multiplatform (KMP), организации его архитектуры, настройки для работы с различными библиотеками и особенностями его работы. Статья подойдет в первую очередь разработчикам, которые уже имеют опыт с многомодульными проектами в android и начинают изучать KMP. В конце я опишу свою реализацию архитектурного паттерна MVI и его применение в проекте.
Привет! Сегодня с вами Максим Кругликов из Surf Android Team с переводом статьи про устройство аннотаций в Kotlin и три основных механизма их обработки: процессинг, рефлексию и lint.
В этой статье эксперт сообщества Spring АйО – Михаил Поливаха рассмотрит новый компилятор К2 для Kotlin. В первую очередь он расскажет про то, какие проблемы должен решить новый компилятор, а потом про его дополнительные улучшения, которые дает эта версия. Гайд по миграции на новую версию будет опубликован в следующей части этой статьи.
В наше время иррационализма, утечек данных с серверов, постоянного внедрения рекламы тут и там, мошенничества, неумелого программирования, приложения начинают не помогать, а раздражать, а то и вовсе могут нанести вред. Поэтому в купе с несправедливостью и желанием сделать всё самому, в этой статье, мне охота показать, как легко сделать одно из бытовых приложений своими руками, на примере приложения хранения паролей, с помощью текстового файла, шифрования и облака.
Интеграция различных геосервисов в проект может быть сложной задачей, особенно когда требуется поддержка нескольких провайдеров одновременно. Наиболее популярные провайдеры карт, такие как Google Maps и Яндекс.Карты, предлагают различные API и функциональные возможности, что может привести к ряду проблем при создании абстракции для работы с ними.
В этой статье я расскажу о создании обертки для самых популярных провайдеров карт и о проблемах, с которыми можно столкнуться. Мы разберем различия интеграции и создание интерфейса для работы с разными провайдерами.
Начиная с июня 2023 года мы стали получать жалобы от пользователей о том, что у них не отображаются письма в Android-клиенте Почты Mail.ru. В ходе исследования мы даже приглашали пользователя к нам в офис для отладки. В конце концов мы поняли, что проблема на стороне WebView, компонента, с помощью которого мы можем отображать веб страницы. Ни для кого не секрет, что WebView используется во многих банковских и почтовых клиентах, в приложениях интернет-магазинов, сервисов доставки и многих других. Также изучили другие почтовые сервисы, нам хотелось понять, как они с этим справились. Оказалось — никак :)
Привет! Я Антон, Android-разработчик в команде Т-Бизнеса. Занимаюсь интеграцией нескольких наших внутренних SDK в приложение и иногда участвую в их разработке.
Хочу поговорить про проблемы обратной совместимости, которые я встречал в своей работе, и предостеречь от выстрела себе или клиентам вашей библиотеки в ногу.
Привет, Хабр! Я Анатолий, главный инженер-программист разработки мобильных приложений в ПСБ. В этой статье делюсь опытом миграции крупного монолитного приложения «Мой Бизнес» на модули. Расскажу все ключевые моменты, и с какими сложностями мы столкнулись на этом пути.
Существуют разные способы реализации синтаксических анализаторов для заданной грамматики. В статье рассматривается реализация комбинаторов синтаксического анализа на языке Kotlin для разбора контекстно-свободных и контекстно-зависимых языков.
Прошлая статья была про реализацию функции на языке Си, которая может быть приостановлена и возобновлена. В этой статье придумаем задачу, набросаем примерные решения и в конце сравним корутины с другими способами. Примеры и код будут условными и нужны для понимания идеи и различий. Код будет на языке, похожим на Kotlin...
Привет, Хабр!
Сегодня по горячим следам расскажу, как прошёл первый день конференции мобильных разработчиков Mobius в этом году.
Он был очень насыщенным, мне удалось побывать на шести докладах, в основном по android-разработке.
Проходит мероприятие в кластере Ломоносов - очень красивая и технологичная площадка снаружи и внутри. Сегодня, правда, было очень жарко, встречаем лето. При регистрации дают фигурку очаровательного Mobius-утенка, сохраню на память.
Тулкиты кодогенерации Android vs iOS, Анна Жаркова, Usetech
Первый доклад сегодня был насыщенным и хардкорным: Аня кратко рассказала о компиляции в целом и подробно - о способах кодогенерации в Android Studio (IntelliJ IDEA) и Xcode. С помощью кодогенерации можно решить самые разные задачи: от генерации View до упрощения генерации архитектурных компонентов.
Рассмотрели PSI (Programming Structure Interface), Xcode template, Android Studio Wizard template, создание собственных плагинов, Xcode Source Editor и SPM плагины, Android build-time генераторы (KSP, KCP). Упомянули ChatGPT, Copilot и Gemini, куда же без них.
Провели соревнование между Android и iOS, у кого инструменты удобнее. Спойлер: победила дружба)
https://mobiusconf.com/talks/536b1d2f4e0b4be8a60da58d4095c8c7/?referer=/schedule/today/
Нетворкинг
На первой “переменке” удалось побывать у стендов Ozon Tech и hh.ru. У обоих классные квесты, от классических опросов до призов за потение на гребном тренажёре. Лайк стикерам hh.ru, особенно с горящей перед дедлайном попой)
Как избавиться от рекурсии, или Как мой код попал в Google, Максим Сидоров, SberDevices
В мире разработки программного обеспечения создание эффективных и масштабируемых веб-API является ключевой задачей для большинства проектов. Использование правильного инструментария и языка программирования может существенно облегчить этот процесс. В этой статье мы рассмотрим, как использование языка программирования Kotlin с фреймворком Spring Boot упрощает создание REST API, обеспечивая при этом высокую производительность и надежность.
Почему Kotlin и Spring Boot?
Kotlin, разработанный компанией JetBrains, и Spring Boot, один из наиболее популярных фреймворков для создания веб-приложений на языке Java, образуют мощное сочетание для разработки REST API. Kotlin предоставляет чистый и современный синтаксис, что упрощает разработку и делает код более читаемым. Spring Boot, с другой стороны, предоставляет множество готовых компонентов и упрощает конфигурацию, что позволяет сосредоточиться на бизнес-логике приложения.
Привет! Меня зовут Никита Грибков, я Flutter-разработчик в AGIMA. В сети море статей о различиях между SQL и NoSQL, но в большинстве из них много теории и почти совсем нет прикладных советов. Я пошел другим путем: ниже постараюсь внятно объяснить, какую систему и в каком случае выбирать. Спойлер: всё зависит от проекта и амбиций заказчика. Конечно, сосредоточусь на мобильной разработке, но основные принципы подойдут и в вебе.
Наверняка вы не раз сталкивались с проблемой нехватки памяти на вашем ПК при билде проектов? Недавно мне стало не хватать основной памяти на диске, где установлена система MacOS. Решением проблемы послужило приобретение внешнего SSD диска. Как же настроить работу билдов Android и iOS на внешнем диске и перенести все проекты и приложения? Об этом и пойдет речь в этой статье. Приятного чтения!
Меня зовут Ира и я руковожу отделом тестирования мобильной платформы: наш отдел занимается разработкой инструментов для автоматизации тестирования мобильных приложений Ozon и тестированием внутренних библиотек, которые используются в наших приложениях. Около года назад мы пытались понять, почему у одной из команд джоба с автотестами отваливается по тайм-ауту. К слову, это был проект мобильного приложения для продавцов, и на нем у нас для автоматизации тестирования используются нативные фреймворки: Kaspresso + Kotlin для Android и XCTest + Swift для iOS.
Одна из гипотез заключалась в том, что в приложении могут быть утечки памяти и что-то зависает. Спойлер: дело было не в этом. В общем, около года назад я проверяла, что к чему там у нас с памятью приложения, а сейчас поняла, что полученными знаниями можно и поделиться.
Эта статья будет полезна тем, кто только начинает изучать, что происходит со стабильностью мобильного приложения. Внутри статьи разберёмся с тем, как приложение работает с оперативной памятью; что такое утечки памяти и когда они возникают; как утечки влияют на стабильность работы приложения и как их находить.