2010-05-06 3 views
3

Опытные Objective-C/Cocoa Devs:Каковы основные концепции разработки Objective-C/Cocoa?

Каковы основные концепции, которые я должен абсорбировать рано, что получит меня ближе к тому моменту, когда осенило все это имеет смысл, и я эффективно создание решений с Objective -C/какао? Я исхожу из фона .NET/Java, поэтому все, что я делаю, основано на этой парадигме.

Мне не нужны глубокие особенности, а одна или две вещи, с которыми вы столкнулись, были разными, и потребовалось некоторое время, чтобы впитаться. Хорошим примером может быть, когда я перешел с QuickBASIC на C 20+ лет назад. .. Мне потребовалось время, чтобы понять концепцию указателя. В результате я бы сказал, что ключевая концепция перехода от QuickBASIC к C - это понимание адреса памяти.

+1

+1 отличный вопрос –

ответ

5

MEMORY MANAGEMENT. Если вы не понимаете указателей, разницу между стеком и кучей, и как точно управлять памятью, вы потратите годы, пытаясь зацепить Objective-C и Cocoa, но никогда не «получите».

(Я говорю по опыту, я [к сожалению] был обучен программированию на базовых языках, а затем провел 2 года, пытаясь понять, что означало это #! @ # ^% Звездочка. Затем я прошел курс компьютерной инженерии , узнал о памяти, а затем взял Objective-C через неделю)

+0

У меня был очень похожий опыт. Указатели - это сложная концепция, если вы не изучите их на ранней стадии. –

1

Существует множество концепций, которые здесь трудно охватить. На сайтах разработчиков Apple есть много замечательных руководств, руководств и документации по API, связанных с приложениями для написания, структурой Cocoa и соглашениями для написания приложений. Я хотел бы начать там:

http://developer.apple.com/iphone/index.action

+0

Я ценю этот Энди. Я надеялся, что будет больше основных понятий. Я расскажу об этом выше. –

2

Есть много различий, но ключ один сборщик мусора. Он всегда присутствует в .NET/Java, но, возможно, в Cocoa. если вы не используете GC в Cocoa, то вам действительно нужно подсчитать количество ссылок: сохранить, освободить, пулы autorelease. Это очень богатый источник ошибок.

+0

Я бы сказал, что даже если вы намерены использовать сборщик мусора, вы обязательно должны изучить подсчет ссылок. В какой-то момент вам обязательно понадобится использовать его, и уроки ценны в среде GC в любом случае. –

3

Я бы порекомендовал Cocoa Design Patterns Эрик М. Бак и Дональд А. Яктман. Отличная книга, если вы хотите узнать больше о ключевых концепциях Cocoa, их предыстории и мотивации.

Мой список:

  • Как Cocoa использует динамический характер Objective-C в реализации многих повседневных функций, таких как Undo, переплеты, ...
  • Interface Builder не является генератор кода.
+0

+1 дизайн шаблоны являются хлеб и масло понимания какао. –

Смежные вопросы