Swift, le langage de développement d’Apple, fêtera son quatrième anniversaire lors de la WWDC 2018 et c’est à la même époque qu’une cinquième mise à jour majeure sera présentée. Des dizaines de milliers de développeurs l’utilisent au quotidien pour écrire leurs apps, et pourtant il est longtemps resté très discret au sein d’Apple.
Dans iOS 10, Swift n’était utilisé que par quatre projets différents, et seulement deux apps : la calculatrice et l’app Musique. Du côté des Mac, Sierra exploitait le nouveau langage pour sa console et pour quelques briques centrales, comme le dock et le centre de notifications. Cette année, Apple a accéléré la cadence, comme le montre ce récapitulatif compilé par un développeur français.
Plusieurs apps sont passées à Swift dans iOS 11 : c’est le cas du tout nouvel App Store, de l’app Fichiers, de News et de Podcast. Même chose du côté des frameworks en Swift, qui passent de deux dans iOS 10 à 8 dans la nouvelle version du système mobile.
macOS High Sierra adopte aussi plus largement Swift, mais pas tant pour les apps visibles que pour les bases du système. Par exemple, la Touch Bar des nouveaux MacBook Pro est désormais entièrement gérée par des apps et des frameworks développés en utilisant le nouveau langage. Pareil pour le module qui sert à faire des captures d’écran ou encore le processus qui gère le fuseau horaire. Par ailleurs, Xcode 9, l’outil de développement utilisé en interne et fourni aux développeurs, exploite lui aussi plusieurs briques en Swift.
Même si les versions actuelles des systèmes d’exploitation Apple exploitent bien plus Swift que les versions précédentes, la majorité des apps et des frameworks sous-jacents reste exclusivement codée en Objective-C. Cela devrait changer au fil des mises à jour et l’arrivée de Swift 5 cet été devrait donner un coup d’accélérateur au processus.
Si tout va bien, Swift 5 sera la première version à apporter la stabilité ABI, une étape clé pour assurer la pérennité d’une app. Nous avions consacré un article technique à ce sujet, pour en savoir plus, mais disons que cela assure qu’une app développée pour Swift 5 fonctionnera toujours quand on en sera à Swift 6, sans avoir à modifier le code ou à la compiler à nouveau. On imagine qu’à ce stade, Apple poussera ses équipes à utiliser encore davantage Swift et peut-être faire du langage la nouvelle norme plutôt que l’exception.