Кто такой iOS-разработчик?

И почему считается, что кодить на iOS удобнее, чем на Android

iOS-разработчик создает и поддерживает мобильные приложения на iOS. Ее адептам нравятся прозрачность ОС, подробные гайдлайны и ограниченное количество гаджетов — не приходится адаптировать интерфейс под каждый смартфон. Вместе с iOS-разработчиком Алексеем Усановым разобрались, что нужно, чтобы освоить профессию, какими компетенциями и качествами надо обладать и сложно ли начать, если нет технического образования.

🤖 Читайте до конца: рассказываем, правда ли, что у Apple очень строгие гайды.

Что делает iOS-разработчик?

iOS-разработчик создает приложения для устройств Apple. Это не только iPhone, но и iPad, Apple Watch и другие гаджеты, входящие в экосистему. Он не только пишет код и работает над интерфейсом, но и занимается поддержкой приложения, адаптацией его под разные модели устройств, тестированием и исправлением багов.

Где он нужен?

iOS-разработчики востребованы везде — от игр и развлекательных приложений до банков и e-commerce. А пандемия и повсеместный переход компаний в онлайн показали, что в ближайшие годы спрос на мобильную разработку будет только расти. За первые три квартала 2020 года мобильный трафик вырос почти на 50% по сравнению с тем же периодом в 2019 году. Также в 2020 году в AppStore было доступно 4,38 млн приложений (на 10,3% больше, чем в 2019 году).

Сколько получает iOS-разработчик?

По данным HeadHunter, по состоянию на начало марта 2021 года на сайте открыто около 3 тыс. вакансий для iOS-разработчиков.

Начинающий iOS-разработчик c хорошим портфолио может зарабатывать от 80 тыс. рублей, мидл — в районе 150 тыс. рублей, синьор и тимлид — от 200 тыс. рублей.

Основные задачи:

  • создание архитектуры приложения;
  • написание кода;
  • поддержка и развитие готовых приложений;
  • участие в тестировании приложения;
  • релиз приложения в App Store.

Что ему нужно знать?

Для разработки на iOS, помимо техники от Apple, понадобится знание языков Objective-C и Swift.

Objective-C — язык более архаичный, а Swift современнее и проще. Но хотя сейчас большинство приложений для Apple и пишутся на Swift, есть и те, что написаны на Objective-C, поэтому все еще важно знать оба языка.

Не беда, если у вас нет мака, — можно потренироваться в Swift на виртуальной машине. Правда, для того чтобы собрать полноценное приложение, все-таки потребуется купить технику Apple.

Помимо этого нужно:

  • уметь создавать интерфейс приложения на основе макета;
  • знать, как создать сетевой запрос;
  • знать, как обработать данные — в частности, в формате JSON (текстовый формат обмена данными, основанный на JavaScript);
  • уметь взаимодействовать с библиотеками других разработчиков;
  • уметь подключать базы данных к приложению;
  • знать архитектурные подходы;
  • уметь пользоваться системой Git, которая позволяет нескольким программистам совместно работать над одним проектом.

Все приложения пишутся в среде Apple XCode, ее можно бесплатно скачать из AppStore. Там есть средства для создания интерфейса, редактор кода и симуляторы всех устройств, чтобы протестировать готовые приложения.

Разработчик также должен знать правила сотрудничества с AppStore и в целом досконально изучить официальную документацию Apple.

Курс

iOS-разработчик с нуля

Получите перспективную профессию: освойте с нуля программирование на Swift, мобильную разработку и UX/UI для iOS. Дополнительная скидка 5% по промокоду BLOG.

Узнать больше

Какие нужны софт-скилы?

Рассказывает Алексей Усанов:

Общаться с коллегами и решать конфликты: «Софт-скилы — это важная вещь. Ты можешь быть подкованным и умным, но если не можешь найти общий язык с командой, то грош цена твоим знаниям и умениям. Бывает, что приходит молодой, активный и веселый разработчик. Он все знает и умеет, очень талантливый. Но он может работать только один, не умеет найти общий язык с командой. Поэтому он будет решать только свои узкие задачи и не сможет расти дальше».

Корректно указывать другим на ошибки: «Часто люди думают: “Зачем мне лезть?” Но есть и те, кто, наоборот, слишком резко говорит об ошибках других — это тоже нехорошо».

Ловить дзен и спокойно принимать критику: «Если ты молодец и умеешь общаться — здорово, но это не значит, что твой коллега тоже будет тактичен и корректен. Нужно уметь принимать такие вещи, это не должно мешать работе», — говорит Алексей.

Плюсы и минусы профессии

Плюсы:

  • У Apple определенный и понятный спектр устройств. «Если под Android их может быть сотня, и внезапно может вылезти аппарат где-нибудь в Индии, которым пользуется 2 миллиона человек. Ты нигде его не достанешь, чтобы проверить, почему приложение не работает. У нас такой проблемы нет», — считает Алексей.
  • В разработке под iOS ясный цикл и понятное число версий операционных систем. Каждый год выходит новая версия, и разработчики знают, какие устройства устарели, а какие еще поддерживаются.
  • Много вариантов занятости: в компании, в студии, которая занимается приложениями, на фрилансе.
Дизайнер радостно взаимодействует с iOS-разработчиком, пока Android-разработчик тонет. Источник

Минусы:

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

В каких случаях становятся iOS-разработчиками?

  • Если есть интерес к IT и программированию, хочется освоить новую профессию, получить новые навыки и высокую зарплату.
  • Если уже есть навыки Android-разработки, есть желание стать кроссплатформенным разработчиком и разрабатывать приложения для всех устройств.
  • Когда есть опыт в веб-программировании, но хочется попробовать себя в новой области.
  • Когда хочется работать на фрилансе — iOS-разработчики могут самостоятельно создать приложение с нуля.

Заблуждения об iOS-разработке

Чем сложнее код, тем лучше приложение. Зачастую разработчики приложений на iOS считают фреймворки Apple слишком простыми и пытаются создать что-то с нуля, тратя много времени на обдумывание сложной архитектуры и разработку новых концепций. На самом деле не нужно изобретать велосипед. Все фреймворки были созданы опытными разработчиками: они точно знают, что будет работать, а что — нет.

Разработчик на iOS не может переквалифицироваться и разрабатывать приложения для Android. Если у программиста уже есть навык, он вполне может перейти на другую ОС и помимо Swift выучить Java или Kotlin либо заняться кроссплатформенной разработкой.

Как начать?

Если у вас нет компьютера на macOS, то можно попробовать кодить на Swift на виртуалке. Это можно сделать, скачав на официальном сайте языка GNU/Linux (операционные системы на основе ядра Linux и системных библиотек GNU) с установленным Swift (есть официальные пакеты под Ubuntu, CentOS и Amazon Linux). Другой вариант — скачать на GitHub Windows с неофициальным пакетом Swift for Windows. Среду для разработки Apple XCode можно загрузить с официального сайта Apple. Однако, чтобы полноценно собирать приложения, все-таки понадобится техника Apple.

Пошаговый план для новичков:

  • освоить общие принципы разработки — выучить основные функции и переменные, уметь разделять текст программы на файлы, а также знать основы объектно-ориентированного программирования;
  • научиться создавать интерфейс приложения на основе макета;
  • разобраться, как обработать данные — в частности, в формате JSON (текстовый формат обмена данными, основанный на JavaScript). Информацию об этом можно поискать, например, на Хабре;
  • научиться создавать и использовать протоколы и подключать базы данных к приложению. В качестве базы данных можно, например, использовать MySQL. Для этого потребуется установить сервер, а также программу WorkBench, которая позволяет управлять базой данных при помощи удобного графического интерфейса;
  • изучить архитектурные подходы;
  • научиться пользоваться репозиториями в Git — как это сделать, можно посмотреть, например, здесь;
  • попробовать выложить первое приложение в AppStore.

Можно учиться разработке самостоятельно — для начала пройти вводные бесплатные курсы на Coursera.

Либо можно записаться на курс iOS-разработки SkillFactory и изучить все аспекты от программирования до фреймворков и релиза.

Курс

iOS-разработчик с нуля

Получите перспективную профессию: освойте с нуля программирование на Swift, мобильную разработку и UX/UI для iOS. Скидка 5% по промокоду BLOG

  • 12 месяцев обучения на практике
  • Помощь в трудоустройстве
  • Трансформация карьеры
Получить скидку Промокод “BLOG10” +5% скидки

Правда ли, что у Apple очень строгие гайды?

Да, интерфейсы на iOS можно создавать только по гайдлайнам, разработанным Apple. В противном случае приложение может не пройти проверку при публикации в AppStore.

В Apple очень щепетильны к дизайну. Например, в приложениях на iOS используется динамический размер системного шрифта — пользователю не нужно менять его, это делается автоматически. Также в компании рекомендуют делать дизайн максимально функциональным, избегая лишних «украшений», а также различных градиентов и падающих теней. С одной стороны, строгий гайдлайн ограничивает разработчика. Но с другой — компания постоянно обновляет инструкции и делает их максимально подробными, поэтому новичку будет проще ориентироваться.

Полезные ссылки

Документация Apple

Гайд Human Interface Guidelines от Apple о принципах дизайна приложений.

Apple XCode — среда для разработки для iOS.

Cocoadevelopers.club — открытый клуб iOS и OS X разработчиков.

iosdevweekly — еженедельная iOS-рассылка с полезными статьями на тему iOS-разработки.

Школа iОS-разработчиков — видеоуроки на YouTube.

iOS-программирование в Xcode — цикл видеоуроков на YouTube.

Блог SkillFactory
Добавить комментарий