Configuration du développeur pour débuter avec la programmation Cocoa/Mac

StackOverflow https://stackoverflow.com/questions/15681

  •  08-06-2019
  •  | 
  •  

Question

J'aimerais commencer à expérimenter Cocoa et la programmation pour Mac OSX.Je ne suis pas très préoccupé par la syntaxe/les constructions/les comportements Objective C à ce stade, mais je suis plus curieux de savoir une configuration efficace en termes d'éditeur et/ou d'IDE qui me permettra d'avancer rapidement.Existe-t-il un IDE, même vaguement similaire à Visual Studio (puisque c'est là que j'ai passé la plupart de mon temps au cours des 7 dernières années) en termes de concept de solution/projet ?Avez-vous d'autres outils, conseils, suggestions et/ou ressources pour vous lancer et expérimenter rapidement ?

J'aimerais éviter beaucoup de choses d'introduction et aborder des choses comme "Si vous souhaitez créer une application de bureau Mac, vous pouvez utiliser Acme IDE et configurez votre projet comme ceci.


J'avais peur que Xcode soit la réponse !:P J'ai essayé de jouer avec ça - littéralement, il suffit de le retirer du DVD et de plonger dedans sans savoir à quoi m'attendre (avant même de savoir que vous utilisiez Objective C comme langage).J'ai pensé, le gars sage que je suis, que je pourrais simplement tâtonner et faire fonctionner une application simple...faux.

@Andrew - Merci pour vos informations sur ces paramètres de configuration.D'après ma première impression Xcode, je pense que cela peut aider.

Était-ce utile?

La solution

Je vous suggère de choisir un petit produit amusant et de vous lancer.Si vous cherchez un livre, je vous suggère Programmation Cocoa pour Max OSX qui est une très bonne introduction à la fois à Objective-C et à Cocoa.

XCode est à peu près l'IDE de facto et gratuit avec OSX.Il devrait figurer sur votre DVD d'installation d'origine.C'est bien mais pas aussi bon que Visual Studio (désolé, ce n'est vraiment pas le cas).

En tant qu'utilisateur de longue date de VS, j'ai trouvé la configuration XCode par défaut un peu étrange et difficile à ajuster, en particulier la façon dont une nouvelle fenêtre flottante s'ouvrirait pour chaque fichier source.Quelques ajustements que j'ai trouvés particulièrement utiles ;

  • Paramètres/Général -> Tout-en-un (unifie la fenêtre de l'éditeur/débogueur)
  • Paramètres/Général -> Ouvrir les homologues dans le même éditeur (édition à fenêtre unique)
  • Paramètres/Débogage - "Contrôles du débogueur dans l'éditeur"
  • Paramètres/Débogage - "Console de débogage à effacement automatique"
  • Paramètres/liaison de touches - beaucoup de liaisons pour correspondre à VS (Ctrl+F5/Shift+F5, Shift+Home, Shift+End, etc.)

Je trouve que le débogueur a des problèmes ennuyeux tels que les points d'arrêt ne sont pas correctement mappés aux lignes et les exceptions ne sont pas immédiatement piégées par le débogueur.Rien de rédhibitoire mais un peu encombrant.

Je vous recommande d'utiliser la nouvelle syntaxe de propriété introduite pour Objective-C 2.0.Ils permettent de taper beaucoup moins dans de nombreux endroits.Cependant, ils sont limités à OSX 10.5 uniquement (oui, les fonctionnalités linguistiques sont liées aux versions du système d'exploitation, ce qui est un peu étrange).

Ne vous laissez pas non plus tromper en minimisant les différences entre C/C++ et Objective-C.Ils sont très liés mais SONT des langues différentes.Essayez de démarrer Objective-C sans penser à la façon dont vous feriez X, Y, Z en C/C++.Cela rendra les choses beaucoup plus faciles.

Autres conseils

Le premier document à lire et à digérer est le guide de gestion Mem, comprenez cela avant de continuer. Ce est également un excellent guide sur Objective-C.En fait, le site des développeurs d'Apple est très bon - mais vous voudriez probablement d'abord lire le livre de Hillegas.

En ce qui concerne Xcode vs Visual Studio, ils sont différents.Je ne dirais pas que l’un est meilleur que l’autre – les développeurs Windows viennent de VS et s’attendent à ce que ce soit pareil.C’est juste une attitude arrogante et s’il vous plaît, ne tombez pas dans cette foule.Ayant utilisé VS depuis l'époque AppStudio et Xcode depuis environ un an maintenant, les deux ont des forces et des faiblesses.Xcode est quelque chose qui, prêt à l'emploi (et surtout lorsqu'il vient de VS) ne semble pas si bon, mais une fois que vous commencez à l'utiliser et à le comprendre, il devient très puissant.

En outre, il existe beaucoup plus d'outils inclus avec Xcode et al, tels que Instruments et Shark que vous ne pouvez tout simplement pas obtenir avec VS, à moins que vous n'ouvriez votre portefeuille, et même dans ce cas, à mon humble avis, ils ne sont pas aussi bons.

De toute façon bonne chance.J'apprécie toujours C#, mais Objective-C/Cocoa rend la programmation à nouveau amusante une fois que vous y êtes initié...

Ne vous embêtez pas à déterrer votre DVD OSX car ils ont depuis publié une nouvelle version (3.1) de XCode.

Tout d'abord, vous voudrez rejoindre Connexion des développeurs Apple (c'est gratuit et vous en avez besoin pour accéder à leur version de MSDN) - il utilise votre identifiant Apple, donc si vous en avez déjà eu un pour la boutique iTunes, etc., c'est le même nom d'utilisateur/mot de passe

Une fois que vous avez fait cela, cliquez sur téléchargements, puis cliquez sur outils de développement pour afficher cette page, et c'est parti pour le DVD du développeur XCode 3.1

Une autre suggestion :Si vous avez des demandes de fonctionnalités ou d'améliorations, ou des bugs que vous avez rencontrés, assurez-vous de les déposer auprès d'Apple. Journaliste de bogues.C'est le meilleur moyen pour les développeurs de communiquer leurs besoins à Apple, car chaque problème est suivi via le système.

Vous pourriez essayer la démo de camarade de texte et voyez comment vous l'aimez pour travailler avec objective-c ou tout autre type de texte.Il importera les paramètres du projet Xcode afin que vous puissiez toujours compiler et exécuter à partir de Textmate plutôt que d'avoir à revenir à Xcode.

Xcode est la norme pour l'édition des fichiers sources, bien que vous puissiez utiliser un autre éditeur en conjonction avec l'outil xcodebuild en ligne de commande si vous le souhaitez vraiment.J'ai utilisé Vim pour toutes mes éditions Cocoa avant de finalement céder à Xcode.Ce n'est pas le meilleur IDE au monde, mais il fait le travail, et les récentes versions 3.x ont apporté de belles améliorations.

Le véritable outil puissant du développement de Cocoa est Interface Builder.IB ne génère pas de code source comme de nombreux outils d'interface utilisateur.Au lieu de cela, il manipule de véritables vues, contrôles et objets Cocoa qu'il regroupe ensuite dans une archive (nib) chargée par votre programme au moment de l'exécution.La plupart des programmes Cocoa utilisent au moins un fichier nib, et souvent plusieurs autres.

Quelle que soit la combinaison IDE/éditeur que vous choisissez pour pirater les fichiers sources, je vous recommande d'utiliser IB lorsque vous le pouvez.Même si vous n'êtes pas fan des autres outils de mise en page/génération d'interface utilisateur, je suggère de garder l'esprit ouvert, de donner une chance à « la méthode Cocoa » et d'apprendre au moins ce qu'Interface Builder peut faire pour votre processus de développement.

AFAIK, presque tous les développeurs OS X utilisent Xcode.

Cela, et Interface Builder pour créer les interfaces graphiques.

FWIW, essayez de vous procurer une copie du livre de Hillegas, car il s'agit d'un excellent didacticiel d'introduction, et les documents de référence fournis par Apple ne le sont vraiment pas.(Cependant, ce sont généralement de très bons documents de référence).

Le cacao est énorme.La partie la plus difficile de l’apprentissage de l’écriture d’applications sur Mac est d’apprendre Cocoa.D'ailleurs.Vous n'avez pas besoin de connaître ObjC (même si cela aide énormément).Vous pouvez écrire des applications Cocoa avec Python ou Ruby (directement dans l'EDI).

Je suis d'accord que VS est un meilleur IDE que Xcode.Mais si vous ajoutez Interface Builder et tous les autres outils, je n'en suis pas si sûr.Le développement Mac ne consiste pas à créer un IDE géant pour tout.Mais VS est "plus gentil" avec le développeur que Xcode.

Aussi, si vous souhaitez créer des applications multiplateformes, regardez RéelBasique.Un bon outil (basique cependant.Mais il fonctionne également sous Linux.) Vous seriez surpris du nombre d'applications Mac écrites avec RB.

J'ai entendu dire que les livres actuellement disponibles sont plutôt obsolètes.L'ensemble de l'écosystème semble évoluer très rapidement avec des changements spectaculaires apportés à chaque version du système d'exploitation.

Il a écrit un Didacticiel qui rassemble de la documentation Apple et d'autres didacticiels qui devraient vous aider à démarrer.Je pense qu'il couvre les bases de l'utilisation de l'EDI, de l'écriture d'applications simples, puis passe à des choses plus avancées.

Je m'intéresse au cacao depuis quelques années et j'ai récemment découvert "Xcode 3 libéré. " Fortement recommandé pour entrer dans Xcode - en particulier avec certains des grands changements apportés par 3.0/Leopard.

N'oubliez pas la bible de facto de Hillegass sur Cocoa, "Cocoa Programming for Mac OS X - Third Edition".

@peter Je ne sais pas pourquoi vous avez eu du mal à faire fonctionner une application simple, dès le départ sans rien faire, votre application bénéficie de nombreux avantages du framework Cocoa.Si vous voulez dire que vous essayiez de faire des choses comme connecter un bouton à une action et lui faire imprimer une alerte à l'écran ou quelque chose comme ça, alors oui, je pouvais voir où vous allez avec cela étant difficile.

Le problème pour moi qui a commencé avec Cocoa il y a de nombreuses années est qu'il était si différent de tout le reste qu'il avait une petite courbe d'apprentissage.Alors que de nombreux autres systèmes sont orientés vers la compilation, Cocoa est très dynamique et orienté vers l'exécution.Une fois que vous avez appris comment les actions sont liées aux cours, il ne reste plus qu'à apprendre comment fonctionnent les frameworks Cocoa.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top