Сыр в масле: iOS-разработчики имеют дело с самой платежеспособной аудиторией

Сегодня наш эксперт, преподаватель курса Junior iOS Developer Леонтий Дериглазов расскажет, почему Apple и iOS чрезвычайно популярны как у клиентов, так и у разработчиков. 

Расскажите немного о себе: как Вы стали разработчиком и почему решили заниматься такой областью, как iOS?

Ничего особо необычного в моей истории нет. Программированием я увлекался еще со школы и учиться пошел в НГУ, на факультет “Информационных технологий”. Моя карьера началась с Java-разработки, однако большого интереса во мне эта область не вызывала. Я начал искать, чем же мне заниматься в дальнейшем. Так получилось, что мой дядюшка подарил мне iPhone, тогда еще iPhone 3G (дело было в 2008 году), как раз тогда еще вышла первая версия iOS SDK, и я начал всем этим интересоваться. Сидел разбирался, “ковырялся” самостоятельно. Потом о моем увлечении стало известно на работе, и меня успешно привлекли помочь по одному из в то время ещё iPhone OS-проектов. Так я и начал профессионально заниматься iOS-разработкой.

Вопрос в лоб: почему эта операционка (iOS) так популярна? Дело ведь не только в гениальном маркетинге Apple?

Действительно, сейчас iOS-девайсов больше миллиарда! Теперь каждый 7-й житель планеты имеет один какой-нибудь “яблочный” гаджет… Я не думаю, конечно, что дело только в маркетинге. За этим ошеломительным успехом стоит огромная работа тысяч талантливых людей с правильными ценностями, которые создавали и собственно iOS, и устройства, на которых она работает.

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

Несомненно одна из ключевых причин популярности заключается в том, что компания Apple очень клиентоориентирована: ее цель — сделать своих пользователей счастливыми. У них то, что называется user experience (опыт или впечатление от взаимодействия), сразу было поставлен во главу угла. Эту ценность остальные мобильные платформы по разным причинам не смогли реализовать на должном уровне для всех своих пользователей. Apple первой создала беспрецедентную культуру качества потребительского программного обеспечения: появились сотни тысяч простых маленьких приложений, решающих насущные задачи самых разных людей. И всё это буквально на ладони. 

Относительно небывалой отказоустойчивости и стабильности  iOS ходят легенды. Как по-Вашему, если не углубляться в “дебри” разработки, в чем причина такого качества?

Операционная система iOS  не так молода, как может показаться: она является потомком OS X и через нее потомком BSD и UNIX, которые отсчитывают свою историю с 70-х годов. Это серьёзная база. Конечно, фокус Apple на user experience’е своих продуктов немаловажен в создании впечатления надёжности у пользователей: то, на что люди в первую очередь обратят внимание, как правило работает хорошо (а вот если вы залезете поглубже, можно и на ошибки наткнуться).

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

А какие достоинства и недостатки, Вы, как разработчик, видите у этой ОС?

Первое, что поразило меня именно как разработчика в этой платформе, — это качество документации. Ни на Java, ни на С++, ни на Python я никогда не видел так по-человечески построенной документации. По любой теме есть короткий обзор и разбиение разделов справки по решаемым задачам. Это очень здорово помогает быстро погружаться в любую новую тему и легко находить нужную информацию.

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

Как Вы считаете, в чем причина популярности iOS у разработчиков? Правда ли, что работать именно в этом направлении проще, удобней, быстрей и выгоднее?

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

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

Всё вышеупомянутое делает проверку жизнеспособности идеи нового приложения на iOS легким выбором. Когда вы уже знаете, о чём ваш продукт и что нужно его пользователям, можно расширяться на другие платформы, не рискуя переделывать два – три приложения.

Известно, что у Apple довольно строгая политика в отношении приложений, выкладываемых в App Store. Насколько такая политика оправдана и какие дает результаты?

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

Взаимоотношения разработчиков и Apple очень хорошо и емко охарактеризовал Майкл Джуревитц (ныне сотрудник компании): он сравнил их с животноводством. Компании нужны разработчики, без них не было бы того миллиона приложений в App Store и платформа не была бы так привлекательна для пользователей, многие разработчики «кормятся» на платформах Apple, но у них самих нет решающего слова в этой экосистеме: если что-то не согласуется с тем, как Apple видит свои интересы и интересы своих покупателей, никакие протесты разработчиков не способны изменить применяемые политики.

Какими знаниями и умениями должен обладать грамотный разработчик?

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

Для успешной карьеры в сервисной компании потребуется чёткое знание возможностей собственно ОС и устройств, работающих на ней. Необходимо будет постоянно учиться: Apple ежегодно выпускает обновления своей ОС с множеством новых API, эволюционирует даже парадигма программирования — скучно не будет, но и легко тоже.

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

В Академии Сухорукова Вы ведете Курс Junior iOS Developer. Расскажите о нем подробнее: как построен процесс обучения, что входит в его основу, чему в итоге научатся студенты?

Курс начинается с обзора линейки iOS-устройств Apple, знакомства с возможностями iOS SDK и инструментами, которые предоставляются разработчикам. После знакомства с основами Objective-C и платформы, начинается практика программирования под iOS: после ряда базовых упражнений слушатели выбирают курсовой проект, и на практических занятиях мы с каждым работаем над тем, чтобы довести это приложение до функционального завершения. Ребята проходят все стадии создания приложения от проектирования до тестирования на устройствах и оптимизации производительности (некоторые по желанию выкладывают свои творения на App Store). Конечно за 8 недель нельзя освоить всё, но эта цель и не преследуется. Занятия нацелены на то, чтобы в реальные проекты слушатели пришли с «картой местности», уверенно и эффективно решали новые задачи.

На кого рассчитан курс? Может быть, есть какие-то специальные требования к слушателям?

Я ориентируюсь на студентов старших курсов технических специальностей. Это должны быть люди, которые уже умеют программировать: знают язык C, его модель памяти, имеют опыт ООП. Базовый технический бекграунд необходим.
Нам же остается только добавить, что Курс Junior iOS Developer начнется в Академии Алексея Сухорукова 29 марта. Если вы желаете научиться создавать полезные приложения и открыть себе дорогу в элитный клуб iOS-разработчиков, то можете заполнить заявку на нашем сайте, позвонить по телефону +7 (952) 922 55 53, или просто написать на почту academ@suhorukov.com.

Подписка

Выберите рассылки, на которые вы хотите или не хотите быть подписанным.