Swift 2.2 est disponible
avec le support des distributions Linux et la possibilité d’utiliser la plupart des mots-clés comme étiquettes d’arguments
Le langage de programmation Swift d’Apple vient de passer à la version 2.2. Depuis sa mise sous licence open source en décembre dernier, c’est la première version du langage marquée par des contributions de personnes extérieures à Apple.
Pour cette nouvelle itération, il faut noter comme élément principal la prise en charge des distributions Linux et notamment celles d’Ubuntu 14.04 LTS (Trusty Tahr) et Ubuntu 15.10 (Wily Werewolf). Toutefois, Ted Kremenek, le gestionnaire principal des langages chez Apple, précise que « le port Linux est encore relativement nouveau et dans cette version, Swift 2.2 n’inclut pas les bibliothèques Swift Core (qui apparaitront dans Swift 3) ».
En marge de cette prise en charge des distributions Linux, il faut noter l’ajout de la méthode removeFirst() aux types Arrays et slice. Pour supprimer la dernière entité dans un tableau ou une liste, Swift dispose de la méthode removeLast(). Toutefois, cette méthode n’avait pas son correspondant pour supprimer le premier élément. Dans cette version, il est maintenant possible de le faire avec la méthode removeFirst().
En dehors de cet ajout, nous avons maintenant la possibilité de comparer les tuples avec beaucoup plus de simplicité. Nous rappelons que les tuples sont une liste de valeurs séparées par une virgule. Dans les versions antérieures, effectuer de telles comparaisons pouvait se faire, mais exigeait d’écrire un code verbeux et peu intuitif. Avec la nouvelle méthode introduite, la longueur du code est réduite et le code de comparaison plus lisible.
Toujours au niveau des nouvelles implémentations, il est maintenant possible d’utiliser la plupart des mots-clés comme étiquettes (labels) d’arguments. Cela a été intégré, car « quelquefois, le label le plus naturel pour un argument coïncide avec un mot-clé de la langue tel que in, repeat ou defer. De tels mots-clés devraient être autorisés en tant que label d’arguments, ce qui permet une meilleure expression de ces interfaces » a expliqué Doug Gregor sur la plateforme GitHub. Toutefois, il faut préciser que certains mots-clés comme var, let et inout peuvent ne pas être concernés par ces améliorations.
À côté de ces améliorations, plusieurs éléments ont été dépréciés. L’on a par exemple les opérateurs d’incrémentation ++ ou de décrémentation --. Si vous utilisez ces annotations dans cette nouvelle version, vous aurez un message d’avertissement lors de l’exécution du code. Par ailleurs, il faut savoir que dans la version 3 du langage, ces opérateurs seront supprimés.
En plus de ces éléments d’incrémentation et de décrémentation, l’on a les boucles for de style C qui ont également été rendues caduques. Cela signifie que si vous utilisez le code ci-dessous, vous aurez un message d’avertissement vous signifiant que les boucles for de style C ont été rendues obsolètes :
À défaut, il est possible d’utiliser la solution ci-dessous ou d’autres encore :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 for var i = 1; i <= 10; i += 1 { print("\(i) correctifs à intégrer") }
En outre, l’usage du paramètre var permettant pour définir des variables a été déconseillé dans cette version de Swift. Il faut souligner que var offre une très fine différence avec le mot-clé inout. La différence entre ces deux éléments réside dans le fait qu’en utilisant var, vous pouvez modifier un paramètre dans une fonction, alors qu’en utilisant inout les changements effectués sur un paramètre d’une fonction demeurent même après la fin de la fonction. À partir de la version 3.0 de Swift, le mot-clé var sera supprimé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 for i in 1...10 { print("\(i) correctifs à intégrer ") }
En plus des éléments déjà cités, il faut également ajouter à la liste des objets tombés en désuétude l’usage des chaines de caractères pour les sélecteurs.
En dehors de ces points, il faut savoir que Swift 2.2 a été intégrée à l’environnement de développement Xcode 7.3 qui vient de sortir. Cela sous-entend que les développeurs peuvent combiner ces deux outils pour publier des applications sur l’App Store.
Source : Blog Swift
Et vous ?
Que pensez-vous de cette nouvelle version de Swift ? Est-elle à la hauteur de vos attentes ?
Au regard des nouvelles fonctionnalités introduites, pensez-vous que l’open source ait été un gain ?
Voir aussi
Forum Swift
Partager