Objective-C
Objective-C est un langage de programmation généraliste de haut niveau. Créé en 1984, il était le langage principal du système d’exploitation NeXTSTEP. Après le rachat de NeXT par Apple, il est devenu le langage principal pour développer des applications pour macOS et iOS. Apple a créé le langage de programmation Swift pour le remplacer en 2014, mais il est encore largement utilisé par les développeurs sur ces plateformes.
Objective-C est une extension du langage de programmation C, à laquelle il ajoute des fonctionnalités de programmation orientée objet. Il utilise une syntaxe presque identique à celle du C pour toutes les opérations qui ne sont pas orientées objet, comme l’affectation de variables et la déclaration de fonctions. Toutefois, ses fonctionnalités orientées objet empruntent leur syntaxe à un autre langage de programmation appelé Smalltalk. Cette syntaxe permet aux objets de communiquer entre eux en s’envoyant des messages. Au lieu d’appeler directement une méthode prédéterminée, comme dans d’autres langages, l’instance de l’objet qui reçoit un message détermine dynamiquement la méthode à utiliser au moment de l’exécution (runtime).
Par exemple, un message envoyé d’un objet à un autre en Objective‑C se présente ainsi :
[myObject sayHello]
Cet extrait de code envoie un message à l’objet nommé myObject, en lui demandant d’exécuter une méthode appelée sayHello. Si la classe à laquelle appartient myObject contient une méthode nommée sayHello, celle-ci est exécutée. Sinon, l’application vérifie la superclasse qui contient la classe de myObject, en remontant la hiérarchie jusqu’à trouver la méthode. D’autres langages de programmation, comme C++ ou Java, associent les méthodes aux objets au moment de la compilation, ce qui rend le programme plus rapide puisqu’il sait déjà quelle méthode exécuter, mais au prix d’une moindre flexibilité.
Objective‑C n’inclut pas de bibliothèque standard comme le fait C++. À la place, toutes les applications Objective-C utilisent l’un de plusieurs frameworks logiciels contenant des fonctions et du code par défaut. Par exemple, les applications développées pour macOS utilisent le framework Cocoa, inclus dans le SDK Xcode.
Testez vos connaissances