Мобильная разработка для iOS и Android — что лучше и с чего начать?

Мобильная разработка для iOS и Android — что лучше и с чего начать?

Статья для тех, кто не знает, что выбрать

У «Практикума» стартовали два курса по мобильной разработке: для Android и для iOS. Попробовать бесплатно можно оба, но в практическом смысле вложить силы нужно во что-то одно. 

В этом тексте попробуем ответить на вопрос, какая платформа имеет больше перспектив для разработчиков из России в 2022 году (с учётом всего, что происходит). И немного матчасти, чтобы понимать, как всё устроено. 

Лицензия разработчика

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

❌ не всё можно проверить в эмуляторе (например, полноценную работу гироскопа или камеры);

❌ для установки приложения другим людям нужно будет приходить к вам со своим телефоном, чтобы вы могли физически скачать им ваше приложение;

❌ в случае с Apple потребуются дополнительные настройки телефона и обновление приложения каждые 7 дней.

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

🍏 Лицензия разработчика Apple стоит 99 долларов, продлевать нужно каждый год. Есть версия для крупных разработчиков, она стоит дороже, но позволяет больше зарабатывать с продаж и рекламы.

🤖 Лицензия для Android стоит 25 долларов, и её не нужно продлевать каждый год — лицензия привязывается к аккаунту и действует бессрочно. 

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

Языки программирования

🍏 Чтобы программировать под Apple, нужно знать Swift или Objective-C. Правда, кроме как для мобильной разработки, эти языки мало где сейчас пригодятся, поэтому специалистом широкого профиля стать не получится.

🤖 Android-разработка стоит на двух языках: Java и Kotlin. При этом на Java пишется огромное количество софта как для крупных компаний, так и для разных гаджетов. Если не понравится мобильная разработка, можно переключиться на что-то другое с тем же языком.

Железо

🍏 Писать код для Apple можно в любом редакторе, но для запуска и отладки нужен какой-то компьютер Apple: мак, макбук или мак мини. Некоторые программисты запускают эмуляторы MacOS, но они работают медленно, нестабильно и не поддерживают все возможности языка.

🤖 При программировании под Android можно писать и компилировать код на любом железе с любой операционной системой. А всё потому, что внутри Android тоже стоит своя виртуальная машина Java, которая работает со своим кодом. Поэтому, если у вас есть любой компьютер, — вы уже можете начать писать приложения для Android.

Количество устройств в мире

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

🍏 Каждый четвёртый смартфон в мире и в России — это айфон. Последняя версия MacOS для компьютера тоже научилась запускать приложения для айфонов. А если учесть, что Apple плавно движется к тому, чтобы любые приложения работали на любом их устройстве, то количество устройств может вырасти ещё больше.

🤖 На Android работают 75% телефонов, но сюда же можно добавить разные умные гаджеты: колонки, часы, микроволновки, автомагнитолы и всё такое. Если говорить в абсолютных цифрах, то это примерно 2,5—3 миллиарда устройств. Также в Windows 11 появилась поддержка Android-приложений. 

Android однозначно намного более распространён, чем iOS.

Прибыль от приложений

В 2021 году средний пользователь айфона тратил в 2,6 раза больше денег внутри приложений и в 4 раза больше — на покупку самих приложений, чем пользователи Андроида. С этой точки зрения разработка для iOS гораздо выгоднее, чем для Android, причём в некоторых категориях, например фитнес и здоровье, платную подписку на айфоне покупали в 9 раз чаще.

Получается, что пользователей Айфонов намного меньше, но тратят они намного больше.

Сложность разработки

🍏 У Apple всё просто: есть несколько разных разрешений экрана и стандартные правила оформления приложений, их нужно соблюдать, чтобы приложение прошло модерацию в App Store. Ещё у пользователей iOS большая доля обновлений операционной системы — у 70% стоит последняя версия ОС, что делает разработку проще. Получается, программисту достаточно сделать поддержку 3–4 размеров экрана, а весь остальной интерфейс будет одинаковым.

🤖 Android — это открытая операционная система, и каждый производитель телефонов может выпустить свою версию, которая будет чуть отличаться от классической. Это значит, что то, что работает для одного производителя, может не работать у другого (например, какие-то интерфейсные решения или путь к различным настройкам). Также разработчику нужно учесть огромное количество разных размеров экранов — от 4 дюймов на старых телефонах до 7–8 дюймов на современных флагманах. А ещё у них может быть разное разрешение, пропорции экрана и очень большой разброс по вычислительной мощности. 

В целом iOS — это мир стандартизации и порядка, а Android — это хаос и колхоз. Но приложения выходят и там и там, значит, как-то разработчики этот хаос побеждают. 

Сложность мобильной разработки

Зарплата

🍏 Средняя зарплата iOS-разработчика в России за первое полугодие 2022 года — 208 800 рублей, причём джуниоры получали 108 100 рублей в месяц

🤖 В мире Android в среднем на 9 тысяч меньше — 199 700 рублей в месяц. У новичков — 88 300 рублей в месяц, что на 20 тысяч меньше, чем на iOS.

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

Политические риски

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

Приложения для iOS легально доступны только из AppStore, который хоть и подчиняется местным законам во всех странах, но всё же принадлежит американской компании. 

🤖 Android хоть и тесно связан с «Гуглом», но имеет гораздо более открытую архитектуру: каждый производитель телефонов может лицензировать эту операционную систему для себя. Также есть открытые варианты Android, которые вообще не используют сервисы «Гугла». Заблокировать Android в России так же сложно, как заблокировать Linux. 

Приложения для Android можно устанавливать откуда угодно: как из магазина Google, так и из альт-сторов типа Xiaomi и Samsung. Также приложения устанавливаются напрямую с сайтов. Недавно в России запустился собственный альт-стор RuStore. В итоге заблокировать приложения для пользователей на «Андроиде» намного сложнее, чем на iOS — причём в любой стране, не только в России. 

Российский магазин приложений для Android — RuStore

Что выбрать

Если выбирать по деньгам — зарплаты больше у iOS-программистов, даже у джунов. Да и за приложения пользователи платят в среднем в 2 раза больше.

Если выбирать по простоте входа — начать программировать под Android намного проще, чем под iOS, и сгодится любой компьютер.

Если выбирать по языку программирования — то Java более универсальный, чем все остальные языки мобильной разработки, а значит, всегда можно сменить профиль и писать на Java что-то другое.

Если выбирать с учётом санкций и политической обстановки, то Android безопаснее.

Призыв к действию

Выбирайте и пробуйте бесплатно, если заинтересовались: 

🔵 iOS-разработчик в Практикуме

🔴 Android-разработчик в Практикуме

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

Текст:

Михаил Полянин

Редактор:

Максим Ильяхов

Художник:

Алексей Сухов

Корректор:

Ирина Михеева

Вёрстка:

Кирилл Климентьев

Соцсети:

Виталий Вебер

Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Начать карьеру в ИТ
Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию
Еще по теме
Непрерывный цикл разработки — это как?
Непрерывный цикл разработки — это как?

CI/CD на простых примерах

medium
Что такое кэш и зачем его чистить
Что такое кэш и зачем его чистить

Это старые данные, которые уже могут быть неактуальны

easy
Объясняем объекты

Главное понятие современных подходов к программированию.

hard
Как работает электронная почта
Как работает электронная почта

Самый старый формат общения в интернете

easy
Как установить Вордпресс на свой сайт

Совсем взрослый стал, сайты свои делает, молодец.

hard
Как стать богатым программистом
Как стать богатым программистом

Четыре стратегии повышения дохода, если ты владеешь хотя бы одним языком программирования.

easy
Игра, которая проверяет вашу программистскую логику
Игра, которая проверяет вашу программистскую логику

Разбираем типичное задание на собеседованиях

medium
10 главных конструкций языка Go
10 главных конструкций языка Go

На самом деле 12, но 10 — красиво.

easy
Как выиграть в самой сложной игре мира
Как выиграть в самой сложной игре мира

Поручим это нейронке.

easy
Двоичный калькулятор из бусин и палок
Двоичный калькулятор из бусин и палок

Выглядит странно, но при этом всё работает

easy