Как начать разработку под iOS

Будем исходить из наиболее распространённой ситуации: есть PC, и нужно с минимальными затратами начать разработку под iOS-девайсы. Как известно, для этого нужно следующее:
  • Железо: любой из Маков
  • Среда разработки: Xcode
  • Знание языка и фреймворка: Objective-C и Cocoa Touch

Кроме того, крайне желательно ещё иметь:
  • iOS-устройства для тестирования приложений
  • Подписку на iOS Developer Program для тестирования приложений на реальных устройствах и публикации приложений в AppStore

Пройдёмся по этим пунктам.

Мак

В порядке увеличения стоимости системы ситуация выглядит следующим образом:
  • Хакинтош
  • Mac Mini
  • MacBook Air
  • iMac
  • MacBook Pro

Хакинтош стоит рассматривать только как временное решение и не в коем случае не в виртуальной машине (не стоит экономить на нервах). Ставить Хакинтош параллельно основной ОС несколько проблематично, да и железо должно быть из списка совместимого: wiki.osx86project.org/wiki/index.php/Main_Page

Лично я выбрал для себя Mac Mini, причём б/у. Early 2009 с Core 2 Duo 2.53 GHz, 4 ГБ RAM, 500 GB HDD обошёлся мне примерно в 16000 руб. (с учётом пересылки из другого города). Предложения я искал на www.avito.ru, но в последствии узнал, что можно было смело брать американца с ebay — блоки питания у них всех давно уже универсальные.
Шуршит вентилятором он заметно тише моего NAS'а (Netgear Stora), энергии потребляет не намного больше (15 Вт при простое).

Для полного комфорта хотелось ещё пользоваться одними и теми же клавиатурой, мышью и монитором с обоих компьютеров. Сказано — сделано. На ebay был найден KVM-свитч с DVI и USB входами-выходами китайского происхождения (вместе с доставкой это удовольствие обошлось примерно в $30). По прибытии устройства оказалось, что переключение производится по двойному нажатию Scroll Lock на клавиатуре, однако на Маках такой клавиши нет и такой сигнал Mac OS не обрабатывает должным образом. Решение проблемы было найдено здесь: apple.stackexchange.com/questions/23308/osx-does-not-recognize-the-scroll-lock-key-on-my-external-usb-keyboard

Количество общих внешних устройств у двух систем можно увеличить за счёт USB-хаба, но имейте в виду, что хаб у меня с внешним питанием.

Xcode

Здесь всё просто: Xcode распространяется в AppStore бесплатно. Единственная хитрость Apple в том, что для последних версий Xcode (на которых только и можно дебажить приложения на устроствах с последними версиями iOS) нужны последние версии Mac OS X. Сейчас это Lion и Mountain Lion. Любимый многими Snow Leopard, к сожалению, идёт лесом.
По сравнению с Visual Studio удобств в Xcode поменьше, особенно с отладкой. В принципе, ничего страшного нет, просто нужно изучить дополнительные инструменты.

Objective-C и Cocoa Touch

Изучать новый язык и платформу лучше всего по книгам. На русском языке я не нашёл подходящую литературу, поэтому обратился за советом на Amazon. Amazon посоветовал вот это: www.amazon.com/iOS-Programming-Ranch-Edition-Guides/dp/0321821521/ref=sr_1_1?ie=UTF8&qid=1343909154&sr=8-1
Я остался доволен этой книгой.

Желательные пункты

Эмулятор работает неплохо, но для тестирования реальной производительности нужны реальные устройства. Выгодно иметь iPad, на котором запускаются и приложения для iPhone.
Для тестирования на реальном устройстве ещё нужно иметь подписку на iOS Developer Program ($99 в год). Оформление этой подписки уже описывалось на Хабре.

Итого

В моём случае получилось так: $530 (Mac Mini) + $30 (KVM) + $45 (книга) + $99 (подписка). iPad у меня уже был. Итого: $704. Книга заняла у меня полтора месяца (можно было бы успеть и за месяц, но я делал себе выходные).
Если у Вас есть опыт более эффективного старта, поделитесь в комментариях — думаю, многим было бы интересно.
Tags:
ios, mac, iphone development, мобильная разработка

You can't comment this post because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author's username will be hidden by an alias.