Carbon, Classic ou Cocoa ?
L'arrivée du PowerPC avait déjà apporté les "68k",
"ppc" et "fat", qui désignaient respectivement les logiciels
compatibles avec les anciennes machines, les nouveaux Power
Macintosh ou les deux. Cette classification des applications,
maintenant presque oubliée, fait place à une autre différenciation
bien spécifique à Mac OS X.
Trois approches pour deux systèmes
Chaque fois qu'il se
passe quelque chose sous Mac OS, le système sollicite la ToolBox,
sorte de bibliothèque d'éléments logiciels en tous genres
(graphiques, système, réseau, etc.) où il puise les éléments
dont il a besoin. Alourdie au fil des ans, elle a été simplifiée au cours
du développement de Mac OS X pour devenir la bibliothèque Carbon. Dans
notre bon vieux Mac OS 9, on la retrouve sous le nom de CarbonLib,
une Extension mise à jour régulièrement.
Commune à Mac OS 8, 9 et X, la technologie Carbon permet la
création d'applications mixtes, capables de tourner sous n'importe
lequel de ces systèmes. Les deux premiers doivent simplement être
dotés de la fameuse Extension. Les plus répandues parmi les autres
applications sont dites de type "Classic", et tournent sous l'ancien
Mac OS ou dans l'environnement Classic de Mac OS X. Enfin, les
applications natives pour Mac OS X, appelées "Cocoa", fonctionnent
exclusivement sur le nouveau système.
Les technologies Carbon et Cocoa ont beau être concurrentes, il
est peu probable que l'une supplante l'autre. La technologie Cocoa,
liée aux outils de développement spécifiques au système entièrement
orienté objet qu'est Mac OS X, permet de créer ou de mettre à jour
très rapidement des applications complexes et des sites Web
dynamiques. Sur la fin de la période NeXT, cet environnement de
développement était particulièrement brillant pour le développement
d'applications client-serveur de grande envergure. En revanche, les
applications Cocoa s'avèrent souvent plus lentes que leurs
équivalentes en Carbon, plus optimisées, mais plus gourmandes en
temps de développement et de maintenance.
Bien choisir son environnement
C'est donc en termes
d'organisation du développement qu'il va falloir penser. Pour les
quelques sociétés qui avaient commencé une carrière discrète avec
NEXTSTEP, ancêtre de Mac OS X, la question ne se pose pas : Cocoa
apporte des gains de productivité énormes, tant en matière de
développement que de maintenance logicielle. Et plus l'interface
"pèse" dans le développement, plus ces gains sont importants. Le
portage sous OS X d'applications pour NEXTSTEP ou OPENSTEP, sans
être trivial, a permis à des sociétés comme OmniGroup ou Stone
Design de ressortir rapidement leur catalogue d'applications.
à l'inverse, d'autres sociétés n'ont ni les délais, ni les
budgets nécessaires pour absorber l'inévitable temps mort lié au
changement de technologie. Celles-là continueront sans doute un
moment à developper sous Classic. Avant d'enterrer ce dernier
environnement, il faut se rappeler qu'il reste le plus utilisé sur
la planète pour la prépresse et les graphiques. Quant à sa
stabilité, elle s'avère dans bien des cas moins discutables que
celle de notre ancien système natif.
Dans un premier temps, c'est donc le compromis Carbon qui sera le
plus adopté, et ce pour deux raisons. La base installée, tout
d'abord. Quelles que soient les raisons (machine inadaptée, crainte
de la nouveauté, difficulté d'adaptation, applications spécialisées,
simplicité, etc.), beaucoup de gens travailleront encore longtemps
sous OS 9. Pour ceux-là, Carbon est la porte d'entrée dans le monde
OS X. Ils peuvent utiliser sous leur bon vieux Mac OS des
applications déjà adaptées au système qu'ils finiront forcément par
adopter. Autre raison : le patrimoine des développeurs. La
différence d'organisation du processus de développement est telle
entre les applications Carbon (développement classique) et Cocoa
(programmation orientée objet, OOP en anglais) qu'il est souvent
plus rapide de reprendre une application à zéro ou presque que de la
porter d'une technologie à l'autre.
Ceux dont le choix compte
Pour les grands noms de Mac
OS que nous attendons tous, c'est donc Carbon qui sera choisi.
Simplifiées, nettoyées, renouvelées, les applications bénéficieront
à la fois des avantages d'OS X et de l'immense base installée OS 9,
avec une vitesse optimisée. De quoi assurer la transition vers le
tout-OS-X. Seule ombre à ce tableau idyllique : cette conversion a
un coût, très élevé dans le cas de grosses applications. Témoin
Office X, très attendu, mais qui réclame un budget important. On
peut espérer qu'Adobe, intéressé depuis longtemps au développement
objet (Illustrator a été en son temps une des applications phares
sur NeXT), aura absorbé avec plus d'efficacité les coûts de portage.
OS X semble déjà largement adopté ou au moins accepté,
les éditeurs semblent décidés à franchir le pas,
les développeurs indépendants (shareware et logiciel libre) poussent à
la roue, mais le succès final du portefeuille d'applications pour OS X se trouve en
grande partie au fond de nos propres poches.