Maintenant que Swift 4 est finalisé et dans les mains de tous les développeurs, Apple a lancé les travaux pour Swift 5. Cette mise à jour majeure de son langage de développement sortira l’année prochaine, avec iOS 12 et macOS 10.14, mais puisque c’est un projet open-source, le contenu de cette version est connu. Toutes les nouveautés attendues pour Swift 5 sont disponibles à cette adresse.
La grosse nouveauté de Swift 5 sera la stabilité ABI (Application Binary Interface) qui permettra aux développeurs de proposer des apps un petit peu plus légères et surtout plus pérennes. Pour faire simple, ces ABI font le lien entre les applications et le système d’exploitation, entre le programme codé par le développeur et le langage machine exécuté par le processeur. C’est un composant essentiel et tant qu’il n’est pas stabilisé, chaque app devait intégrer ses propres ABI en interne.
Avec Swift 5, il ne sera plus nécessaire d’intégrer ces fichiers directement dans les apps, puisqu’ils seront présents dans le système d’exploitation. Ce sera autant de gagné sur le poids des apps, mais surtout cela veut dire qu’une app continuera de fonctionner au fil des mises à jour du système d’exploitation et du langage de programmation. Et si Apple améliore les ABI dans une future mise à jour d’iOS ou de macOS, toutes les apps en profiteront automatiquement.
Apple avait au départ prévu que Swift 4 offrirait la stabilité ABI (lire : La stabilité, principal enjeu de Swift 4), mais cette fonction a pris du retard et elle avait été finalement repoussée. La quatrième version du langage apporte toutefois un élément essentiel : la stabilité du code source. À partir de maintenant, les développeurs ne devraient plus avoir à mettre à jour leurs apps, avec des changements parfois importants, à chaque nouvelle version de Swift.
Pour le moment, les ingénieurs en charge de Swift ont prévu de prendre en charge totalement le code écrit en Swift 4, mais peut-être que le compilateur sera aussi compatible avec Swift 3, cela reste encore à déterminer. D’autres améliorations sont par ailleurs prévues, notamment sur la gestion du texte. N’importe qui peut proposer des idées et elles seront peut-être prises en compte dans le développement de cette mise à jour.