ANNÉES 1980

Objective-C

Brad Cox et Tom Love n’imaginaient sans doute pas que leur décision d’hybrider le langage C avec les concepts de Smalltalk donnerait naissance à l’une des technologies les plus durables de l’informatique moderne. Objective-C, créé en 1983, allait traverser les décennies en s’adaptant en permanence.

Le point de départ était pourtant simple. Dennis Ritchie et Ken Thompson avaient conçu le C dans les Bell Labs à la fin des années 1960 pour développer UNIX. Ce langage procédural offrait un compromis intéressant entre performance et lisibilité, mais ses limites se révélaient dans la construction de systèmes complexes. De l’autre côté, au Xerox PARC, Alan Kay et Dan Ingalls révolutionnaient l’approche de la programmation avec Smalltalk et ses objets qui encapsulaient données et comportements.

Cox et Love ont imaginé marier ces deux mondes. Plutôt que de créer un nouveau langage de toutes pièces, ils ont étendu le C existant en y greffant la programmation orientée objet de Smalltalk. Cette approche pragmatique préservait l’investissement en code C tout en ouvrant de nouvelles possibilités de conception logicielle. La Free Software Foundation a reconnu l’intérêt de cette innovation et l’a intégrée dans sa boîte à outils.

Objective-C devint un langage de niche apprécié des informaticiens curieux. Quand Steve Jobs quitte Apple en 1985 pour lancer NeXT, il mise sur Objective-C pour développer NeXTSTEP. Ce choix technique transforme le destin du langage. NeXT pousse la collaboration jusqu’à travailler avec Sun Microsystems sur OpenStep, une version standardisée de leur système. La Free Software Foundation emboîte le pas avec GNUstep.

Apple, enlisé dans les années 1990, cherche désespérément à moderniser Mac OS. Après plusieurs tentatives ratées, deux options s’offrent à l’entreprise : acquérir Be, Inc. de Jean-Louis Gassée ou racheter NeXT. Le choix de NeXT en 1996 scelle le retour de Jobs et fait d’Objective-C le cœur technique de Mac OS X. Un simple langage expérimental se mue soudain en socle du futur d’Apple.

L’iPhone arrive en 2007. iOS, dérivé de Mac OS X, propulse Objective-C sur des millions d’appareils mobiles. L’iPad trois ans plus tard amplifie encore le phénomène. Les développeurs du monde entier découvrent ce langage hybride pour créer des applications touchant des centaines de millions d’utilisateurs. Cette explosion inattendue révèle la robustesse de l’architecture imaginée par Cox et Love vingt-cinq ans plus tôt.

Face à cette adoption massive, Apple introduit des améliorations substantielles, notamment le comptage automatique des références (ARC) qui simplifie drastiquement la gestion mémoire. Finies les fuites mémoire et les plantages liés aux pointeurs perdus : ARC automatise ces tâches fastidieuses et sources d’erreurs.

La syntaxe d’Objective-C porte les traces de cette histoire mouvementée. Le C traditionnel côtoie les crochets de Smalltalk dans une cohabitation qui surprend au premier regard mais révèle sa cohérence à l’usage. Le système de messages, hérité de Smalltalk, remplace l’appel direct de méthodes par un mécanisme plus flexible où les objets se parlent. Cette approche autorise une liaison dynamique des méthodes et facilite l’extension des systèmes.

Les frameworks accompagnent cette richesse syntaxique. Foundation fournit les briques de base : manipulation de données, collections, opérations sur fichiers. Ces bibliothèques forment un ensemble cohérent qui accélère le développement et standardise les pratiques. Le type id illustre parfaitement la philosophie du langage : il autorise la manipulation générique d’objets tout en préservant la sécurité du typage quand nécessaire.

L’écosystème se développe au-delà des frontières d’Apple. GNUstep maintient la portabilité cross-platform d’Objective-C, démontrant que les concepts dépassent l’implémentation propriétaire. Xcode enrichit l’expérience développeur avec Interface Builder et ses outils visuels. La communauté crée bibliothèques, frameworks et bonnes pratiques qui nourrissent un cercle vertueux.

Swift arrive en 2014 comme le nouveau poulain d’Apple. Cette annonce ne sonne pas le glas d’Objective-C mais témoigne de sa maturité. Apple organise une coexistence progressive plutôt qu’une rupture brutale, reconnaissant implicitement la valeur de son langage historique. Les millions de lignes de code Objective-C continueront de fonctionner pendant des années.

L’Objective-C a démontré qu’étendre un langage existant pouvait réussir là où créer ex nihilo échoue souvent. Son modèle de messages a inspiré de nombreux frameworks orientés objet. Sa capacité à mélanger paradigmes procédural et objet a ouvert des pistes explorées par d’autres langages.

Quarante ans après sa naissance, Objective-C reste une leçon d’ingénierie pragmatique. Cox et Love ont su identifier les forces de deux mondes différents et les fusionner intelligemment. Leur création a survécu aux modes, aux rachats, aux appareils mobiles et continue d’alimenter des applications utilisées quotidiennement par des centaines de millions de personnes. Cette longévité témoigne d’une conception solide qui a su s’adapter sans perdre son identité.