Как стать автором
Поиск
Написать публикацию
Обновить
142.16

Разработка мобильных приложений *

Android, iOS, Windows Phone и прочие

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

Сделай удобно: подборка UI/UX-кейсов из цифровых и нецифровых продуктов (#12)

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

Продолжаю изучать различные UI/UX/CX кейсы в мобильных приложениях, веб-сайтах и в реальном мире. Дизайнерам и менеджерам по продукту, чтобы вдохновиться и добавить в заметки.

Под катом: Aviasales, Яндекс.Карты, Яндекс.Поиск, Airbnb, Citroen.

Читать далее

Как сделать GitLab CI/CD вашим лучшим другом для сборки и доставки Flutter приложений. Часть 1

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

Flutter & GitLab CI/CD. Подготовка и настройка физической машины

В мире мобильной разработки, где скорость и стабильность доставки приложений определяют успех, выбор инструментов для автоматизации становится особенно важным. Работая мобильным разработчиком в TAGES более пяти лет, я убедился, что использование self‑hosted решений дает значительные преимущества в гибкости, надежности и контроле над процессами. Одним из таких мощных инструментов является GitLab — платформа, которая позволяет не только управлять кодом, но и настраивать полноценные CI/CD‑процессы.

Эта статья станет первым шагом на пути к полной автоматизации сборки и доставки Flutter‑приложений. Мы разберем, как превратить вашу физическую машину в надежный инструмент для автоматизации. В конце статьи у вас будет готовая машина, которая сможет запускать и обрабатывать задачи из GitLab.

Читать далее

SwiftUI или UIKit: что выбрать для iOS-приложений?

Время на прочтение6 мин
Количество просмотров731

Привет, Хабр! Сегодня мы в коротком формате сравним SwiftUI и UIKit: где SwiftUI реально выигрывает, а где старый добрый UIKit остаётся незаменимым.

Читать далее

Выживание социофобушка в команде: личный опыт

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров6.5K
Привет! Меня зовут Станислав Иванов, я — Senior iOS Developer в команде мобильной разработки «Лаборатории Касперского». Я социофобушек. Но я разобрался, как жить с этим самодиагнозом в IT, где волей-неволей приходится существовать среди большого количества созвонов, встреч и диалогов.



Если вы из тех, кто хочет только сажать красно-черные деревья / красить кнопки / расстилать инфру / обуздывать многопоточность / варить код, а вас таскают по встречам, вынуждают светить лицом и говорить ртом (и думать: «Кто все эти люди и что они от меня хотят?») — эта статья для вас. На своем совокупном опыте, полученном в разных компаниях, объясню, зачем нужны все эти таскание/свечение/говорение и как уменьшить собственные страдания.
Читать дальше →

У нас в проекте был Compose Multiplatform, но снова я бы так не делал

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

Мобильная разработка продолжает развиваться, но, если честно, никаких революционных прорывов в последнее время не произошло. Громкие темы, вроде Kotlin Multiplatform (KMP), Flutter, Jetpack Compose, SwiftUI, уже давно закрепились в индустрии, а новинки больше эволюционируют, чем меняют правила игры. Компании экспериментируют с кроссплатформенными решениями, и это выглядит логично. Писать общий код для iOS и Android 一 это экономия ресурсов и времени. Вроде бы верно, но на практике всё не так гладко.

Привет, меня зовут Максим Плахута и с недавнего времени я руковожу Android разработкой «Кинопоиска». До этого руководил мобильной разработкой Почты Яндекс. А ещё я участник ПК новой конференции по мобильной разработке Apps Conf. Расскажу, какие шишки набили в реализации кроссплатформенного проекта и чего лучше не делать в современной мобильной разработке.

Читать далее

Воспроизведение и редактирование видео с AVFoundation. Часть 2. Ассеты продвинутые

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

Вторая статья из цикла об идеях воспроизведения и редаĸтирования медиа с
использованием AVFoundation. В ней разберём тему сложных ассетов.

Читать далее

Как создать веб-приложение со своей картой: подключение API v3 Яндекс Карт

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

Сколько карт установлено на вашем смартфоне? Попробуйте ответить на этот вопрос и задумайтесь, как часто их добавляют разработчики приложений. Кто-то отмечает на картах свои магазины, кто-то — делает проекты в духе Zenly, другие — показывают зоны доставки еды и т. д.

Если вам тоже пришлось «вшить» в свое веб-приложение карты, запаситесь терпением. В инструкции рассказываем, как это сделать и настроить тестовое окружение с IDE в облаке. Подробности под катом!
Читать дальше →

App Store блокирует аккаунты разработчиков, а банки всё равно в сторах. Рассказываем, как они это делают

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

С февраля 2024 года Apple блокирует не только российские финтех-приложения и аккаунты разработчиков, но и закрывает доступ для разработки корпоративных сервисов. Это всё новый пакет санкций, который должен ударить по мобильной разработке и доходам бизнеса.

Сейчас гайки закручивают всё больше, а бизнес продолжает находить решения. Компании используют несколько стратегий, чтобы публиковать приложения на iOS и удерживаться там подольше. Рассказываем, как это делают.

Читать статью

Почему нельзя использовать RecyclerView в NestedScrollView и как это исправить?

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

Почему нельзя использовать NestedScrollView вместе с RecyclerView? Я попробую ответить на этот вопрос, и покажу как надо делать

Читать далее

Мобильная разработка за неделю #582 (31 марта — 6 апреля)

Время на прочтение5 мин
Количество просмотров1.3K
В этом выпуске конкатенация против интерполяции, дизайн-система для мобильных устройств и TV, применение zero/empty объектов, игра на LUA для часов Xiaomi Redmi Watch 4, уродливые пейволы, навыки флирта с ИИ-персонажами и многое другое. Заходите!

Читать дальше →

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

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

Давно хотел сделать мобильную игру, но руки никак не доходили. А неделю назад решил, что время пришло, поэтому решено - начинаем делать.

Читать далее

Разбираем чистую архитектуру в Android: от а до я

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

Дорогой читатель! Если ты оказался тут, то скорее всего ты столкнулся с той же проблемой, что и я: 

ты занимаешься Android разработкой и все вокруг говорят о какой-то «чистой архитектуре» (она же - Clean Architecture), указывают её в требованиях к вакансиям, указывают на практиках в вузе и т.д.

Однако информацию о данном подходе приходится собирать по кусочкам. Так что в данной статье я Даниил Закляков, разработчик WMT Group попробую на своем опыте подробно, доступным языком объяснить с чего начинать и как эту архитектуру строить.

Зачем всё это?

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

Читать далее

Google AI Studio: макеты Figma -> iOS приложение на Gemini 2.5 Experimental

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

Gemini 2.5 Experimental воспроизводит в SwiftUI с поразительной точностью стили текста и функциональные возможности прототипов, подготовленных дизайнерами в Figma. Особенно это касается разработки русскоязычных UI.

Выдаёт полноценный изобретательный SwiftUI код, демонстрируя высокий потенциал Gemini 2.5 в преобразовании Figma-макетов в рабочий iOS-код.

Читать далее

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

Воспроизведение и редактирование видео с AVFoundation. Часть 1. Ассеты простые

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

Первая статья из циĸла об идеях воспроизведения и редаĸтирования медиа с
использованием AVFoundation. В ней рассмотрим главный объеĸт работы с медиа –
простой ассет.

Читать далее

Сектанты-ауторсеры против сговоров «домашнего» IT. Чья разработка лучше?

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

Недавно мы опубликовали статью о прямом обмене с системой «Честный ЗНАК», в которой рассказали о способах интеграции с государственной системой маркировки. Один из комментариев к статье невольно поднял дискуссионный вопрос: стоит ли выводить часть IT‑инфраструктуры на аутсорс или выгоднее развивать внутреннюю разработку?

Если готовое решение помогает достичь целей бизнеса эффективнее, чем собственная разработка — это не «убогая попытка вывести часть IT‑инфраструктуры на аутсорс», а рациональное бизнес‑решение. Но в любом случае выбор остаётся за выбирающим.

Читать далее

BundledSQLiteDriver: новый взгляд на SQLite в Android и Kotlin Multiplatform

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

BundledSQLiteDriver из библиотеки androidx.sqlite — это специальная сборка встраиваемой СУБД SQLite от команды разработчиков Android Jetpack, предназначенная для использования в Kotlin Multiplatform проектах. В этой статье мы рассмотрим её особенности.

Читать далее

Обзор Copilot в Xcode на SwiftUI

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

Вот я и добралась до Copilot (знаю, поздно, всё руки не доходили установить). Было жутко интересно, чем конкретно он мне может помочь в написании кода. Так что, ХаброКотаны, кому интересно, приглашаю вас почитать дальше.

P.S. Обложку, кстати, сделал гпт в стиле гибли из моей фоточки.

Читать далее

Реализация простого SSE клиента на Dart

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

Хочу поделиться недавним кейсом из нашей практики мобильной разработки. Перед нами стояла задача — реализовать обновление данных в клиентском приложении в режиме реального времени, когда изменения на сервере моментально отображаются у пользователя.

Мы рассматривали два подхода: WebSocket и Server-Sent Events (SSE). Оба варианта соответствовали нашим требованиям, но в итоге мы остановились на SSE — из-за его простоты реализации и использования стандартного HTTP-протокола.

Читать далее

Код, который не ест батарейку: программируем с умом и экономим ресурсы

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

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

Читать далее

Как правильно организовать проект c модульной архитектурой в iOS-разработке

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

Привет, Хабр! Меня зовут Алексей Григорьев, я iOS-разработчик в МТС, работаю над продуктом Membrana — это тариф + мобильное приложение для управления приватностью в Сети. Сейчас в iOS-приложениях на первое место постепенно выходит модульная архитектура. Она позволяет создавать гибкие и масштабируемые проекты, которые легко сопровождать и развивать. Особенно это актуально при увеличении кодовой базы и разрастании функциональности, когда поддержка монолита усложняется.

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

В этом материале я расскажу про ключевые моменты модульной архитектуры в iOS-приложениях, инструментах для ее внедрения и применения в наших проектах.

Читать далее

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