Introduction▲
On présente souvent Objective-C comme un dérivé du C. C'est syntaxiquement exact, mais Objective-C tient beaucoup de son grand-père Smalltalk, tout comme Java.
Java est aujourd'hui bien plus populaire que le C et attire certainement une audience un peu plus jeune.
Bien que je possède une longue expérience du C et du C + +, il me semble plus approprié d'apprendre Objective-C en prenant Java comme point de référence. Tous deux sont de vrais langages objet et tous deux offrent des comportements bien plus dynamiques que C + +.
Autre différence primordiale entre C/C + + et Java/Objective-C : les bibliothèques de développement.
Alors que le C n'est généralement utilisé qu'avec la bibliothèque standard C. C + + fait de même avec la STL (1). Mais aucune de ces deux bibliothèques ne permet de développer une application complète.
Les bibliothèques de développement ne sont pas aussi fortement liées au langage que dans Java et Objective-C. C'est tellement vrai pour ce dernier qu'il est souvent confondu avec Cocoa, la bibliothèque de composants du Mac héritée de NeXTStep/OpenStep.
Java et Objective-C partagent donc nombre de caractéristiques.
Il me semble approprié de présenter le couple Objective-C et Cocoa en mettant en avant les similitudes avec Java et en soulignant si besoin leurs différences.