Développer en Cocoa avec Python

20 04 2008 In: Cocoa, Objective-C

Même si la manière classique pour développer une application Cocoa est d'utiliser le langage Objective-C, il est aussi possible d'utiliser le langage Python grâce à PyObjC. De plus, la version 2.0 de PyObjC est livré en standard avec Mac OS X Léopard ce qui permet de s'en servir très facilement.

Vous pour retrouver sur le site de PyObjC, quelques exemples ainsi que de la documentation. On peut aussi retrouver un article sur l'Apple Developer Connection qui est malheureusement un peu ancien.

J'essairais à l'occasion de trouvez quelques ressources sur l'équivalent dans le monde Ruby : RubyCocoa

Utiliser les threads avec Cocoa

08 04 2008 In: Cocoa

Apple vient de mettre à jour le guide sur la programmation concurrente et plus particulièrement avec les threads : Introduction to Threading Programming Guide. C'est en anglais et une version PDF est disponible.

La différence entre Cocoa, Carbon et Objective-C

04 04 2008 In: C, Cocoa, Objective-C

Il n'est pas toujours facile lorsque l'on débute dans développement sous Mac OS X de bien faire la différence en Cocoa, Carbon et Objective-C. Voici donc la définition de chacun :

  • Objective-C est une langage de développement que l'on peut voir comme le langage C avec la gestion de la programmation orienté-objet. Il fonctionne par envoie de message entre les objets, et ressemble donc beaucoup plus à ce niveau là à Smalltalk qu'a C++. Pour une description détailler, la page wikipedia sur Objective-C vous permettra d'aller plus loin.
  • Cocoa est un framework de développement, c'est à dire un ensemble d'objet et de fonctions permettant de faciliter la vie du développeur. Il est écrit pour et en Objective-C.
  • Carbon est lui aussi un framework de développement mais il est conçu pour être utilisé avec C et C++ principalement. On peut le voir "en gros", comme un framework de transition entre le développement Mac OS 9 et le développement avec Cocoa.

Pour prendre un exemple d'actualité, Photoshop CS 3 et la future version 4 sont écrit avec Carbon, mais il est prévu pour la version CS 5 de le passer sous Cocoa.

Les ressources en anglais ne manquent pas sur le développement Mac, mais quant il s'agit de trouver des informations en français, cela devient plus difficile. Voici donc une liste de sites intéressants sur Cocoa, Objective-C, XCode, etc. en français :

Par contre, je n'ai trouvé aucun blog en français avec des articles récents (au moins un article en 2008). Si vous en connaissez ou que vous tenez vous-même un blog où ces sujets sont abordés, merci de me laisser un commentaire. Je serais content de pouvoir mettre en place un Planet Cocoa Fr.

Il existe aussi beaucoup de ressources assez anciennes et plus forcement très à jour. Voici quand même les principales :

  • Cocoa X, surtout des articles mais qui datent de 2004 ou avant
  • Project Omega, des articles, des astuces mais visiblement en sommeil depuis 2006.
  • MacTouch, quelques articles de 2004/2005.

Le site CocoaLab propose un livre gratuit au format PDF sur le développement Cocoa et Objective-C sous XCode. De plus le livre à été mis à jour pour XCode 3 et Mac OS X 10.5 (Leopard). Le livre s'appelle Become An Xcoder et a été écrit par Bert Altenburg, Alex Clarke et Philippe Mougin.

Cocoa / Objective-C et les livres

12 02 2008 In: Cocoa, Livres, Objective-C

La meilleure manière d'apprendre un langage ou une technologie est pour moi de lire un livre. Cela ne fonctionne pas forcement avec tout le monde, mais en ce qui me concerne, c'est l'idéal. J'ai donc un peu cherché les différents livres qui existent dans le monde Objective-C / Cocoa et voici mes découvertes :

J'ai en ce qui me concerne décidé de partir sur Cocoa Programming for Mac OS Xstyle=border:none que suis en train de lire et que je trouve vraiment bien. Facile à lire, facile à mettre en oeuvre, avec une répartition entre la théorie et la pratique vraiment idéale. Aaron Hillegass est vraiment un très bon auteur.

Je ferais une description plus détaillé et plus complète du livre une fois que je l'ai fini (et que j'aurais mon Mac Book Pro pour tester ce que j'aurais appris).

Pour finir, il existe aussi des livres pour les personnes ayant un niveau avancé, mais je ne m'y suis pas intéressée pour l'instant et je reviendrais dessus plus tard quand je serais une expert du développement Mac OS X ;)