Développer sur iPhone est quelque chose qui m'intéresse depuis un bon moment, mais deux technos sont à appréhender avant de pouvoir débuter : Objective-C et Cocoa.
J'ai débuté l'apprentissage d'Objective-C sur le site d'Apple et pour le moment je suis très loin de voir un quelconque intérêt à ce langage (si ce n'est qu'il est indispensable pour développer sur Mac ou iPhone).
La syntaxe censée être une extension du C n'apporte pas grand chose de bien, les appels de méthodes sont fait avec l'opérateur [] comme en TCL (beurk). Il y a également la possibilité de passer par l'opérateur "." mais je n'aime pas bien l'idée d'avoir 2 façons d'invoquer une méthode.
Autre point que j'ai dû mal à comprendre, c'est le seul langage à ma connaissance qui n'appelle pas une méthode "une méthode". Objective-C utilise des "messages" ou "selecteurs" et oui c'est tellement mieux ! La justification est simple : le pauvre compilateur ne sait pas à la compilation quelle méthode utiliser à cause du polymorphisme ! Donc il "envoi" un message à l'objet qui invoque la bonne méthode ! Hum ... comment dire, en C++ le polymorphisme existe aussi et ça n'a jamais gêner personne d'appeler ça des méthodes. Ah oui et comme il est question de message on parle de receveur au lieu d'objet.
L'appel de méthode ... enfin je veux dire l'envoi de message est lui aussi assez étrange, j'ai l'impression qu'on peut passer tout et n'importe quoi, lorsque l'objet est de type générique, je suis curieux de savoir ce qui peut se passer à l'exécution.
Il est clair que je connais beaucoup trop peu le langage pour pouvoir le juger, mais pour le moment à part faire un pénible mélange de C, de TCL et d'objet, l'apprentissage d'Objective-C ne me parait rien apporter de bon ... suite au prochain numéro.
Think Different !
RépondreSupprimerC'était un de leur slogan, ceci explique peut-être cela.
Think Pepsi ?
RépondreSupprimerDommage je préfère le coca :-)