2010-05-06 6 views
3

expérimentés Objective-C/Cocoa Devs:Quels sont les concepts clés du développement d'Objective-C/Cocoa?

Quels sont les concepts clés que j'absorberont tôt cela me rapprocher de ce moment de l'Épiphanie où il prend tout son sens et je crée efficacement des solutions avec l'objectif -C/cacao? Je viens d'un arrière-plan .NET/Java donc tout ce que je fais est basé sur ce paradigme. Je n'ai pas besoin de détails approfondis, mais plutôt les deux ou trois choses que vous avez rencontrées qui étaient différentes et qui ont pris du temps à s'imprégner. Un bon exemple serait quand je suis passé de QuickBASIC à C 20+ ans. .. il m'a fallu une éternité pour saisir le concept d'un pointeur. En conséquence, je dirais qu'un concept clé du saut de QuickBASIC à C est de comprendre l'adressage de la mémoire.

+1

+1 grande question –

Répondre

5

MEMORY MANAGEMENT. Si vous ne comprenez pas les pointeurs, la différence entre la pile et le tas, et comment gérer la mémoire avec précision, vous passerez des années à essayer d'obtenir Objective-C et Cocoa, mais jamais "get it". (Je parle par expérience, j'ai [malheureusement] appris à programmer dans des langages de type Basic, puis j'ai passé 2 ans à essayer de comprendre ce que signifiait cet astérisque #! @ # ^%. , appris sur la mémoire, puis ramassé Objective-C dans une semaine)

+0

J'ai eu une expérience très similaire. Les pointeurs sont un concept difficile si vous ne les apprenez pas dès le début. –

1

Il y a une tonne de concepts, qui seraient difficiles à couvrir ici. Les sites de développeurs Apple proposent de nombreux didacticiels, guides et documents d'API sur les applications d'écriture, le framework Cocoa et les conventions pour l'écriture d'applications. Je commence là:

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

+0

J'apprécie ce Andy. J'espérais plus de concepts de base. Je vais développer la question ci-dessus. –

2

Il y a beaucoup de différences, mais une clé est le garbage collector. Il est toujours présent dans .NET/Java, mais optionnellement dans Cocoa. Si vous n'utilisez pas le GC dans Cocoa, alors vous devez vraiment compter le nombre de références: conserver, libérer, autorelease pools. C'est une source très riche de bugs.

+0

Je dirais que même si vous avez l'intention d'utiliser le garbage collector, vous devez absolument apprendre le comptage des références. Vous aurez certainement besoin de l'utiliser à un moment donné, et les leçons sont utiles dans l'environnement du GC de toute façon. –

3

Je recommanderais Cocoa Design Patterns par Erik M. Buck et Donald A. Yacktman. Excellent livre si vous voulez en savoir plus sur les concepts clés de Cocoa et leurs antécédents et leur motivation.

Ma liste:

  • Comment Cocoa utilise la nature dynamique de l'Objective-C dans la mise en œuvre de nombreuses fonctions quotidiennes comme Annuler, Manchettes, ...
  • Interface Builder n'est pas un générateur de code.
+0

+1 motifs de conception sont le pain et le beurre de la compréhension du cacao. –

Questions connexes