Имеет ли смысл сначала изучать Cocoa для Leopard, а затем Touch для iPhone? - PullRequest
5 голосов
/ 28 февраля 2009

На самом деле меня не слишком волнует разработка Mac OS X. Я хочу заниматься только разработкой iPod Touch и iPhone. Но в любом случае я начал изучать Какао и Objective-C. Но кажется, что есть много различий между Cocoa и Cocoa Touch, поэтому мне интересно, действительно ли я трачу свое время. Должен ли я просто перейти непосредственно к темам iPhone?

Ответы [ 7 ]

10 голосов
/ 28 февраля 2009

Существует много совпадений, но если ваша цель в обучении - заниматься программированием на iPhone, то непременно изучайте программирование на iPhone напрямую.

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

9 голосов
/ 28 февраля 2009

Я думаю, вы могли бы использовать Cocoa-Cocoa Touch или Cocoa Touch-Cocoa и при этом хорошо понимать, что нужно для программирования на любой платформе. Я попробовал разработку Какао на своем Mac несколько лет назад и был довольно смущен. Наконец я решил заняться программированием на iPhone и приступил к Начало разработки для iPhone: изучая iPhone SDK , проработал эту книгу в течение нескольких недель, и теперь я понимаю вещи намного лучше Действительно, все, что нужно, это хорошее объяснение программирования на Mac. Я вполне уверен, что теперь я мог бы освоить обычное программирование на Какао с гораздо меньшими усилиями. Если бы я начал с обычного программирования на Какао, я вполне уверен, что смог бы довольно легко освоить программирование на iPhone. Есть различия, но есть много (очень крутых) сходств между двумя платформами.

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

7 голосов
/ 01 марта 2009

Обычно я согласен с другими ответами здесь: непосредственно изучите интересующую вас тему. Но в случае с Cocoa / Cocoa Touch вам лучше прочитать Программирование какао для Mac OS X, 3-е изд. Аарон Хиллегасс. Это чертовски хорошо!

3 голосов
/ 11 апреля 2009

Одно из различий между Cocoa Touch и Cocoa заключается в области управления памятью.

Если вы впервые изучаете Objective-C (или, возможно, любой язык на основе C в первый раз), я бы начал с Cocoa Touch.

Мое рассуждение состоит в том, что iPhone не поддерживает автоматический сбор мусора, и вам может быть легче сначала изучить (более сложный, конечно, менее автоматический) способ, а затем при переходе к разработке OS X оцените ярлыки, которые ОС Платформа X дает вам.

Если вы сначала изучите разработку Какао на Leopard, вы можете быть разочарованы, казалось бы, более примитивным управлением памятью, доступным в iPhone.

Хотя они очень похожи.

Суть в том, что если вы хотите научиться программировать для iPhone, переходите к iPhone. Разработка Mac OS X не является обязательным условием, просто очень похожий набор навыков.

3 голосов
/ 28 февраля 2009

Есть сходства, но если целью является разработка iPhone, вам будет гораздо лучше начать учиться на этой платформе, а затем перейти к Mac. В рамках пользовательского интерфейса происходит гораздо больше, и с точки зрения того, что IB может сделать, вы вполне можете привыкнуть к некоторому аспекту системы, который отсутствует на iPhone (или сделан по-другому).

Базовые классы NS во многом совпадают, но даже есть различия.

Также имейте в виду, что симулятор скомпилирует и запустит код Mac, который не будет компилироваться или запускаться на самом телефоне, при использовании документов всегда держите их в разделе iPhone SDK.

1 голос
/ 15 июля 2009

Я задавал примерно тот же вопрос, что и вы, хотя я сначала сосредоточился на разработке Mac, позже появился iPhone. Я ни в коем случае не эксперт по кодированию какао, но все быстро улучшается. Я обнаружил, что то, что я узнал о какао на Mac, очень удобно для iPhone; разработка iPhone, безусловно, прошла намного быстрее, чем мои первые шаги в какао на Mac ...

На практике оба навыка мне пригодятся. Я делаю игру для iPhone, но набор данных, который он использует (реальные головоломки), создается с помощью небольшого приложения для какао, которое я разработал для Mac. Есть ли конкретная причина, почему вы не хотите изучать разработку для Mac? Вам не нужны дополнительные инструменты разработки / проектирования для вашей игры?

(снимок экрана приложения Mac: http://www.qixis.com/images/edit16-screenshot.png)

1 голос
/ 29 апреля 2009

Я учил разработчиков Mac и разработчиков iPhone, и мой опыт показывает, что лучше всего сначала изучать Mac, особенно потому, что вы можете получить хорошее представление о Какао, используя Программирование Какао для Mac OS X , которая до сих пор является лучшей книгой по изучению моделей какао. До сих пор я не нашел хорошую книгу по iPhone, которая рассказывает о ключевых вопросах, которые вам нужно знать, и которые бы отличали программирование Cocoa / Touch от Java, .NET и других систем. Недавно я написал пару статей, которые могут оказаться полезными, если подумать:

Программа курса iPhone

Обзор поваренной книги разработчика iPhone

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...