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

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

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

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

Может ли мобильный-разработчик стать CTO?

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

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

Если серьёзно, карьера мобильного разработчика, который хочет вырасти в большого руководителя, может складываться по-разному. Например, мой путь начался в 2013 году, и за это время я успел поработать и в маленьких стартапах, и в больших корпорациях. Сейчас я Director of Engineering в Яндекс Go. Последние шесть лет я управляю разными командами разного размера: от 5 до 200+ человек.

В этой статье я хочу рассказать, какие есть пути развития в мобильной разработке, что делать, если ты уже тимлид, кто такие крутые Individual Contributors (топовые разработчики) и как стать одним из них. Обо всём этом читайте под катом: попробуем разобраться, как расти и куда это может завести.

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

Huawei продвигает собственную ОС и планирует дистанцироваться от Android, Windows и других операционных систем

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

На Хабре не раз и не два писали про Harmony OS, китайскую операционную систему, которая изначально базировалась на Андроиде, но потом стала постепенно удаляться от своих корней. Китайская компания Huawei, разработавшая Harmony OS, планирует продвигать свою операционную систему в качестве основного продукта для всех своих девайсов. Что происходит и какие у этого проекта перспективы — читайте под катом.

Читать далее
Всего голосов 9: ↑10.5 и ↓-1.5+12
Комментарии36

Мобильная разработка за неделю #533 (1 — 7 апреля)

Время на прочтение4 мин
Количество просмотров2.3K
В новом выпуске динамические фреймворки и роботы Apple, Telegram на Android-смартфоне 14-летней давности, игра в безопасность, скрытые сокровища интерфейсного дизайна, самые скачиваемые и зарабатывающие приложения в России в марте, фальшивая социальная сеть, которая сама ставит вам лайки, и многое другое! Подключайтесь!

Подписывайтесь на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →
Всего голосов 4: ↑5 и ↓-1+6
Комментарии0

KMP, догфудинг и велосипеды в стартапе американской версии «Кухни на районе»

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

Привет! Меня зовут Максим, я руководитель мобильной разработки в KTS. Недавно я попросил рассказать об используемых технологиях бывшего коллегу Сеню Суздальницкого, CTO Sizl — стартапа доставки еды в Чикаго.

Получилось большое интервью, в котором мы поговорили о том, почему между Flutter, React Native и нативной разработкой для мобильных приложений он выбрал KMP, а также работу в «Рокетбанке» и «Кухне на районе», нюансы запуска стартапа в США и многое другое

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

Истории

SwiftUI: архитектура State-Model-View

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

В документации по UIKit компании Apple можно найти объяснение, что “структура приложений основана на шаблоне проектирования Model-View-Controller (MVC)”.

В материалах Apple по SwiftUI объяснений и даже просто ссылок на паттерны проектирования, похоже, нет. Попробуем сначала разобраться почему. Далее рассмотрим логичные и простые решения для построения как отдельных компонентов, так и уровень приложения с использованием состояний и property wrappers; подход, который логично обозначить как State-Model-View.

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

Как исправить ITMS-91053: Missing API declaration

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

Если вы разработчик iOS (или Flutter, как я) приложений, вероятно, вы уже сталкивались с предупреждением от Apple: ITMS-91053: Missing API Declaration. 

Читать далее
Всего голосов 2: ↑2.5 и ↓-0.5+3
Комментарии10

Как определить, что мобильное приложение написано на Flutter

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

Привет, Flutter-энтузиасты! Сегодня мы поговорим о том, как можно определить, что мобильное приложение написано на Flutter. Это знание может быть полезным для разработчиков и менеджеров в иссоедовании конкурентов, а также для любителей технологий, которые просто хотят узнать больше о том, что находится под капотом их любимых приложений. Итак, без лишних предисловий, давайте приступим.

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

Эффективный Dart: Руководство по документации

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

Привет, если вы на пути изучения Flutter/Dart или вам просто интересно почитать про путь изучения, подписывайтесь на мой канал в telegram, буду рад вас видеть! А сегодня поговорим про руководство по документации в Dart!

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

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

Сам себе экосистема. Часть 4: как я реализовал клиент Telegram на Android-смартфоне 14-летней давности?

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

С момента выхода первой части статьи из рубрики «сам себе экосистема» прошёл уже практически год! За это время, мы успели с вами реализовать клиенты VK и YouTube, которые работают на Android 2.2+, а также на Windows Phone 8, написать небольшую 2D-игру с нуля весом менее 1Мб, которая работает практически везде и довести существующее приложение до ума, дабы оно работало даже на смартфоне с дисплеем 240x320! Но на дворе 2024 год, люди стремительно переходят из соц. сетей в продвинутые мессенджеры и уже сложно себе представить современного человека, который не пользовался бы «телегой» или даже «вайбером» в качестве основного средства общения. Поэтому я решил реализовать клиент Telegram на смартфоне 14-летней давности на базе официальной реализации MTProto от команды Telegram — TDLib. Сегодня мы с вами: узнаем новые причины мотивации вернуть в строй смартфоны прошлых лет, напишем на C# реле-сервер, который обрабатывает пакеты MTProto и кодирует их в простой текстовый формат датасетов, который можно моментально обработать даже при нестабильном GPRS-соединении на 21-летнем Siemens C60, а также узнаем о разработке миниатюрных Android-приложений на базе «голого» API-системы, которые не тянут за собой никаких зависимостей, в том числе и AppCompat/androidx. Интересно? Тогда жду вас под катом!
Читать дальше →
Всего голосов 87: ↑86 и ↓1+85
Комментарии32

Распознавание виджетов на экране приложения Flutter

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

Hola, Amigos! На связи Саша Чаплыгин, Flutter-dev агентства продуктовой разработки Amiga и соавтор телеграм-канала Flutter. Много. Сегодня мы вновь займемся практикой! Расскажу об интересной теме — определение положения объекта на экране. Это может быть полезно, когда мы хотим понять, виден тот или иной виджет на экране в данный момент или нет.

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

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

Время на прочтение4 мин
Количество просмотров1.3K
В нашем новом еженедельном дайджесте WWDC 2024 и DVD-заставка на SwiftUI, более старый Android и инструментальные цепочки Gradle, анализ производительности React Native, инклюзивность и цифровая доступность, временное решение на 30 лет и многое другое. Подключайтесь!

Подписывайтесь на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

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

Анализ производительности React Native приложений: как выявить проблемы и улучшить перформанс

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

Привет, Хабр! Меня зовут Вадим, я мобильный разработчик в СберМаркете. В этой статье расскажу, как провести профилирование (оно же измерение производительности или оценка перформанса) в react native приложениях: как выявить источник проблем и решить их. В русскоязычных источниках не так много информации по данной теме. Я потратил немало времени, чтобы со всем разобраться, поэтому попытаюсь восполнить этот пробел и для вас :)

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

Кодогенерация токенов дизайн-системы для Android по Figma API

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

По мере развития проекта в целом и дизайн-системы в частности дизайн-токенов становится очень много. Для примера, у нас уже около четырёхсот иконок, больше двухсот цветов и перспектива внедрения нескольких тем в приложении. Что ещё, если не автоматизация, позволит держать в консистентности всю эту систему?

Рассказываю про наш тернистый путь к собственному генератору токенов дизайн-системы.

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

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

One day offer от ВСК
Дата16 – 17 мая
Время09:00 – 18:00
Место
Онлайн
Конференция «Я.Железо»
Дата18 мая
Время14:00 – 23:59
Место
МоскваОнлайн
Антиконференция X5 Future Night
Дата30 мая
Время11:00 – 23:00
Место
Онлайн
Конференция «IT IS CONF 2024»
Дата20 июня
Время09:00 – 19:00
Место
Екатеринбург
Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область

Продуктовый подход к pet-проекту или как я разработал музыкальное веб-приложение

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

Что вам может дать продуктовый подход к pet-проекту? Если смотреть на pet-проект не как на лабораторную работу, а как на будущий продукт, начинаешь лучше понимать весь цикл разработки. При таком подходе ты сперва выступаешь в роли заказчика: определяешь, какую задачу пользователя решаешь, как это сделать наилучшим образом, а потом подбираешь технологии, которыми легче всего реализовать функционал или которые хочется попробовать. В тексте я расскажу о развитии моего pet-проекта по созданию музыкального стримингового веб-приложения и чему удалось научиться, используя данный подход.

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

Privacy Manifest: что нужно о нём знать для внедрения в проект

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

На работе я столкнулся с задачей внедрения Privacy Manifest в проект. Изучение вопроса началось с прочтения документации Apple, а продолжилось просмотром WWDC-сессии на тему конфиденциальности. После внедрения оказалось, что для корректной работы над задачей нужно изучить больше информации. Поэтому я решил поделиться опытом в формате инструкции. Покажу, как внедрять Privacy Manifest на примере вымышленного проекта, и дам практические советы по внедрению манифеста конфиденциальности.

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

[Хабр, help] Android-разработчица. Как сделать первые шаги?

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

Здравствуйте, я очень долго думала, стоит ли мне регистрироваться на "Хабре" и обращаться, как новичку, по этому вопросу, так как я не первая и не последняя, с подобными запросами.

Я хочу стать Android-разработчицей, с нуля.
Пожалуйста, укажите с чего начать первые шаги?


Пожалуйста, войдите в моё положение и помогите, направив меня на путь. Я не прошу меня жалеть или помогать материально — я справлюсь сама. Для меня сейчас информация — на вес золота.

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

Читать далее
Всего голосов 49: ↑25 и ↓24+1
Комментарии35

Сложная архитектура простых приложений

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

По мотивам Adidas Running (ex. Runtastic)

Как я бы проектировал это интересное, но малоизвестное у нас приложение в роли архитектора.

Предыстория

Рынка систем электронных соревнований (в 2012 г) нет, но есть огромный интерес к спортивному образу жизни и к соревнованиям. В США не менее 50 миллионов (!) человек (это примерно 15% всего населения) хотя бы раз в неделю выходят на пробежку.

Адидас имеет объем продаж 20–30 млрд долл. в год.

Основной рынок – США, остальные страны – второстепенные рынки.

Посмотреть архитектуру
Всего голосов 16: ↑14 и ↓2+12
Комментарии4

Тайное знание: синхронизация, многопоточность, очереди

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

Может ли быть так, что в большинстве популярных языков отсутствует самый эффективный механизм синхронизации? Что инженеры Microsoft, Oracle и мн. др., не говоря уже об остальных, вплоть до 2024 года так и не догадались, как же эффективнее всего синхронизировать доступ к данным? А все что знает абсолютное большинство программистов, в том числе топовых IT компаний (за исключением редких разработчиков платформ Apple) о синхронизации — ошибочно? Сегодня попробуем разобраться.

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

Читать далее
Всего голосов 21: ↑10 и ↓11-1
Комментарии73

К чему с годами приводит работа с Dependency Injection и Service Locator

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

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

Так произошло и со мной. Я решил написать полноценный функционал для работы с зависимостями и, так как я Android-разработчик, адаптировать для работы в привычной среде для моих привычных задач. 

Делюсь написанным — вдруг вам это поможет прокачать технические скиллы и создать собственную библиотеку. 

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

Context receivers — новые extension functions

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

Поговорим сегодня про context receivers — фиче Kotlin, про которую я узнал давно, но смог найти применение лишь пару месяцев назад. Расскажу о том, что такое context receivers, где их можно использовать, и, конечно же, про «успешный успех» — минус 60% самописного DI в OzonID SDK. Но обо всём по порядку.

Читать далее
Всего голосов 26: ↑25 и ↓1+24
Комментарии8

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

Работа

iOS разработчик
28 вакансий
Swift разработчик
33 вакансии