Bien sûr, si tout ce que vous avez vu dans votre vie est l'Objectif C, alors sa syntaxe ressemble à la seule possible. Nous pourrions vous appeler une "vierge de la programmation".
Mais comme beaucoup de code est écrit en C, C ++, Java, JavaScript, Pascal et d'autres langages, vous verrez qu'ObjectiveC est différent de tous, mais pas dans le bon sens. Avaient-ils une raison à cela? Voyons d'autres langues populaires:
C ++ a ajouté de nombreux extras à C, mais il n'a changé la syntaxe d'origine que dans la mesure nécessaire.
C # a ajouté beaucoup d'extras par rapport au C ++, mais il n'a changé que des choses qui étaient laides en C ++ (comme supprimer le "::" de l'interface).
Java a changé beaucoup de choses, mais il a conservé la syntaxe familière sauf dans les parties où le changement était nécessaire.
JavaScript est un langage complètement dynamique qui peut faire beaucoup de choses qu'ObjectiveC ne peut pas faire. Pourtant, ses créateurs n'ont pas inventé une nouvelle façon d'appeler des méthodes et de passer des paramètres juste pour être différents du reste du monde.
Visual Basic peut passer des paramètres dans le désordre, tout comme ObjectiveC. Vous pouvez nommer les paramètres, mais vous pouvez également les transmettre de la manière habituelle. Quoi que vous utilisiez, c'est une manière normale délimitée par des virgules que tout le monde comprend. La virgule est le délimiteur habituel, non seulement dans les langages de programmation, mais dans les livres, les journaux et la langue écrite en général.
Object Pascal a une syntaxe différente de C, mais sa syntaxe est en fait PLUS FACILE à lire pour le programmeur (peut-être pas pour l'ordinateur, mais qui se soucie de ce que pense l'ordinateur). Alors peut-être qu'ils ont digressé, mais au moins leur résultat est meilleur.
Python a une syntaxe différente, qui est encore plus facile à lire (pour les humains) que Pascal. Donc, quand ils l'ont changé, le rendant différent, au moins ils l'ont amélioré pour nous, les programmeurs.
Et puis nous avons ObjectiveC. Ajout de quelques améliorations à C, mais inventant sa propre syntaxe d'interface, appel de méthode, passage de paramètres et autres. Je me demande pourquoi n'ont-ils pas échangé + et - de sorte que plus soustrait deux nombres. Ça aurait été encore plus cool.
Steve Jobs a foiré en soutenant ObjectiveC. Bien sûr, il ne peut pas supporter C #, ce qui est mieux, mais appartient à son pire concurrent. C'est donc une décision politique, pas une décision pratique. La technologie souffre toujours lorsque les décisions technologiques sont prises pour des raisons politiques. Il doit diriger l'entreprise, ce qu'il fait bien, et laisser les questions de programmation à de vrais experts.
Je suis sûr qu'il y aurait encore plus d'applications pour iPhone s'il décidait d'écrire iOS et de prendre en charge les bibliothèques dans un autre langage que ObjectiveC. Pour tout le monde, sauf les fans inconditionnels, les programmeurs vierges et Steve Jobs, ObjectiveC semble ridicule, laid et répugnant.