Ouvrir le menu principal

MacGeneration

Recherche

Swift 5.6 pointe le bout de son bec

Florent Morin

lundi 13 septembre 2021 à 21:30 • 39

Logiciels

En 2018, les développeurs s’attendaient à une version 5.0 du langage Swift mais ont finalement eu droit à une version 4.2 intermédiaire. Cette année, c’est la version 5.5 qui se verra dépourvue de quelques fonctionnalités que nous retrouverons dans la version 5.6.

Le site Swift Evolution permet de suivre les améliorations du langage

Parmi les fonctionnalités qui auront assurément leur place dans Swift 5.6, les Type placeholders qui permettent d’utiliser _ plutôt qu’un type de donnée quand ce n’est pas indispensable. On n’utilise pas ça tous les jours, mais ça peut être pratique dans certains cas. La possibilité de tester la non-disponibilité d’un symbole donné (ex. version d'iOS) a curieusement disparu de Swift 5.5 également : l’idée était simplement d’ajouter le terme #unavailable en plus du #available existant. Le reste concerne Swift Package Manager avec des améliorations concernant la gestion des binaires intégrés aux paquets, une fonctionnalité qui fait elle-même partie de l’amélioration globale des outils de build.

Concernant les fonctionnalités qui devraient arriver ensuite, dans Swift 5.6 ou une autre version, il y a la rétro-compatibilité de Swift Concurrency que nous avions évoqué début septembre. Nous trouvons aussi en mode aperçu une amélioration de la gestion des positions d’éléments (RangeSet) dans une collection : voyez les détails dans la proposition pour plus d’informations. On trouve aussi l’amélioration de @NSCopying, le fameux count(where:), des fonctions mathématiques génériques, la distinction entre #file et #filePath, l’amélioration des tuples qui deviennent compatibles avec Equatable, Comparable et Hashable. Toujours dans ce qui est bien engagé, on retrouve la fonction isPower(of:) adaptée à BinaryInteger, des améliorations de Swift Package Manager telles qu’un registre de paquets sous forme de service web (via CDN), la possibilité d’éditer un paquet en ligne de commande et la possibilité de publier un paquet via service web. Dans le domaine de Swift Concurrency, Sendable semble également ajourné. Et l’amélioration des protocoles sera également réservée à la version 5.6.

Enfin, quelques fonctionnalités pourraient arriver dans le cycle de développement. Le protocole CodingKeyRepresentable a l’air plutôt chouette pour améliorer le décodage JSON ou autre via Codable. La gestion bas niveau des tampons mémoire pourrait aussi être améliorée en s’inspirant de ce qu’on peut retrouver en C et C++. Dans le domaine de Swift Concurrency, la fonction main() pourrait être rendue plus fiable. Pour finir, la gestion des pointeurs C pourrait être également complétée.

Même si la version 5.6 de Swift pourrait apporter pas mal de fonctionnalités, la version 5.5 qui devrait sortir dans quelques semaines ne s’en trouve pas dépouillée pour autant. Nous aurons encore de quoi nous occuper tout au long de ce passionnant chemin vers Swift 6.

Rejoignez le Club iGen

Soutenez le travail d'une rédaction indépendante.

Rejoignez la plus grande communauté Apple francophone !

S'abonner

Le légendaire xeyes disponible sur le Mac App Store

18:15

• 7


Le navigateur Horse propose désormais une période d'essai de 7 jours

16:45

• 7


Avec Gemma 3, Google veut mieux concurrencer DeepSeek

15:15

• 5


Gail Slater devient le nouveau visage de l’antitrust américain

14:30

• 6


Les Mac Studio M2 se retrouvent sur le refurb Apple, avec de belles réductions et un tarif sous les 2 000 €

13:15

• 7


Pocket Casts : le lecteur de podcasts devient gratuit sur Mac et sur le web

13:00

• 10


L’iPad A16, les iPad Air M3 et le nouveau Magic Keyboard pour iPad Air maintenant disponibles

11:39

• 17


MacBook Air M4 et Mac Studio 2025 : ils sont disponibles en ligne et en boutiques

11:00

• 17


Apple réactive automatiquement Apple Intelligence avec iOS 18.3.2 et macOS 15.3.2

10:00

• 19


Kernel Panic : Apple Intelligence va-t-elle transformer l’iPhone 16 Pro ?

07:30

• 5


iOS 18.3.2 est disponible pour corriger une faille liée à WebKit 🆕

06:35

• 41


Prise en main de la Smart Lock Pro de Nuki, une Ultra qui ne demande pas de changer de cylindre

06:35

• 22


Le Mac Studio 2025 n'a pas de mode Performance, et ce n'est pas grave

11/03/2025 à 22:53

• 9


macOS 15.3.2 est de sortie, avec Safari 18.3.1

11/03/2025 à 21:08

• 12


B&You Pure fibre : frais de mise en service exceptionnellement offerts pour cette offre jusqu’à 8 Gb/s à petit prix

11/03/2025 à 18:11

• 54


Bon plan : le Mac mini M4 avec 24 Go de RAM et SSD 512 Go à 1 000 €

11/03/2025 à 16:10

• 19