Разработка мобильных приложений для iOS. Как создать приложение для iOS – от идеи до продажи

13.10.2017

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

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

Разработчик приложений для iOS - это программист, который пишет back end для сервисов компании Apple.

Программистов в мобайл приводят совершенно разные ситуации. Если вы считаете, что между iOS и Android-разработчиками война, то вы совершенно неправы. Обе платформы востребованы, имеют свои преимущества, а программисты дружат и обмениваются опытом. Решение о том, для какой платформы разрабатывать принимается в основном, по предпочитаемому языку или бекграунду. Подробнее об этом ниже, а пока что несколько фактов, которые могут помочь расставить акценты для вас:

  • Системой Android пользуется большое количество моделей, которые имеют разные характеристики, поэтому на адаптацию приложения уходит больше времени, код iOS-приложения адаптировать легче.
  • Для того, чтобы учиться программировать под iOS, нужно соответствующее оборудование - iPhone, Mac

С чего начать?

Итак, если вы мечтаете писать крутые приложения для iOS и хотите узнать, как стать разработчиком apple, мы дадим вам несколько советов.

1 У вас должны быть горящие глаза

Это вообще самое главное в учебе и работе. Если вас привлекают только зарплаты, которые получают программисты, вам точно не стать успешным.

2 Вы должны понимать, чем отличаются мобильные телефоны от компьютеров - и это не шутка:)

Ресурсы мобайла ограничиваются производительностью процессора, объемом памяти, качеством батареи, а также подключением к интернету. Чтобы делать качественные приложения, вы должны понимать “боли” аудитории и программировать так, чтобы облегчить их.

3 Начните с основ

Прочитайте книгу о мобайл-программировании, посмотрите видеокурсы. Таким образом, вы вникните в суть и дальше “плыть” будет легче.

4 Погрузитесь в сферу

С какого языка программирования начать?

Разработчики приложений для ios пишут на Swift и Objective-C. Советуем для начала освоить Swift - основной язык для iOS и постепенно учить Objective-C, который также понадобится вам для написания приложений и использования библиотек и ресурсов.

Если у вас есть опыт разработки на C++, это будет отличным преимуществом, поскольку “плюсы” прививают любовь к качественному продукту, принципам и то, что у мобайла ресурсы ограничены, вас не будет вводить в затруднение.

Требования компаний к iOS разработчикам начального уровня

Стандартно к Junior-разработчикам на iOS компании выдвигают такие требования:

    • Xcode & Interface Builder
    • CocoaTouch
    • Использование CocoaPods
    • Понимание MVC
    • Push Notifications
    • UIKit
    • CoreData
    • Опыт работы с библиотеками AFNetworking, Alamofire, RestKit
    • Auto Layout
    • Debugging в Xcode
    • In-App Purchase

Если вы не использовали какие-то инструменты из этого списка, вас все равно могут принять на работу, но существуют “киты”, без которых никуда. Мы расскажем о наиболее важном.

Как получить работу на должность Junior iOS разработчик

Что необходимо сделать, чтобы соответствовать требованиям уровня Junior и получить должность “iOS разработчик”?

Во-первых, будьте уверены, что IT-компании заинтересованы в программистах начального уровня, которые в перспективе могут вырасти с помощью тим-лида. Спрос на iOS-разработчиков достаточно высок - с 2013 года он вырос в два раза, а конкурс на место вдвое меньше, чем среди разработчиков Android .

Что нужно знать о Swift, чтобы стать Junior-разработчиком?

Для того, чтобы попасть в IT-компанию, необязательно идеально знать Swift. Для должности джуна, вам нужны:

        • базовые знания синтаксиса, классов, инициализации
        • обработка ошибок
        • знание логических выражений, операторов, циклов и массивов

Зачем программисту навыки пространственного мышления?

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

Какие правила проектирования нужно освоить?

Разработчик под ios должен освоить MVC (Model-View-Controller) - определяет, как данные отображаются и обновляются для пользователя. А также паттерн делегирование - с его помощью вы сможете рациональнее переиспользовать код. Все это нужно для того, чтобы создавать интуитивно понятные пользователю приложения, что очень важно для его прибыльности.

Для чего iOS-developer’у нужно освоить GitHub?

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

Таким образом, вы будете обладать хостингом для кода, пользоваться историей изменений и сохраняться на локальном хранилище.

iPhone разработчик - это не просто программист, который идеально знает Swift и Objective-C. Вы должны смотреть на процесс разработки приложения шире и обладать необходимыми навыками для того, чтобы делать первоклассные проекты. Поэтому, кроме того, чтобы учить языки программирования, мы советуем изучить создание приложений в целом и начинать практиковаться:)

Например, один из наших разработчиков в начале своего пути ходил по разным собеседованиям на разные должности, переписывал вопросы, которые ему задавали и обучался самостоятельно: “Я считаю, что книги не помогают - они хороши, когда у тебя есть объем знаний и ты хочешь его структурировать. Поэтому лучше всего ставить цель, начинать с малого и двигаться.”

Для того, чтобы попасть в Artjoker, кроме навыков, описанных выше, нужно:

    • Следовать принципам SOLID, DRY, YAGNI
    • Использовать менеджеры зависимостей CocoaPods (Carthage)
    • Хорошо понимать GIT flow
    • Работать с базами данных (CoreData, SQLite или Realm)
    • иметь опыт написания клиент-серверных приложений (знание AFNetworking, Alamofire, Apollo GraphQL приветствуется) работать с багтрекинговыми системами

Разработка мобильных приложений для ios - один из профилей команды Artjoker, так что развивайтесь, прогрессируйте и приходите к нам - наши тимлиды помогут вам вырасти в настоящих сеньоров:)

Если вы хотите узнать больше о жизни и работе в Artjoker, читайте "50 фактов о работе в Artjoker и смотрите видео:)

Эта статья открывает цикл, предназначенный для новичков. Смею надеяться, что уровень подачи материала позволит разобраться в нем даже людям не знакомым с программированием. Начнем наше повествование с небольшого лирического отступления. Приложения для iPhone и iPad пишутся на языке Objective-C. Этот язык широко использовался в компании NeXT и пришел в Apple после возвращения Стива Джобса. В настоящее время Objective-C является основным языком разработки OS X и iOS приложений.

Для того, чтобы начать программировать под iOS, Вам понадобится компьютер Mac на базе процессора Intel и среда разработки XCode. Если у Вас нет Mac-а - не беда. Возможно Вам подойдет один из описанных методов решения этой проблемы. Мы будем ориентироваться на XCode 4 и iOS5.

Установка XCode

Для начала нам придется зарегистрироваться наApple-овском dev сайте. Перейдите по ссылке и нажмите на register. Щелкните кнопку Get Started и пройдите процесс регистрации. Там все довольно просто, поэтому я не буду останавливаться на этом моменте. После регистрации Вам пришлют письмо с вашим Apple ID. Вернитесь на страницу Apple Developers и используйте его для входа в защищенную зону. В разделе DevCenters щелкните по ссылке iOS. Как видите, Apple предлагает вам кучу документации, исходников и уроков. На этой странице есть все, что нужно для начала разработки под iOS. В самом низу есть кнопка Download Xcode, которую нужно нажать. После загрузки установите Xcode на свой Mac.

Знакомство с интерфейсом XCode 4

Для запуска Xcode перейдите на свой главный диск и щелкнете по developer>Applications.

После того, как Xcode запустится, выберите пункт меню File>New Project, затем "Single View Application" и введите в качестве имени проекта (Product Name) HelloWorld. В результате у вас должно отображаться что-то вроде этого

Весь Ваш код и ресурсы разложены по специальным папкам, которые располагаются в левой части окна Xcode. Панель называется "Project Navigator" и содержит все элементы Вашей программы. Файлы с исходным кодом имеют расширение ".h" и ".m". Если вы щелкните по такому файлу, то в правой части Xcode откроется редактор с кодом.

Не будем пока останавливаться на коде. Мы вернемся к этому вопросу чуть позже. Если Вы посмотрите на верхнюю часть экрана, то увидите несколько кнопок, связанных с Вашим проектом. Изучим эту панель подробнее.

Кнопка "Run" запускает ваш проект. Вы можете протестировать свое приложение и убедиться, что оно ведет себя действительно так, как вы того ожидаете. Кнопка "Tasks" останавливает запущенное приложение.

С помощью кнопки Schemr можно выбрать целевую платформу, где будет запускаться ваше приложение. Здесь вы можете выбрать какой-нибудь simulator, и отлаживать программу на компьютере, или запустить ее на своем iPhone (iOS Device), если Вы заплатили сбор в $99. Единственное преимущество, которое дает этот платеж - возможность запускать программу на реальном устройстве и размещать ее в App Store. Я бы не рекомендовал Вам тратиться до того момента, пока у Вас не будет готова нормальная программа.

Breakpoints (точки остановки) - очень полезная штука. С помощью этой кнопки вы можете отметить в исходном коде строки, и когда в ходе выполнения программы дело дойдет до помеченной строки, программа приостановится, и вы сможете посмотреть состояние переменных. Это очень мощный и повсеместно используемый инструмент.

Нажмите кнопку "Run". Вы увидите окно эмулятора со своим проектом. Как видите, пока он не блещет функциональностью - это просто заготовка.

Программирование для iPhone -Первый шаг

Довольно ходить вокруг да около, давайте что-нибудь закодим. В окне Project Navigator содержатся файлы с исходным кодом. Щелкните по какому-нибудь.m файлу. Обратите внимание, некоторые строки окрашены в зеленый цвет - это комментарии, которые выполняют роль шпаргалок. Чтобы не запутаться в коде, программист может оставлять себе подсказки и пояснения. Для обозначения комментариев в языке C используется сочетание слешей //. Все, что находится в строке правее этих знаков, считается комментарием. Если Вы хотите написать многострочный комментарий, то можете использовать сочетания /* и */ для обозначения начала и конца многострочного комментария.

Прежде чем приступить к написанию кода приложения, я должен а пальцах объяснить вам несколько концепций: ООП (объектно-ориентированное программирование), MVC (Modal View Controller), ".h" и ".m" файлы. Итак... объектно-ориентированное программирование предполагает разделение всего кода на так называемые объекты, внутри которых хранятся данные и обрабатывающие их команды. Объект в Objective-C состоит из двух файлов.h и.m. Файл.h называется заголовком (header) в нем содержится "набросок" объекта - перечисляются все данные и названия блоков команд (методов), содержащихся в объекте. Файл.m называется файлом реализации (implementation) и в нем подробно расписывается все то, что указано в заголовке именно здесь программируется вся логика программы.

MVC (Model View Controller) - это нечто, разделяющее код и интерфейс, который видит пользователь. Model - это данные пользователя и данные, которые вы показываете пользователю. View - это пользовательский интерфейс и код, который обеспечивает связь между View и Model. Концепция MVC может сейчас показаться Вам слишком заумной, однако со временем Вы увидите, что этот подход действительно упрощает жизнь программиста. Эта концепция подразумевает следующий порядок работы: программист отдельно создает шаблон дизайна приложения, где размещает все кнопки, текстовые поля и прочую важную ерунду, и отдельно пишет программ. Потом он показывает XCode какой метод(блок кода) должен вызываться в ответ на то или иное действие пользователя и какое название имеет тот или иной элемент управления в тексте программе.

Разрабатываем дизайн программы для iPhone

Давайте начнем создание нашего приложения с разработки дизайна. Щелкните в окне Project Navigator по строке MainStoryboard_iPhone.storyboard. В результате XCode запустит редактор интерфейса.

В правом нижнем углу Вы видите список объектов (Library), которые можно использовать в своем интерфейсе, в центральной части отображается окно View, которое и представляет макет интерфейса вашей программы. Правое верхнее окно имеет несколько режимов, которые переключаются с помощью расположенных над окном иконок. На рисунке показан режим Atribute Inspector. Здесь можно изменять различные атрибуты объектов, составляющих ваш интерфейс.

Перетащим из окна Library объект Label на наш макет окна. С помощью мышки изменим размер объекта, как показано на экране ниже. В инспекторе отображаются свойства объекта Label. Давайте отцентрируем текст, щелкнув по соответствующей иконке в строке Layout.

Удалим текст в поле Text (там было написано слово Label) и введем там “Some String”.

Аналогичным образом добавьте на макет кнопку (объект Button)

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

Начинаем кодить

Итак, у нас есть два визуальных компонента размещенных на макете. Мы хотим чтобы при нажатии на кнопку менялся текст в строке. Чтобы реализовать эту задумку нам понадобится из кода программы обращаться к стороке (объект Label) и вызывать метод(блок кода) при нажатии на кнопку.

Щелкните по файлу "ViewController.h" в панели слева. Мы собираемся описать IBOutlet. IBOutlet соединяет наш код с визуальным объектом, например с надписью (label) или кнопкой (button). Приведите код в файле ViewController.h к виду

#import @ interface ViewController: UIViewController{ IBOutlet UILabel* label; //присвоим нашей строке имя Label } //это заголовок метода, который будет //вызываться в ответ на нажатие кнопки - (IBAction) buttonClick: (id) sender; @ end

Это все, что нам требуется прописать в заголовочном файле. IBAction позволяет соединить какой-нибудь метод с элементом пользовательского интерфейса, например, в ответ на нажатие кнопки будет вызван написанный нами программный код.

Итак, мы сказали, что будем называть строку с текстом label и что в ответ на действие пользователя будет вызываться метод buttonClick. Давайте напишем код этого метода. Переключимся на файл ViewController.m в дереве проектов. После строки@implementation... добавим код

- (IBAction) buttonClick: (id) sender{ label. text= @ ”Hello from Mobilab. ru”; }

Примечание, если Вы скопировали этот код, то вероятно при запуске программы у Вас возникнет ошибка, скорее всего проблема в ковычках. Удалите их и введите с клавиатуры.

Давайте разберемся, что мы тут видим. Мы обращаемся к объекту label - строке текста на экране. Поскольку это объект, у него внутри есть разные данные (которые в ООП также называют свойствами объекта) и методы к которым можно обратиться, поставив точку после имени объекта. Свойство text отвечает за содержащийся внутри строки текст..

Мы завершили кодирование, осталось связать label и buttonClick с элементами внутри макета дизайна. Щелкните в окне Project Navigator по строке MainStoryboard_iPhone.storyboard, чтобы переключиться в конструктор интерфейса. Зетем щелкните по иконке “View controller”. Переключитесь на режим connections в инспекторе (последняя иконка). Посмотрите, в инспекторе в области Outlets появилась строка label. Это то название, которое мы указали в файле ViewController.h. Щелкните по кружочку в правой части строки label и перетащите его на строку с текстом Some Text в макете дизайна.

Аналогичную операцию проделайте с кнопкой. Щелкните по кнопке с кружочком в группе “Received Actions”, потом по buttonClick и перетащите ее на кнопку в макете. В результате раскроется контекстное меню, с помощью которого можно выбрать момент вызова метода. Можно, например, вызывать код, когда пользователь нажмет кнопку, можно когда отпустит. Там много вариантов. Выберите "Touch up Inside".

Вот и все! Сохраняйте проект и щелкайте по кнопке "Run" на панели сверху. Если Вы Все сделали правильно, то должен запуститься эмулятор с Вашей программой. Щелкните по кнопке. Текст в строке должен измениться. Вот и все. С первым уроком покончено

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

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

Шаг первый. Придумайте идею и название

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

1 Зайдите в AppStore и посмотрите представленные там программы. Возможно, вам что-то придет в голову.

2 Также посмотрите на список своих приложений (установленных ). Вероятно, что не все из них нравятся вам и хотелось бы добавить к некоторым какую-то функцию. Это и будет идея для вашего творения!

3 Посмотрите на приложения своих друзей с той же целью .

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

Что касается названия, то к этому вопросу также стоит отнестись очень серьезно. Для начала посмотрите на самые и их названия. Зайдите на apple.com/ru/itunes/ с этой целью. Обязательно посмотрите раздел бесплатных и платных.

Эксперты выделяют несколько советов относительно того, каким должно быть название, а конкретно:

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

Шаг четвертый. Разработка концепции

На первом шаге вы уже приняли идею и название будущего приложения. Теперь стоит сделать то, что позволит вам приступить непосредственно к разработке. Речь идет о концепции. В этом понятие включается следующее:

  • Целевая аудитория. Обязательно подумайте о том, кто будет вашим пользователем. Это может быть молодой, целеустремленный и знакомый с современными гаджетами молодой человек. С другой стороны, это может быть пожилой пользователь, который далек от технологий. От этого будут зависеть остальные две составляющие концепции.

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

Когда все наброски у вас есть, можно приступать к кодингу!

Шаг пятый. Кодинг

Вот теперь открывайте Xcode и выполняйте следующие этапы создания ПО на iOS:

1 На стартовом экране, в меню слева нажмите «Application» (откройте этот раздел) и выберете «Empty Application» . Нажмите «Next» . Дальше введите свои данные, а в поле идентификатора разработчика (дается Apple) укажите «example» , а в поле префикса класса укажите «XYZ» .

2 Дальше выберете «File» и в выпадающем списке «New» . Дальше последовательно нажмите «User Interface» , «Storyboard» и кнопку «Next» . В меню устройств выберете и в поле имени введите «Main» . Сохраните этот файл в ту же папку, что и основной проект. После этого в древе проекта (слева) появится файл Main.storyboard. Это, как вы уже могли понять, визуальное представление всех экранов вашей программы. В дальнейшем вы будете редактировать именно его.

3 Теперь нужно сделать так, чтобы при запуске приложения открывался именно тот экран, который вы создадите в Storyboard. Для этого в дереве папок слева последовательно выберете свой проект, «Targets» , «General» , «Deployment Info» . Затем возле надписи «Main Interface» выберете «Main» , как на рисунке 8, - именно так мы назвали наш экран на предыдущем этапе.

Рис. 9. Назначение созданного экрана главным в Storyboard

4 Теперь, собственно, нужно создать этот самый главный экран, который откроется первым при запуске. Для этого в дереве слева нажмите на «storyboard» один раз. В основном окне откроется пустое окно. Внизу справа нажмите на иконку в виде куба, это библиотека объектов, которые можно внести на экран. Теперь справа найдите «View Controller» и перетащите его курсором мыши на пустое поле. Появится объект прямоугольного вида. Собственно, туда можно добавлять и все элементы.

5 Теперь вы можете добавлять и другие объекты из библиотеки . Это могут быть текстовые поля, поля ввода и остальные элементы. Если нажать на них два раза, то появится возможность изменять их атрибуты и свойства. Собственно, таким же образом можно написать какой-то код для реакции на клик. Впрочем, если вы смотрели видеоуроки по Objective-C, то прекрасно знаете, какие элементы вам нужны и как их добавить.

6 Если вам потребуется добавить еще экран, то сделайте это таким же образом, как и раньше – переместите на пустое место объект «View Controller» . Дальше можно будет так же перемещать различные объекты на него.

7 Теперь нужно сделать так, чтобы пользователь мог перемещаться между этими экранами с помощью свайпа или же путем нажатия на соответствующую ссылку. Для этого существует объект под названием «Navigation Controller» . Переместите его на свой главный экран. Дальше нажмите на «Editor» , затем «Embed In» и на вышеупомянутый объект. Вверху главного экрана появится серая панель. Это и означает, что к нему добавлена так называемая панель навигации.

8 Чтобы добавить кнопку перемещения по экранам, существует объект «Bar Button» . Это кнопка, если сказать проще. Переместите ее на панель навигации и задайте соответствующие свойства.

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

И с этой статьи я начинаю вести блог по программированию для iOS . А в дальнейшем и для OS X!

Зачем мне это нужно? Не так давно я стал счастливым обладателем iPad Retina. Он достаточно сильно понравился мне и приятно впечатлил! Я даже начал понимать “яблокофилов” с их постоянным стремлением приобретать всю продукцию Apple, которая выходит в свет. Но одно дело приобретать чужое, а другое – создавать своё своими руками! И эта мысль навела меня на создание данного сайта о программировании приложений/игр для продукции от Apple.

Для кого этот блог? В первую очередь он для тех, кто любит программировать и творить. Вполне возможно, что вы никогда не программировали на Objective-C (именно этот язык программирования используется), но очень хотите начать. Однако, желательно, чтобы вы знали какой-нибудь язык программирования, например, Excel макросы, QBasic, С++, С#, 1С в конце концов. Т.е. Вам очень поможет математический склад ума. Если и это не так – ничего страшного. Блог создан для новичков, таких же как я. Голый энтузиазм Я буду стараться объяснять просто, доступно и интересно, как сам люблю.

Несколько слов о языке программирования. Отзывы в Интернете сходятся в том, что этот язык удобен, не сложен, интересен, более “логичен” для человека, чем языки прошлых поколений. Поэтому, если у Вас есть желание и азарт, то скучно не будет!

Опять же, из отзывов в Интернете и по собственному опыту использования приложений из AppStore я понял, что Дизайн приложения стоит на первом месте. Он обгоняет даже функциональность программы. Т.е., если у Вас программа очень крутая, но выглядит некрасиво, то популярности она не заимеет. Поэтому необходимо уделять большое внимание дизайну приложения, созданию красивого Интерфейса программы, а значит и работать в Photoshop, может быть, консультироваться с дизайнерами (или изучать дизайнерские моменты в Интернете).

Запоминаем: Интерфейс и Дизайн в наших приложениях должны быть на высшем уровне!

Для чего создавать приложения/игры на iOS? Тут есть два варианта:

1. Для себя. У вас есть iPhone/iPad и вы никак не можете найти приложение, которое бы удовлетворяло ваши потребности. Создайте его сами! Любые ваши “хотелки” вы сможете реализовать в своём приложении и радоваться ему!

2. Для всех. Этот вопрос уже интереснее. Ведь можно быть добрым молодцем и интересные приложения/игры раздавать бесплатно. А можно и за 1$-100$ продавать Если конечно его захотят купить:) Думаю последних будет большинство. Кстати, Apple забирает себе 30% выручки от продаж

Так или иначе, для разработки приложений есть 2 пути:

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

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

а. iOS Developer Program - 99$ в год, если желаете создавать бесплатные или платные приложения для iPhone, iPad, iPod touch, и распространять через AppStore. (то что нам нужно в дальнейшем!). А также тестировать их на своих девайсах.

б. iOS Enterprise Developer Program - 299$ в год, если желаете разрабатывать in-house приложения - приложения, для внутреннего использования в своей компании, без открытого доступа.

В итоге имеем: вначале нашего пути нам достаточно создавать приложения и смотреть, как они выглядят в эмуляторах. Как только мы почувствуем уверенность в себе, покупаем iOS Developer Program и, вперед, в мир AppStore. Инструкцию по регистрации я сделаю позже, как только это нам понадобится.

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

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

Об этом мы еще поговорим

А теперь я расскажу о том, как мы будем обучаться программированию. Я буду делать (“постить”) записи с новыми уроками с определенным интервалом времени. Изучать мы будем только то, что нам необходимо в данный момент. Никакой излишней общей информации, если она нам не понадобится на данном этапе, не будет. Уроки текстовые. Чем для меня не удобны видеоуроки: во-первых, надо записывать свой голос), во-вторых, с видеоурока не скопируешь часть кода, поэтому его придется перепечатать, в-третьих, если что-то прослушал, то нужно “перематывать” и т.п., что отнимает куда больше времени. + текст можно отредактировать быстро, а видео переснять – долго. Поэтому – текстовые.

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

Здесь я хочу опубликовать мой личный рейтинг iPhone и Android программистов. Я выражаю свое личное мнение как тестировщика мобильных приложений.
Я не могу сказать, что они лучше всех. Но работать с ними мне нравилось, потому что количество ошибок после выполнения ими той или иной задачи стремился к нулю. Т.е. эти люди делают свою работу качественно без брака. Если ошибка и обнаружена, то число ее переоткрытий практически не превышает одного раза. Ошибка исправляется раз и навсегда. Это достигается хорошим знанием платформы и просто хорошим качеством кода. Чем меньше ошибок, тем меньше тратится время на исправление. Меньше время разработки, значит вы тратите меньше денег на проект.
Я считаю наличие крешей в готовом продукте показателем качества продукта.
Если программа падает и теряет данные, пользователь скачает другую.
Итак, личный рейтинг. Те люди, с которыми я работал.

  1. Любимов Михаил , Разработчик iOS приложений, Sebbia, Ростов-на-Дону. Проект Shoppoints.
  2. Дмитрий , iOS Developer, Fidel.ru
  3. Андрей О iOS developer

Черный список:

  1. D-Systems или Распределенные системы . https://www.free-lance.ru/users/d-systems/portfolio/ Делали первоначально мой проект. Вместо сроков 3 недели это заняло 4 месяца. Ссылаются на то, что я начал тестировать, хотя разработка еще не была завершена. Я получил код очень плохого качества, хотя первоначально требовалось чтобы код был сделан так, чтобы легко написать версию под iPhone. Мне потребовалось много ресурсов чтобы потом делать переделки. Когда об этом было заявлено — они согласились переделать, но дальше молчание.
  2. Индусские программисты. Тот программист, с которым я работал по одному из проектов — число переоткрытий ошибок превышает 3. Приложение падало на каждом шагу… Любой чих за деньги….
  3. [email protected] - или Депинфотех. Не рекомендую связываться КАТЕГОРИЧЕСКИ. Спамят письмами, хотят взяться за любой проект, хотя не имеют ни опыта не разработки. При ставке 20 долларов в час предлагают Junior разработчика. Когда нужно сделать приложение под iOS присылают примеры работ на Android

Когда я был фрилансером, я работал с достаточно многими программистами.

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

  1. Ставка для программистов, у которых нет приложений в App Store — 300 рублей в час. Так или иначе программист будет изучать XCode за ваш счет, если он ничего не писал. Ставка опытного программиста — от 500 рублей в час. Особняком конечно лежит Москва. Тут ставки от 500 рублей и выше….
  2. По качеству программного кода русские программисты превосходят украинских и индийских коллег. По мне лучше взять разработчиков не из Москвы, а из провинции. Новосибирск, Казань…. Это актуально и для фирм, занимающихся разработкой.
  3. Если у вас есть проект, ищите программиста, который делал нечто похожее. Если это финансы — ищите кто делал расчеты. Если это игры — примеры игр. Разработчик будет делать меньше ошибок, если отрасль ему знакома.
  4. Предлагайте оценить сроки по каждой задаче. Если программист тратит на натягивание дизайна 2х кнопок 2 часа — это не ваш программист. Может я и утрирую, но исправление одной ошибки — не более 2х часов. Если ошибка сложная.
  5. Задайте программисту вопрос по математике. Нормальный программист сможет вывести одно неизвестное из формулы.
  6. Спросите работал ли программист с багтрекером, знает ли циклы обработки ошибки. Если работал, сколько переоткрытий ошибок у него обычно было.
  7. Спросите, сколько крешей обычно было в его приложениях под iOS. Почему они случались и насколько быстро исправлялись.

Подбор iOS разработчиков на проект

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

Контакты разработчиков

В общем если вам нужны контакты мобильных разработчиков, они есть ниже. Просто поделитесь ссылкой в одной из соц. сетей. Там есть и контакты разработчиков и специалистов по продвижению.
Удачи.

Анатолий Ларин
[email protected] мобильный маркетолог, буду подсказывать ^__^ http://touchin.ru

Александр Штучкин
[email protected] !

Николай Додонов
[email protected] Делаем свое приложение.

Полина Витенко
[email protected]
специалист по маркетинговым коммуникациям, очень-очень хочу больше узнать о маркетинге в сфере IT

Online
Дака Мартынюк
[email protected]

Ярослав Сеньшин
[email protected] Пишу первое приложение, поэтому хочется узнать все тонкости

Иван Козлов
[email protected]
Руковожу отделом мобильной разработки

Евгений Валеев
[email protected]
Технический директор мобильной софтверной компании

Алексей Гончаров
Готовим приложение, интересно)

Тимофей Утнасин
[email protected]
Компания FlexyMind — разработка детских развивающих игр для мобильных ОС

Наталия Давыдова
[email protected]
руководитель отдела мобильной разработки компании H&H http://handh.ru

Дима Орлов
[email protected]
Я делаю мобильные приложения

Моисеенков Алексей
[email protected]
основываю свою студию

Маргарита Сырцова, [email protected], директор компании по комплексному созданию облика компании, мотивирует желание развивать направление приложений

Поляков Максим
[email protected]
Я знаю как изменить мир, теперь мне надо понять как лучше на этом заработать.

Марина Виноградова
[email protected]
Мы запускаем скоро мобильное приложение

Даниил Соснин
[email protected]
Готовим мобильное приложение.

Online
Екатерина Жолобова
Жолобова Екатерина, [email protected] Мобильный маркетолог со стажем)

Завьялов Антон, [email protected] Разрабатываю проект для лиги маркетологов с интерактивной поддержкой

Насыров Наиль
[email protected]
Одно из направлений проекта в аспирантуре ИТМО

Владислав Александрович
Владислав Карбовский, разработчик
[email protected]

Александр Хитущенко
[email protected]
Руководство проектом мобильного приложения для туристов т

Илья Чернецкий
Илья Чернецкий [email protected] делаю мобильные приложения (http://coinkeeper.me, relevanceto.me etc)

Ольга Кабанова
Ольга Кабанова, [email protected], занимаюсь продвижением десктопных и мобильных приложений

Ксения Копылова
Ксения К.([email protected]) и Тимофей М. ([email protected]) — занимаемся разработкой мобильных приложений

Yura Easy
Лобынцев Юрий
[email protected]
руковожу разработкой мобильных приложений

Сергей Шмаков
[email protected]
SMM-менеджер buruki.ru + участвую в разработке нового приложения для buruki.ru для iOS и Android

Петр Фальковский
[email protected]
интересен рынок мобильных приложений

Надя Кошкина
Надежда Кошкина [email protected] — маркетинг IT-проектов; занимаемся разработкой собственного приложения. Леонид Назаров [email protected] — дизайнер интерфейсов.

Марина Калямина
[email protected]
Очень актуальная тема. В голове много идей для создания приложений, хотелось бы послушать советы

Глеб Буров
Глеб Буров, CTO Seedr
[email protected]

Виктор Штефанец
интернет-проекты
[email protected]

Вячеслав Богородицкий
[email protected]
руководитель проектов в веб-студии.
сейчас развиваем направление мобильных приложений.

Евгений Дементьев
[email protected]
Руководитель отдела мобильной разработки «Топфейс»

Иван Балашов
Андрей Маркин [email protected], маркетолог в сфере IT, планируется запуск мобильного приложения.

Online
Денис Каланов
Директор по развитию IT-Доминанты
[email protected]
Планируем запуск мобильного приложения…

Вероника Минина
маркетолог мобильных приложений, UFT
[email protected]
Мотивирует: быть в курсе know how,узнать об опыте коллег, получить новые знания, контакты.

Петр Василевский, Алексей Финагин
[email protected], [email protected]
Разрабатываем мобильное приложение.

Попова Татьяна
[email protected]
Развиваем он-лайн проект, готовим запуск его мобильной версии

Андрей Григорьев
Развиваем мобильное приложение Forex по iOS
[email protected]

Online
Александр Зайцев
Александр Зайцев [email protected] Интересна тема, т.к. сам занимаюсь разработкой.

Владислав Поклонцев
Поклонцев Владислав [email protected]
Разрабатываем первое мобильное приложение.

Вадим Скаржевский
[email protected]
Планирую делать приложение. Хочу узнать тонкости

Яна Кузьмина
[email protected]
Продакт менедер пары мобильных приложений

Сергей Грищёв
Грищёв Сергей
[email protected]
Основатель студии мобильных приложений ShadeApps, у нас вышло уже 2 приложения под iOS — ещё 3 находятся в разоаботке

Екатерина Макарова
[email protected]
Начинающий специалист по продвижению мобильных приложений, очень хочется перенять опыт.

Евгения Филина
e-mail:
[email protected];
[email protected]