Avec Swift 4.2, Apple se prépare à la stabilisation de l'ABI Swift dans la version 5.0 du langage
Qui est prévue plus tard dans l'année

Le , par Michael Guilloux

155PARTAGES

Il y a déjà six mois qu'Apple a annoncé la disponibilité de Swift 4.0, la deuxième version majeure de son langage depuis son passage en open source en décembre 2015. Cette version du langage de programmation pour les applications iOS et macOS offre une plus grande robustesse et stabilité, et fournit une compatibilité de code source avec Swift 3. Swift 4.0 a également amélioré la bibliothèque standard et ajouté des fonctionnalités telles que l'archivage et la sérialisation.

Les mises à jour du langage comprenaient une implémentation de String plus rapide et plus facile à utiliser avec un support pour créer, utiliser et gérer des sous-chaines de caractères. Swift 4.0 a par exemple introduit les chaines de caractères littérales multilignes dans le code source Swift ; une fonctionnalité de programmation commune qui, jusque-là, manquait encore au langage d'Apple. On notait par ailleurs l'ajout de la propriété unicodeScalars au type Character et des améliorations pour la création, l'utilisation et la gestion de types Collection, entre autres propositions d’amélioration implémentées dans Swift 4.0. À cela s'ajoutaient aussi de nouvelles fonctionnalités de flux de travail et une API plus complète pour Swift Package Manager.

Rappelons que Swift n'a pas encore de support officiel pour Windows et que seuls Linux et macOS sont pris en charge par Apple. Et pour le développement sur les plateformes Apple, Swift est livré dans Xcode. Bien évidemment, macOS bénéficie également d'un meilleur traitement que Linux en ce qui concerne le support par Swift. Depuis plus d'un mois, Swift 4.1 est disponible en préversion, dans Xcode 9.3, dont la première bêta a été publiée fin janvier. Alors que Swift 4.1 se rapproche de sa sortie officielle, Apple avance également sur le développement de Swift 4.2, la deuxième mise à jour de Swift 4.


Swift 4.2 est axée sur la stabilisation de l'ABI (application binary interface) du langage. Pour information, une ABI ou interface binaire-programme décrit une interface de bas niveau entre les applications et le système d'exploitation, entre une application et une bibliothèque ou entre différentes parties d’une application. Swift 4.2 sera une étape intermédiaire pour atteindre la stabilité de l'ABI dans la version 5.0 du langage qui est prévue pour la fin de l'année. La stabilité ABI permettra une compatibilité binaire entre les applications et les bibliothèques compilées avec différentes versions de Swift.

Swift 4.2 embarquera donc de nombreux changements ABI sous le capot dans le cadre de l'effort de stabilisation de l'ABI Swift ; ce qui fait d'ailleurs que Swift 4.2 n'est pas compatible niveau binaire avec les versions précédentes du langage. Beaucoup de ces changements sont liés à la performance, et d'après l'équipe Swift, il est nécessaire de déployer les changements ABI de manière incrémentielle afin de donner suffisamment de temps aux utilisateurs pour les évaluer avant qu'ils soient inclus dans l'ABI finale. Swift 4.2 viendra également avec de nombreuses corrections de bogues, ainsi que des améliorations ciblées sur les performances de compilation.

Si Swift 4.2 n'est pas compatible niveau binaire avec les versions précédentes du langage, la compatibilité de code source devrait quant à elle être assurée. Comme avec Swift 4.1, la grande majorité des sources construites avec le compilateur Swift 4.0 (y compris celles qui utilisent le mode de compatibilité Swift 3) devraient compiler avec le compilateur de Swift 4.2. Il y aura bien sûr des cas exceptionnels où cela ne pourra pas être une garantie absolue, mais il est prévu que la plupart des projets continuent à compiler sans changement de source. À partir du 20 avril, la branche master de Swift 4.2 n'acceptera que quelques corrections critiques sélectionnées. Sa disponibilité pourrait donc être envisagée après cette date.

Par ailleurs, il est important de souligner que version après version, Swift gagne du terrain parmi les développeurs iOS et macOS et semble désormais aussi, voire, plus populaire qu'Objective-C au sens de RedMonk. Publiant son classement des langages populaires au premier trimestre 2018, le cabinet d'analyse RedMonk a en effet fait remarquer, pour la première fois, Swift a pu rattraper Objective-C dans son classement. « Même si Swift a évolué à un rythme incroyable, l'historique d'Objective-C l'a maintenu devant son remplaçant. Finalement, cependant, les trajectoires ont dû se croiser, ce trimestre est le premier où cela s'est produit », a expliqué RedMonk la semaine dernière. « Dans un monde où il est incroyablement difficile de se classer dans le Top 25 des langages de programmation, sans parler du Top 10, Swift a géré la tâche en moins de quatre ans. Il reste un phénomène de croissance, même si sa capacité à pénétrer le serveur n'a pas répondu aux attentes, » a-t-il ajouté.

Source : Blog Swift

Et vous ?

Avez-vous déjà utilisé le langage d’Apple ? Quelles versions et quelles ont été vos impressions ?
Qu'attendez-vous d'Apple et son langage Swift ?

Une erreur dans cette actualité ? Signalez-le nous !

Contacter le responsable de la rubrique Accueil

Partenaire : Hébergement Web