0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Создание iOS приложения

Создание iOS приложения. От идеи до результата

Все началось с того, что я огляделся по сторонам и, не увидев автомобиля своей мечты, решил сконструировать его сам
Фердинанд Порше

Привет, Хабр. Хочу рассказать, как создал свое первое iOS приложение и что из этого получилось.

Идея для приложения возникла сама собой: создай то, чем бы ты с удовольствием пользовался бы сам. Я постоянно пишу заметки. Ведь у каждого занятого человека существует определенный набор фактов, которые он получает в течение дня, и которые стоит запомнить. А так как все люди забывают (и это нормально!), то нет лучшего решения, чем просто записать. Я все время чувствовал какое-то неудобство при работе с представленными в AppStore приложениями-заметочниками. Излишняя сложность в управлении, наличие ненужных категорий, нагромождение дополнительной информации — все это мешает приложению выполнять его основную функцию. Плюс ко всему многие из этих вещей выглядят просто некрасиво.

Статья в тему:  Не сохраняется калибровка экрана в виндовс 7

Поэтому, поставив все ставки на простоту и удобство, я приступил к созданию концепции. Модель приложения с единым списком заметок. Все в одном месте, что может быть проще? Если что–то имеет большую ценность или актуальность, совсем не обязательно вешать на него ярлык, ведь достаточно просто переместить более важную заметку в топ списка. Старые и ненужные записи постепенно будут опускаться вниз и в последствии будут удалены пользователем.

Функционал

После того, как концепция была придумана, я выписал основной функционал — те вещи, на которые я хотел бы сделать акцент в управлении:

  • Один главный список для всех заметок;
  • Все действия с заметой должны выполняться одним движением — создание, редактирование, удаление, выделение, перемещение в топ и шаринг;
  • Возможность легко поделиться заметками в Facebook, Twitter, скопировать или отправить на электронную почту;
  • Выделение заметки несколькими цветами, в зависимости от приоритета и срочности;
  • Удобное редактирование в портретной и ландшафтной ориентации;
  • Дневная и ночная темы оформления для удобной работы в любое время суток

Довольно стандартный функционал для подобного рода приложений, согласитесь. Но это только верхушка айсберга, дьявол кроется в деталях.

Инструментарий

Перед тем, как писать код в Xcode, я полностью воссоздал внешний вид приложения в векторном редакторе Sketch. Эта программа отлично подходит для быстрого создания макетов. Для этого приложения доступна масса плагинов, среди них есть Sketch Preview — просмотр артборда сразу на устройстве через программу Skala Preview. Всего лишь нужно скачать бесплатные программы Skala Preview на компьютер и мобильное устройство и установить плагин. После этого выбрать нужный артборд, нажать комбинацию Command+P и уже через секунду внешний вид приложения транслируется на устройство.

Статья в тему:  Что такое никнейм? Ники для игр

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

Разработка

В приложении я использовал всего два контроллера – один непосредственно для всех-всех-всех заметок, другой — для отображения небольшого туториала при первом запуске. Работу с базой данных я организовал с помощью фреймворка CoreData.

После создания базового функционала (создание, удаление, редактирование заметок) я решил улучшить каждую из этих функций.

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

Анимации удаление и перемещения в топ я решил реализовать самостоятельно, а визуальное сопровождение максимально приблизить к реальной жизни. Что-то приобрело более высокий приоритет — свайп вправо и заметка перемещается в топ списка. Чтобы удалить — свайп влево и анимация зачеркивания покажет на сколько еще нужно продлить свайп чтоб завершить удаление. При случайном удалении — нужно просто потрясти устройство («Shake»), и заметка вернется на свое прежнее место.

Статья в тему:  Как в контакте прикрепить гифку. Как загрузить gif вконтакте

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

Чтобы поделиться заметками из приложения я добавил дополнительный нижний бар, для появления которого необходимо сделать свайп из-под нижнего края устройства (Bottom Edge Swipe). В панели для шаринга собраны все самые важные действия — публикация в Facebook или Twitter, отправка списка заметок по электронной почте, или просто копирование для дальнейшего использования. Механизм очень простой — нужно выделить необходимые записи, после — нажать на нужную функцию. Если вы необходимо вернуться в обычный режим — свайп по бару, но уже вниз.

Переход между дневной и ночной темами я решил сделать автоматическим — почему никто еще не додумался менять внешний вид в зависимости от положения солнца на небе? Все очень просто — после наступления темноты и после восхода солнца тема меняется, при этом пользователю не нужно отвлекаться от создания заметок, ведь приложение всегда будет автоматически подстраиваться под окружающие условия.

Нейминг

mad note — excellent, entertaining, surprising, unexpected or awe-inspiring

Сразу же появился и слоган: MadNotes — Note your passion. Поскольку палитра основных цветов у меня уже была готова (белый, синий, красный), я решил сразу придумать подходящую иконку. Ситуация с логотипами для приложений подобного рода плачевная:

Поскольку заметки на бумаге пишут карандашом или ручкой, я решил отобразить это на иконке — карандаш повернутый под углом 45 градусов. Получилось вот так:

Статья в тему:  Mega nz ограничения. Мега диск — облачное хранилище

Результат

Поскольку изначально проект задумывался как дизайнерский, я решил поучаствовать с моим приложением в всеукраинском конкурсе Ukrainian Design Awards: The Very Best Of в категории Digital Design. До конкурса оставалось несколько недель, за это время я успел сделать публикацию на Behance, где визуально показал все основные функции приложения, а также записал видео-превью.
Поскольку победителей конкурса не разглашают до самого последнего момента, было невероятно приятно увидеть свою работу на выставке работ победителей — жюри увидели и оценили главную концепцию — минималистичное и, вместе с тем, функциональное приложение для ведения заметок.

Приложение находится в AppStore уже несколько месяцев, за это время я сделал шесть обновлений и переписал код на Swift. В последней версии (1.2) добавлена синхронизация с iCloud, так что заметки уже успели перебраться в облако.

Как создать своё первое iOS-приложение. Подробная инструкция от профессионалов

На­учить­ся мо­биль­ной раз­ра­бот­ке не так труд­но: глав­ное — знать, с чего на­чать. Иль­дар Гиль­фа­нов, iOS Team­lead e-le­gion и экс­перт кур­са «iOS-раз­ра­бот­чик» он­лайн-уни­вер­си­те­та «Нето­ло­гия» счи­та­ет, что раз­би­рать­ся во всех сим­во­лах кода и язы­ках раз­ра­бот­ки луч­ше сра­зу на прак­ти­ке. Спе­ци­аль­но для «Цеха» он под­го­то­вил по­ша­го­вый план дей­ствий по изу­че­нию раз­ра­бот­ки на iOS и со­зда­нию сво­е­го пер­во­го при­ло­же­ния.

Ку­пи­те мак

Не хо­чет­ся на­чи­нать с пло­хих но­во­стей, но раз­ра­ба­ты­вать при­ло­же­ния под iOS (как и под дру­гие яб­лоч­ные ОС) мож­но толь­ко на ma­cOS. Но не спе­ши­те ста­вить крест на ка­рье­ре iOS-раз­ра­бот­чи­ка из-за до­ро­гой тех­ни­ки Ap­ple. Если вы толь­ко учи­тесь, рас­смот­ри­те ва­ри­ан­ты с вир­ту­ал­ка­ми или ха­кин­то­шем. Ин­струк­цию по при­ме­не­нию мож­но лег­ко най­ти в лю­бой по­ис­ко­вой си­сте­ме.

Статья в тему:  Сколько зарабатывают на в ютубе. Как заработать на ютубе

При по­куп­ке б/​​у тех­ни­ки про­верь­те сов­ме­сти­мость вер­сий ma­cOS и сре­ды раз­ра­бот­ки Xcode. Если вы не уве­ре­ны, что мак по­лу­чит ещё пару но­вых вер­сий ОС, луч­ше воз­дер­жать­ся от та­кой по­куп­ки.

Три ре­ко­мен­да­ции при вы­бо­ре мак:

  • 8 Гб опе­ра­тив­ной па­мя­ти (в неко­то­рых ма­ках её мож­но ме­нять);
  • SSD (его тоже мож­но по­ста­вить поз­же, за­ме­нив HDD);
  • 4 ядра (их по­ме­нять нель­зя, по­это­му по­ста­рай­тесь взять хотя бы 4).

Изу­чи­те Swift

Итак, мак у вас есть, и вы уже, на­вер­ное, хо­ти­те по­ко­рять рей­тин­ги App Store, но сна­ча­ла нуж­но осво­ить ин­стру­мен­ты, с ко­то­ры­ми вы бу­де­те ра­бо­тать. Са­мый важ­ный — это, ко­неч­но, язык про­грам­ми­ро­ва­ния Swift.

Swift очень дру­же­лю­бен к на­чи­на­ю­щим. Вы в этом убе­ди­тесь, на­пи­сав свою первую про­грам­му — Hello World. Это про­стей­шее при­ло­же­ние, ко­то­рое со­зда­ют все но­вич­ки в раз­ра­бот­ке на пер­вом уро­ке, оно вы­во­дит окно с ва­шим име­нем и при­вет­стви­ем. Его мож­но на­пи­сать даже, если вы еще не зна­е­те всех ин­стру­мен­тов язы­ка.

Бла­го­да­ря Swift play­ground в сре­де раз­ра­бот­ки Xcode мож­но на­чать пи­сать код, не раз­би­ра­ясь в са­мой сре­де раз­ра­бот­ки и осо­бен­но­стях си­сте­мы, а ещё — на iPad есть при­ло­же­ние Swift Play­grounds. Это на­сто­я­щий ре­дак­тор кода, в ко­то­ром мож­но раз­ра­ба­ты­вать неболь­шие при­ло­же­ния, игры и изу­чать Swift в ин­тер­ак­тив­ном учеб­ни­ке.

iOS-при­ло­же­ния раз­ра­ба­ты­ва­ют­ся в пол­но­цен­ных про­ек­тах. В них мож­но не толь­ко пи­сать код, но и ра­бо­тать с ре­сур­са­ми, ин­тер­фей­са­ми, те­ста­ми, а так­же на­стра­и­вать и пуб­ли­ко­вать про­ект.

Не за­бы­вай­те прак­ти­ко­вать­ся. Если вы обу­ча­е­тесь са­мо­сто­я­тель­но, и в до­ступ­ных вам кни­гам или ве­би­на­рах нет прак­ти­че­ских за­да­ний, при­ду­май­те их сами. За­пус­кай­те при­ме­ры кода, про­буй­те сра­зу при­ме­нить на прак­ти­ке по­лу­чен­ные зна­ния, экс­пе­ри­мен­ти­руй­те.

Статья в тему:  Важные друзья вк. Секреты сети: порядок друзей ВКонтакте

Ос­нов­ные фрейм­вор­ки iOS

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

Для на­ча­ла со­сре­до­точь­тесь на изу­че­нии UIKit — это фрейм­ворк для со­зда­ния ин­тер­фей­са iOS-при­ло­же­ния. Кноп­ки, тек­сто­вые поля, лейб­лы, спис­ки, ани­ма­ции, окна, же­сты, drag-and-drop — всё это и мно­гое дру­гое вхо­дит в UIKit.

Для со­зда­ния ин­тер­фей­са при­ло­же­ния в Xcode есть гра­фи­че­ский ре­дак­тор. Он поз­во­ля­ет лег­ко до­бав­лять нуж­ные эле­мен­ты на экран и за­да­вать пра­ви­ла их по­стро­е­ния. Им поль­зу­ют­ся не толь­ко на­чи­на­ю­щие, но и про­фес­си­о­наль­ные раз­ра­бот­чи­ки. Так что не трать­те вре­мя на вёрст­ку в коде.

Foun­da­tion — вто­рой по важ­но­сти си­стем­ный фрейм­ворк. С его по­мо­щью вы бу­де­те ра­бо­тать с да­та­ми, ре­сур­са­ми, фай­ло­вой си­сте­мой, дан­ны­ми поль­зо­ва­те­ля и се­тью. Часть его обя­зан­но­стей за­бра­ла на себя Swift Stan­dard Li­brary. На­при­мер, стро­ки и кол­лек­ции. Но Foun­da­tion всё рав­но оста­ет­ся важ­ным ком­по­нен­том си­сте­мы.

Пла­ни­ро­ва­ние

Во вре­мя изу­че­ния си­стем­ных фрейм­вор­ков вы мо­же­те на­чать ра­бо­ту над соб­ствен­ным при­ло­же­ни­ем. Воз­мож­но, это бу­дет про­сто to-do лист. Или у вас на те­ле­фоне есть очень по­лез­ное при­ло­же­ние, но оно чем-то не устра­и­ва­ет, и вы хо­ти­те сде­лать своё. А мо­жет у вас есть су­пер идея для со­вер­шен­но но­во­го при­ло­же­ния. В лю­бом слу­чае, для на­ча­ла вам нуж­но опре­де­лить­ся с тем, что бу­де­те де­лать:

  • Про­ана­ли­зи­руй­те по­хо­жие при­ло­же­ния в App Store. Это по­мо­жет по­нять, чего не хва­та­ет поль­зо­ва­те­лям ва­ших кон­ку­рен­тов.
  • Со­ставь­те спи­сок функ­ций сво­е­го при­ло­же­ния. За­пи­ши­те все свои идеи, что­бы не за­быть.
  • Вы­бе­ри­те из них несколь­ко са­мых важ­ных. Это бу­дет ваш объ­ём ра­бо­ты на пер­вый ре­лиз.
Статья в тему:  Лучшие смартфоны для селфи по отзывам покупателей

Важ­ны­ми яв­ля­ют­ся ба­зо­вые функ­ции при­ло­же­ния. То есть те, без ко­то­рых оно не име­ло бы смыс­ла. При­ло­же­ние, со­сто­я­щее толь­ко из та­ких функ­ций, на­зы­ва­ет­ся MVP (Min­i­mum Vi­able Prod­uct). По­ста­рай­тесь так­же до­ба­вить в спи­сок несколь­ко функ­ций, ко­то­рые от­ли­ча­ли бы ваше при­ло­же­ние от кон­ку­рен­тов и пред­став­ля­ли бы для поль­зо­ва­те­ля осо­бую цен­ность.

Пора пе­ре­хо­дить к ди­зай­ну. Нач­ни­те с ка­ран­даш­ных на­брос­ков, а если хо­ти­те соз­дать несколь­ко на­сто­я­щих ма­ке­тов, не обя­за­тель­но осва­и­вать слож­ные при­ло­же­ния. Мож­но огра­ни­чить­ся даже Keynote.

Ко­неч­но, вы не смо­же­те за­ме­нить про­фес­си­о­наль­но­го ана­ли­ти­ка, мар­ке­то­ло­га и ди­зай­не­ра, но если вы ра­бо­та­е­те в оди­ноч­ку, вам при­дёт­ся са­мо­сто­я­тель­но вы­пол­нить эти шаги. Очень важ­но опре­де­лить и за­фик­си­ро­вать объ­ём ра­бо­ты. Ведь лю­бая цель долж­на быть кон­крет­ной и до­сти­жи­мой. Ина­че вы рис­ку­е­те ни­ко­гда не за­кон­чить своё при­ло­же­ние.

Раз­ра­бот­ка

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

  • Изу­чай­те чу­жой код. В ин­тер­не­те есть огром­ное ко­ли­че­ство ста­тей с при­ме­ра­ми хо­ро­ше­го кода, а на Github мож­но най­ти ис­ход­ный код це­лых при­ло­же­ний.
  • На­учи­тесь на­хо­дить от­ве­ты на во­про­сы в ин­тер­не­те. По­ис­ко­вик, Stack Over­flow, до­ку­мен­та­ция, обу­ча­ю­щие ста­тьи и ин­струк­ции — в них вы най­де­те от­ве­ты на боль­шую часть сво­их во­про­сов.
  • Най­ди­те че­ло­ве­ка или со­об­ще­ство, что­бы за­да­вать во­про­сы, на ко­то­рые най­ти от­вет не по­лу­чи­лось. И если вы хо­ти­те по­лу­чить хо­ро­шие от­ве­ты, на­учи­тесь за­да­вать пра­виль­ные во­про­сы — по­дроб­ные.
Статья в тему:  16 система счисления. Шестнадцатеричная нумерация и адресация

Пора от­кры­вать Xcode и при­сту­пать к ра­бо­те. Воз­мож­но, вы нач­не­те с экра­на ав­то­ри­за­ции или с ос­нов­но­го экра­на, а мо­жет быть, с со­зда­ния об­щей ар­хи­тек­ту­ры при­ло­же­ния. В лю­бом слу­чае, со­хра­няй­те по­ря­док с са­мо­го на­ча­ла про­ек­та:

  • груп­пи­руй­те фай­лы по пап­кам;
  • уда­ляй­те неис­поль­зу­е­мый код;
  • при­дер­жи­вай­тесь сво­е­го код­стай­ла;
  • не дуб­ли­руй­те код;
  • не до­пус­кай­те раз­рас­та­ния вью кон­трол­ле­ра (MVC не за­став­ля­ет пи­сать весь код в кон­трол­ле­ре).

Вам при­дёт­ся взять на себя и обя­зан­но­сти те­сти­ров­щи­ка. Обя­за­тель­но про­ве­ряй­те всё, что де­ла­е­те. Если что-то мо­жет пой­ти не так, оно пой­дет не так. По­это­му про­ве­ряй­те все сце­на­рии, а не толь­ко по­зи­тив­ные. По­лез­но дать своё при­ло­же­ние дру­го­му че­ло­ве­ку. Это поз­во­лит най­ти ошиб­ки не толь­ко в ре­а­ли­за­ции, но и в са­мой кон­цеп­ции при­ло­же­ния.

Вы­клад­ка в App Store

Ещё одно пре­пят­ствие для неза­ви­си­мых раз­ра­бот­чи­ков — это необ­хо­ди­мость пла­тить $100 за воз­мож­ность вы­ло­жить своё при­ло­же­ние в App Store. О том, как за­ре­ги­стри­ро­вать­ся, в ин­тер­не­те ин­фор­ма­ции мно­го, ее най­ти лег­ко.

По­сле ре­ги­стра­ции ак­ка­ун­та мож­но пе­ре­хо­дить к пуб­ли­ка­ции. Для это­го нуж­но вы­брать в Xcode меню Prod­uct->Archive. По­сле ар­хи­ва­ции — на­жать кноп­ку Dis­trib­ute App и до­ждать­ся вы­груз­ки.

При­ло­же­ние по­па­да­ет в App Store Con­nect. На этом сай­те вам нуж­но за­пол­нить ин­фор­ма­цию о при­ло­же­нии, до­ба­вить скрин­шо­ты и ин­фор­ма­цию для ре­вью­ве­ров Ap­ple. Да, ре­вью про­хо­дить обя­за­тель­но. Озна­ко­мить­ся с пра­ви­ла­ми мож­но тут. От­ча­сти это ру­лет­ка, но если сле­до­вать всем пунк­там, то ве­ро­ят­ность успеш­но­го ре­вью силь­но уве­ли­чи­ва­ет­ся. Для на­ча­ла изу­чи­те ос­нов­ные при­чи­ны для от­ка­за. При­ло­же­ние долж­но:

  • Ста­биль­но ра­бо­тать и не вы­ле­тать.
  • Иметь ра­бо­чую ссыл­ку на поль­зо­ва­тель­ское со­гла­ше­ние.
  • Быть пол­но­стью за­кон­чен­ным, ра­бо­то­спо­соб­ным и функ­ци­о­наль­ным.
  • Да­вать чет­кие объ­яс­не­ния при за­про­се раз­ре­ше­ний на GPS, ка­ме­ру, кон­так­ты и так да­лее.
  • Иметь скрин­шо­ты и пол­ное опи­са­ние в ма­га­зине (их от­сут­ствие — одна из са­мых рас­про­стра­нён­ных при­чин для от­ка­за).
  • Быть уни­каль­ным. Нель­зя вы­кла­ды­вать ко­пию дру­го­го при­ло­же­ния (в том чис­ле сво­е­го соб­ствен­но­го).
  • Не ис­поль­зо­вать при­ват­ное API.
Статья в тему:  Как в контакте прикрепить гифку. Как загрузить gif вконтакте

Обя­за­тель­но нуж­но ука­зать те­сто­вый ак­ка­унт для ре­вью­ве­ров в спе­ци­аль­ном поле, если в при­ло­же­нии есть ав­то­ри­за­ция. Если при­ло­же­ние со­дер­жит встро­ен­ные по­куп­ки, то сто­ит уде­лить осо­бое вни­ма­ние к тре­бо­ва­ни­ям раз­де­ле 3.1.

Если вам от­ка­за­ли, по­ста­рай­тесь разо­брать­ся, в чём при­чи­на, и ис­правь­те на­ру­ше­ния. Мож­но по­пы­тать­ся оспо­рить ре­ше­ние, но это не все­гда уда­ёт­ся. Если не по­лу­чит­ся, по­про­буй­те со­зво­нить­ся с ре­вью­ве­ра­ми и об­су­дить про­бле­му го­ло­сом.

Даль­ней­шее раз­ви­тие при­ло­же­ния

По­здрав­ля­ем! Ваше пер­вое при­ло­же­ние уже в ма­га­зине, а вы с на­деж­дой смот­ри­те на счёт­чик ска­чи­ва­ний. Но ра­бо­та ещё не окон­че­на. Даль­ше вам пред­сто­ит раз­ви­вать и под­дер­жи­вать своё при­ло­же­ние.

По­сле того, как вы раз­бе­ре­тесь с ос­но­ва­ми, пе­ре­хо­ди­те к изу­че­нию дру­гих тех­но­ло­гий. GPS, push-уве­дом­ле­ния, Ap­ple Pay, Siri, AR, ин­фор­ма­ци­он­ная без­опас­ность, ра­бо­та с ме­диа и огром­ное ко­ли­че­ство third party-сер­ви­сов и фрейм­вор­ков — изу­чая и ис­поль­зуя в ра­бо­те что-то но­вое, вы по­вы­ша­е­те свою цен­ность на рын­ке. По­это­му, если вы хо­ти­те быть хо­ро­шим раз­ра­бот­чи­ком, ни­ко­гда не оста­нав­ли­вай­тесь на до­стиг­ну­том.

Под­во­дя итог

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

Статья в тему:  Где находится сумма в ворде. Как посчитать сумму в Word

Мы так­же пред­ла­га­ем об­ра­тить вни­ма­ние на до­пол­ни­тель­ные он­лайн- и офлайн-кур­сы, ко­то­рые дают го­то­вый план обу­че­ния, струк­ту­ри­ро­ван­ную ин­фор­ма­цию и до­пол­ни­тель­ную мо­ти­ва­цию не за­бро­сить обу­че­ние. Под­хо­дя­щих кур­сов сей­час на рын­ке пред­став­ле­но до­ста­точ­но мно­го, и если этот ва­ри­ант ка­жет­ся вам наи­бо­лее под­хо­дя­щим, сме­ло изу­чай­те об­ра­зо­ва­тель­ные про­грам­мы. Хо­ро­шая про­грам­ма долж­на преду­смат­ри­вать:

  • Зна­ком­ство с язы­ком про­грам­ми­ро­ва­ния Swift.
  • Изу­че­ние фрейм­вор­ков для со­зда­ния поль­зо­ва­тель­ских ин­тер­фей­сов, ра­бо­ты с се­тью, мно­го­по­точ­но­сти и хра­не­ния дан­ных.
  • Осво­е­ние сре­ды раз­ра­бот­ки, ме­то­дов по­ис­ка оши­бок и те­сти­ро­ва­ния.
  • Прак­ти­че­ские за­да­ния.
  • Воз­мож­ность за­дать во­прос пре­по­да­ва­те­лю и по­об­щать­ся с од­но­курс­ни­ка­ми.

Если все эти пунк­ты есть в вы­бран­ном вами кур­се, зна­чит ре­зуль­тат не за­ста­вит себя ждать, и вы на­пи­ши­те не одно свое мо­биль­ное при­ло­же­ние.

Основы разработки приложений под iOS

Приложения, разработанные для iOS, обладают множеством особенностей, которые в процессе разработки нужно учитывать.

  • Создание iOS-приложений требует предварительного тщательного анализа отзывов и пожеланий целевой аудитории.
  • Программирование для устройств Apple выполняется в среде Xcode IDE, которая работает только в OS X.
  • Для размещения готового приложения в AppStore необходимо строго соблюдать требования этого магазина.
  1. Выбор языка для начала. Начинать разрабатывать можно как простые, так и кросс-платформенные приложения. В первом случае используется один из двух основных языков для разработки под iOS — Objective-C и Swift. Во втором случае может быть использован код на Java, C++, Python и т. п.
  2. Выбор типа программирования (нативное, гибридное, «чистый web»). Выбор здесь определяется самой концепцией приложения. Если от будущей программы не требуются постоянная доступность, автономность работы в условиях отсутствия интернета и наличие уведомлений для пользователя, лучшим вариантом будет веб-приложение. Благодаря запуску прямо из браузера такую программу можно использовать на любой платформе. Среди других преимуществ отметим универсальность, автоматические обновления, дешевизну разработки.Гибридную или нативную разработку стоит выбрать при создании полноценного мобильного приложения. В первом случае создаются сразу несколько версий программы соответственно для нескольких операционных систем. Это дешевле программирования исключительно под iOS, но и дает в итоге меньшую производительность и безопасность приложения.Выбор гибридного типа разработки обоснован, если:
    • необходимо создать простое приложение;
    • предполагается недорогое использование на двух платформах;

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

    Карьерная мастерская это:

    • Список из 30 востребованных современных профессий.
    • Долгосрочный план по развитию в той профессии, которая вам подходит.
    • Список каналов для поиска работы.
    • 3 теста на определение своих способностей и склонностей.
    • Практику в разных профессиях на реальных задачах.

    Уже 50 000 человек прошли мастерскую и сделали шаг к новой профессии!

    Запишитесь на бесплатный курс и станьте ближе к новой карьере:

    Зарегистрироваться и получить подарки

    При этом, как указывалось ранее, нужно быть готовым к плохой производительности и к постоянной зависимости от интернета, поскольку гибридные программы работают на связке HTML5 + JS.

    Нативный подход позволяет обойтись без «костылей». Приложение разрабатывается только на стандартном для iOS языке.

    Когда стоит выбрать последний вариант?

    • Приложение создается для работы на одной платформе.
    • Предполагается использование функций, специфичных для данной платформы.
    • Требуется постоянное обновление программы, скоординированное с выходом обновлений ОС или выпуском новых версий устройств Apple.
  3. Стоимость размещения приложения в AppStore. На проверку магазином заявки на публикацию уходят обычно сутки. Далее после одобрения создатель программы должен подписать соглашение и заплатить 99 долларов в качестве взноса за iOS Developer Program. Причем, платеж не единоразовый — его необходимо проводить ежегодно.
Статья в тему:  Важные друзья вк. Секреты сети: порядок друзей ВКонтакте

Разработка

Теперь у вас есть идея. Здорово, это уже полдела! Но что теперь? Мы предполагаем, что у вас, как и большинства людей, нет никакого опыта в программировании. И это прекрасно! Есть куча вариантов.

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

Хороший список отечественных разработчиков можно посмотреть здесь — ratingruneta.

Еще один вариант найти разработчика это обратиться на биржи флинасеров. Возможно, это даже будет дешевле, но более рискованно, так как вам может попасться недобросовестный работник.

Вот несколько вопросов, которые стоит задать вашему будущему разработчику:

Стоимость их работы?

На кого они работали в прошлом?

Являются ли их приложения успешными?

Буду ли я обладать всеми правами на приложение?

Есть ли у них опыт и знания, чтобы воплотить вашу идею в жизнь?

Под какие платформы (IOS, Android и т.д.), они могут создавать приложения?

Разработка iOS-приложений

Для менеджеров и простых людей

Часто слышишь фразу:

— А не сделать ли мне эдакое приложение под айфоны!?

Многие действительно думают, что создать iPhone-приложение с нуля — просто и быстро, а заработанные миллионы уже совсем не за горами. Давайте попробуем разобраться в этом деле с точки зрения человека, полного энергии, но не имеющего представления об экосистеме Apple для разработчиков.

Статья в тему:  Что такое никнейм? Ники для игр

Любой проект начинается с идеи, и уже исходя из этого может оказаться, что приложение сделать нельзя. Знакомые мне разработчики отказывались от работы по самым разным причинам:

  • Нельзя определять положение пользователя в помещении точнее пяти метров;
  • Не получится определить, находится ли человек в самолёте, над какой страной пролетает и момент пересечения границы государств;
  • Не существует возможности узнать номер телефона человека (если только пользователь сам не введёт его);
  • “Если это просто сайт, оформленный в приложение, то его завернут” (речь про ревью приложения командой App Store);

Помимо того, что сделать невозможно, существует целый ряд вещей, которые можно сделать, но с определёнными ограничениями. Однако мы с вами пойдём дальше.

Команда

Реализацию идеи можно заказать у компаний, которые сделали уже сотню приложений, а можно собрать собственную команду. Эксперты и так во всём разбираются, но и стоить их услуги будут соответственно. Поэтому мы рассмотрим вариант своей команды.

Я намеренно пропущу этап набора людей, потому что это относится к любому проекту, а не именно к iOS-разработке.

Трудно поверить, но писать приложения для iOS можно лишь на “маках”. Поэтому, каждому разработчику понадобится одно устройство на macOS и одно — на iOS (есть некоторые способы обойти это ограничение, но мы не будем их затрагивать). На маке он/она будет писать код, на айфоне — смотреть, что из этого получилось. Также можно надеяться, что iOS-разработчик придёт со своими девайсами (случай нередкий).

Статья в тему:  Лучшие смартфоны для селфи по отзывам покупателей

Самый недорогой вариант — купить каждому подержанный mac mini с клавиатурой, мышкой, монитором, набором кабелей и какой-нибудь iPhone 5s. Кстати, lightning-кабели с этого момента можете считать расходником: ломаются они крайне быстро.

Ко всему прочему, понадобится обзавестись “аккаунтом организации-разработчика Apple”, который стоит $99 в год и позволяет управлять доступами разработчиков, устройствами и так далее. Можно обойтись и индивидуальным аккаунтом, но стоит он столько же, а командных возможностей у него нет.

Интерфейс управления Apple Developer аккаунтом для организаций

Дизайн

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

Минимально от дизайнера понадобится следующее:

  • Иконка приложения в различных размерах (под различные типы экранов);
  • Картинки приложения (скриншоты) под каждый поддерживаемый экран и язык в случае, если на картинке есть текст (скриншоты могут сделать и разработчики, но зачастую на них добавляют и дополнительную инфографику);
  • Каждая картинка, которая используется в приложении, во всех нужных размерах (2–3x);

Если же вы хотите действительно качественное приложение, обязательно просите у дизайнера:

  • Рисунки всех экранов приложений (можно сделать исключение для похожих экранов);
  • Картинки для всех всплывающих сообщений, уведомлений;
  • Для всех элементов, где будет анимация — продумать и нарисовать её;
  • Карту переходов по приложению — user flow, её можно просить одной из первых — эта карта здорово помогает определить основные и дополнительные экраны, их содержимое;
Статья в тему:  Вход на свою страницу в контакте. В контакте

Пример user flow от UBER для кнопки “Отвезите меня туда на UBER”

В максимальном случае берите дизайнера на постоянную основу и работайте с ним над созданием действительно удобного и приятного приложения, которым смогут пользоваться все (тонкий намёк на “доступность” — когда приложение подходит и для людей с ограниченными возможностями).

Тестирование

Казалось бы, все кусочки мозаики собраны, чего же не хватает? Мы забыли о людях, которые будут использовать Ваше приложение и находить в нём ошибки. Кстати, не надейтесь, что все разработчики сразу делают абсолютно правильный код. Ошибаться — это нормально, но ведь наше приложение должно быть идеальным. Поэтому перед тем, как оно попадет в магазин, его надо вдоль и поперёк исследовать.

Этими вопросами занимаются тестировщики, желательно, чтобы они обладали опытом работы именно с iOS-приложениями. Вопрос: как они будут это делать?

Естественно, здесь тоже понадобятся устройства. Хорошо, если вы найдёте всевозможные сочетания версий iOS, типов iPhone/iPad, разрешений экранов, которые планируете поддерживать. Но тут есть различные обходные пути и дополнительные возможности:

  • Можно поддерживать лишь несколько типов устройств сначала, а потом дорабатывать приложение под оставшиеся. Однако Apple не очень любит, когда приложение заблокировано только для одного вида iPhone, если для этого нет явных причин.
  • Протестировать часть функционала можно на Симуляторе (это программа под macOS, эмулирующая реальный iPhone). В нём можно задать и размер экрана, и тип устройства, но протестировать можно не всё: только на реальных устройствах получится проверить работу с различными датчиками (гироскоп, акселерометр, компас, …), TouchID, пуш-уведомлениями.
  • Обязательно протестируйте приложение в условиях плохого или отсутствующего соединения (конечно, если интернет реально используется);
  • Убедитесь, что приложение не сильно тратит батарейку;
  • В случае большого приложения оцените необходимость автоматического тестирования: пробегаться по сотне форм в каждой новой версии сложно и не очень рационально.
Статья в тему:  16 система счисления. Шестнадцатеричная нумерация и адресация

И не просите у разработчиков “инсталлятор” для приложения, которое они делают. В среде Apple невозможно скинуть файл на телефон, установить и запустить. Кто-то из разработчиков должен будет настроить доставку новых версий на все телефоны, где она нужна. Иначе нельзя.

Всё готово к запуску!

Итак, настаёт момент, когда приложение готово к тому, чтобы появиться в магазине App Store. Какие ещё неожиданности нас ждут?

Во-первых, приложению нужно имя. Если область приложения популярна, то все короткие и красивые имена могут уже быть заняты, так как App Store не допускает двух приложений с одинаковым названием. Остаётся придумать его в виде “XYZ — приложение для XYZ”. Это имя отображается лишь на самой странице приложения в AppStore и не обязательно должно совпадать с тем, что будет написано после установки под иконкой Вашего приложения у конкретного пользователя. На этот текст ограничение уникальности не распространяется.

С названием приложения есть одна небольшая хитрость. При создании в iTunes Connect приложения можно указать его название ещё до того, как версия для публикации реально готова. Таким образом, можно занять своё имя чуть-чуть заранее, хотя Apple уже не гарантирует длительность этого срока.

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

Статья в тему:  Mega nz ограничения. Мега диск — облачное хранилище

В третьих, если не сразу, то после пары дней в магазине Вам станет интересно, а что в приложении вообще пользователи делают. Здесь на помощь приходит метрика, которая анонимно собирает статистику открытых экранов, покупок и любых интересных действий. Внедрением метрики стоит озаботиться сразу, а на её основе стоит делать выводы об улучшении существующего и создании нового функционала. Вероятно, у Вас будет искушение сохранить действия каждого пользователя вместе с его email или именем: помните, так делать нехорошо, потому что никто не любит, когда за ним/ней подглядывают.

Пример аналитики; картинка с сайта help.apple.com

В-четвёртых, Вам предстоит пройти ревью приложения от команды App Store. Ревью занимает около двух недель, и на нём всплывут все самые потаённые “фишки” Вашего приложения. Вот несколько советов для успешного прохождения этой проверки:

  • Если для доступа к основным функциям приложения необходимы логин/пароль и регистрация, обязательно снабдите команду App Store тестовыми данными для входа в приложение. Для покупок им понадобится тестовая кредитная карта. Если для нормальной работы нужны какие-то аксессуары — будьте готовы выслать в Apple и их тоже;
  • Если в приложении есть продажи чего-либо, должно быть также и пользовательское соглашение, содержащее фразу о том, что Apple ни при чём, а продавцом является Ваша компания. Этот текст должен быть доступен на всех языках, которые вы поддерживаете;
  • Если Вы продаёте виртуальные товары, скорее всего, надо будет использовать “покупки внутри приложений”;
  • Убедитесь, что не используется ни одного запрещённого API и что приложение в целом выполняет ровно ту функцию, которую обещает.
Статья в тему:  Не сохраняется калибровка экрана в виндовс 7

Если все пункты честно соблюдены, то примерно через две недели Ваше приложение появится в магазине.

Приложение в App Store

Мы Вас от души поздравляем. Ваше первое творение наконец-то попадёт в руки пользователей! Самое время оглянуться на пройденный путь и подумать о новых версиях Вашего приложения.

Зачем бизнесу вообще может потребоваться свое приложение

Приложение – это прямой канал взаимодействия с аудиторией. Если ваш сервис установлен на устройство пользователя, он не пойдет искать нужный товар в гугл, а придет к вам: так быстрее и удобнее. В подтверждение этого, вот статистика из исследования Flurry Analytics:

Пользователи смартфонов более 80% времени активного использования устройства проводят в приложениях и только 14% времени уходит на браузер.

Таким образом, можно сказать, что приложение позволяет лучше и быстрее взаимодействовать с пользователем. Это в свою очередь значит, что:

  1. Повышается лояльность к компании. Будьте для клиентов полезными и приложение станет популярным. Создайте программу лояльности, присылайте пуши об акциях, давайте ссылки на полезный контент – пользователь оценит все это и будет чаще заказывать у вас минуя поиски подходящих предложений в браузере.
  2. Вы отстраняетесь от конкурентов. На начальных этапах после запуска приложения аудитория будет узкой, но если сервис будет действительно полезным, новая аудитория потянется к вам. Больше не придется вкладывать большие средства в борьбу за первые места в выдаче поисковых систем, пользователь сам к вам придет.
  3. Вы получаете больше продаж. Приложение удерживает внимание пользователей. Вы всегда остаетесь на связи со своим потребителем и мотивируете пользователя покупать чаще и больше.
Статья в тему:  Сколько зарабатывают на в ютубе. Как заработать на ютубе

Вот еще немного статистики в пользу создания своего приложения:

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

Как создать мобильное приложение: пошаговая инструкция

Определившись, как создать приложение в плане технических средств, можно переходить к его поэтапной реализации.

Подготовительный этап

Этот мозговой штурм необходим перед созданием приложения. Задача этапа — найти ответы на следующие вопросы:

  1. Какую цель преследует создание приложения для компании?
  2. Зачем оно нужно потребителю? Что будет мотивировать его устанавливать приложение на свой смартфон или планшет?
  3. Что должно уметь приложение, чтобы пользователь легко получал искомое?
  4. На каких платформах должно работать приложение (для IOS, Android, Windows)?
  5. Какой способ создания из описанных выше вам подходит и в какую сумму обойдётся создание приложения и его последующее использование?
  6. Какое обслуживание потребуется после запуска? Например, нужно ли контролировать исправность работы на ежедневной основе?

Задача этого этапа — взглянуть на будущее приложение с точки зрения пользователя. Ведь вы ищете ответ на вопрос «Как сделать мобильное приложение?» именно для того, чтобы он установил его на свой смартфон.

Разработка приложения

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

Статья в тему:  Важные друзья вк. Секреты сети: порядок друзей ВКонтакте

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

Запуск и тестирование мобильного приложения

Прежде, чем приложение увидит свет, нужно убедиться в его корректном функционировании. Если в нём будут серьёзные ошибки, вся работа будет тщетной.

Для тестирования необходим смартфон с подключением к компьютеру. Его можно заменить эмулятором мобильного устройства на мониторе.

В ходе тестирования важно проверить:

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

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

Ссылка на основную публикацию
Статьи c упоминанием слов:
Adblock
detector