У «Практикума» стартовали два курса по мобильной разработке: для 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 — причём в любой стране, не только в России.
Что выбрать
Если выбирать по деньгам — зарплаты больше у iOS-программистов, даже у джунов. Да и за приложения пользователи платят в среднем в 2 раза больше.
Если выбирать по простоте входа — начать программировать под Android намного проще, чем под iOS, и сгодится любой компьютер.
Если выбирать по языку программирования — то Java более универсальный, чем все остальные языки мобильной разработки, а значит, всегда можно сменить профиль и писать на Java что-то другое.
Если выбирать с учётом санкций и политической обстановки, то Android безопаснее.
Призыв к действию
Выбирайте и пробуйте бесплатно, если заинтересовались:
🔵 iOS-разработчик в Практикуме
🔴 Android-разработчик в Практикуме
Каждый раз, когда вы переходите на «Практикум» с сайта «Кода», у «Практикума» появляется дополнительный аргумент продлить нашу работу на следующий год.