Мобильная разработка — это когда вы пишете программы для смартфонов. Вот что это за работа, кто и как ей занимается и сколько на ней можно заработать.
Откуда взялась
Лет 10 назад, если нужно было что-то купить дистанционно, люди заходили на сайты. Сайты продавали товары, через сайты можно было иногда заказать еду, на сайтах были заработки и инфопродукты. Это было не очень удобно, но альтернатив не было: смартфоны были в зачаточном состоянии. Зато у многих были компьютеры с браузерами, и там всё было удобно, красиво и быстро.
Потом смартфоны начали распространяться всё шире, и увидели люди, что это хорошо: можно было покупать товары, сидя на унитазе; заказывать суши, стоя в пробке; записываться на ноготочки, лёжа в массажном кресле. Но чтобы всё это сделать, нужны были какие-то интерфейсы.
Дальше произошло две вещи: компании стали адаптировать свои сайты для экранов смартфонов; и они же стали делать приложения, которые заменят эти сайты.
Кому нужна
В коммерческом смысле мобильная разработка нужна трём типам компаний:
- Тем, для кого смартфон — это витрина: всевозможным магазинам и маркетплейсам, ресторанам, службам доставки, такси и т. д. Огромный рынок розничных товаров и услуг нуждается в мобильных приложениях, потому что это для них канал реализации. Примеры: «Озон», «Тануки», «Беру», «Яндекс.Такси», «Гетт».
- Тем, у кого сотрудники используют в работе смартфоны — например, те же курьеры в службах доставки. Он приезжает, отдаёт товар, нажимает у себя кнопку — вот эту кнопку должен кто-то разработать и поддерживать. Примеры: DHL, всевозможные системы управления складом, информационные системы для полиции.
- Тем, кто работает только в «цифре»: электронным курсам, онлайн-играм и т. д. У них в принципе весь продукт — это пиксели на экране, и для них мобильное приложение может быть одним из главных способов распространения. Примеры: социальные сети, онлайн-кинотеатры, учебные платформы, любые мобильные игры.
Рынок довольно большой, спрос на разработчиков есть.
Мобильная разработка для iOS и Android — что лучше и с чего начать?
Мобильная разработка сразу для iOS и Android: это как?
Делаем простое кроссплатформенное мобильное приложение
Настраиваем рабочее окружение для Android-разработки
Делаем из сайта приложение для Android на конструкторе
Что происходит на рынке iOS-разработки в 2023 году? Разговор с профи
Разработка на Android — это действительно сложно? Спросили у реального Android-разработчикаКакие языки нужны для разных платформ
Android. Так как это открытая операционная система, то есть много языков, которые можно использовать в мобильной разработке:
- Java — заработает вообще на любом андроиде;
- Kotlin — почти так же, но есть нюансы;
- С# — берёте Xamarin и начинаете программировать;
- HTML+CSS — делаете сайт, заворачиваете его в программу с помощью Cordova или Phonegap и получаете готовое приложение;
- React Native — знакомый JavaScript в новой упаковке.
iOS. Здесь всё проще:
- Swift — родной язык для iOS-приложений;
- Objective-C — если вам по каким-то причинам не нравится Swift (или вы ретроград);
- С# — да, на нём можно писать одновременно для разных систем, но нужно учитывать различия в интерфейсе и встроенных функциях.
Оговорочка: самые быстрые приложения для Android будут на Java, а для iOS — на Swift. Но они же и самые сложные в изучении. А всякие новомодные обёртки для JavaScript — это будут тормоза и костыли. Работать будет, но медленнее, чем хотелось бы.
Требования к железу
Заниматься мобильной разработкой можно на любом компьютере или ноутбуке, где запускается нужный вам редактор кода. Единственное, на что влияет железо, — на скорость сборки или компиляции готовой программы.
Важный момент: если вы хотите писать приложения для iOS, то вам нужен компьютер Apple или придётся установить MacOS на виртуальную машину под Windows. Если будете использовать виртуалку, приготовьтесь к тому, что иногда что-то не будет работать: драйвера, нужные библиотеки или компоненты операционной системы.
Два подхода к разработке
Есть два подхода к созданию программ: классический и MVP.
Классический подход — это когда приложение придумывают и делают от начала до конца, в полном объёме, месяцев за 6–12. Сначала придумывают все экраны, потом разработчики их реализуют, долго тестируют на всех платформах и выпускают. Плюс в том, что приложение сразу получается клёвым и большим. Минус — за время, пока ты его делал, мир мог измениться, и теперь это приложение никому не нужно.
MVP — это минимальная версия программы, которая содержит только самое нужное для старта. Например, если мы пишем программу для подсчёта шагов, в MVP будет входить сам счётчик и простой вывод шагов на экран. Возможно, это будет выглядеть не так красиво, как хотелось бы, зато можно сразу проверить работу приложения в реальных условиях. А дизайн можно и потом обновить, когда будет готово всё остальное. Плюс в том, что можно быстро реагировать на обстановку в мире. Минус — нельзя точно рассчитать, сколько в итоге будет стоить всё приложение.
Что по зарплате
По данным Хабр Карьеры, за первое полугодие 2020 года зарплаты у мобильных разработчиков такие:
- джуниор — 64 тысячи рублей,
- мидл — 119 тысяч,
- сеньор — 185 тысяч.
Если интересно, сравните их с зарплатами джуниора, мидла и сеньора в других направлениях программирования.