Единственный фолиант, который я рекомендую для изучения Objective-C для людей, приходящих на ObjC с очень разного уровня подготовки, - это Kochan .
Я бы очень порекомендовал вам попробовать MonoTouch:
Это позволяет вам разрабатывать для iPhone с помощью C #. Вероятно, вы могли бы повторно использовать часть существующего кода и просто сосредоточиться на создании приятного пользовательского интерфейса iPhone. Вам все еще нужно разрабатывать на Mac, так что вам это понадобится.
РЕДАКТИРОВАТЬ: Поднятый здесь вопрос об использовании MonoTouch больше не является проблемой, поскольку Apple изменила свою политику (к лучшему!)
http://www.apple.com/pr/library/2010 /09/09statement.html
Я удалил свое предупреждение о том, что MonoTouch может нарушать условия обслуживания Apple. Насколько мне известно, ни один разработчик MonoTouch никогда не отклонял свое приложение Apple, и теперь это официально больше не вызывает беспокойства.
Короткая поездка в Google выявила следующее:
http://www.thejohnsonblog.com/2010/02/19/iphone-objective-c-for-the-csharp-developer/
http : //howtomakeiphoneapps.com/2009/07/making-the-move-c-to-objective-c-the-gotchas/
http://www.yetanotherchris.me/home/2009/6/22/ objective-c-by-example-for-ac-developer.html
Как предлагали другие, MonoTouch может быть лучшим вариантом для вас. Несмотря на раздел 3.3.1 Apple, ни одно приложение MonoTouch еще не было отклонено из App Store, и вы всегда можете распространять приложения MonoTouch через корпоративный дистрибутив, если это ваша ситуация. Если вы не хотите выходить из зоны комфорта, придерживайтесь C # /. Net. Таким образом, вам нужно только изучить новую структуру пользовательского интерфейса.
Тем не менее, многие хорошие разработчики считают, что изучение нового языка - это возможность расширить свое мышление, а не просто развлечься. Objective-C имеет очень интересную историю и (по крайней мере) часть вдохновения для многих «современных» языков. Заявленная цель Objective-C состояла в том, чтобы упростить интеграцию программных компонентов, отсюда и интересное сочетание статической типизации и динамической отправки сообщений. Ваши комментарии говорят о том, что вы довольно жестко относитесь к языку. Многие из нас одинаково реагируют на любую новую среду, язык и т. Д. Дайте ему время, и вы можете обнаружить, что особенности Objective-C перевешивают «уродство», которое вы видите сейчас.
С точки зрения изучения Objective-C книга Аарона Хиллегасса в значительной степени является библией.Он ориентирован на OS X, но вы сможете извлечь из него соответствующие биты iOS. Кроме того, очень хорошее руководство по языку программирования Apple Objective-C .
Чтобы освоить Objective C, возьмите введение Кочана в Objective-C, познакомьтесь с основными концепциями языка - в частности, с классами, объектами и методами - а затем попробуйте создать SnowLeopard -совместимый инструмент командной строки для установки значения звука системы путем понимания конструкции Objective-C следующего кода SoundVolume:
http://www.cocoadev.com/index.pl?SoundVolume (код Райана)
Взгляните на:
Список литературы по какао
C / Objective-C
Как разработчик C # вы должны найти статьи Кевина Хоффмана о Cocoa & Objective-C (особенно в его блоге dotnetaddict) весьма интересными. Один из его проектов - (планируемая) книга "Какао и программирование .NET".
Хорошая вводная статья, которая также предоставляет некоторую полезную справочную информацию, - это ...
«Ниша Objective-C: почему она выживает в мире альтернатив»,
http://cocoawithlove.com/2009 /10/objective-c-niche-why-it-survives-in.html