Xcode 14 : en route vers Swift 6
Depuis 2014, Swift s’intègre de plus en plus au cœur de l’écosystème de développement Apple. Cette année est un pas de plus vers Swift 6 qui s’annonce comme une avancée majeure à tous les niveaux. Et Xcode 14 est là pour nous accompagner dans cette migration à la fois itérative et essentielle.
Nous avions déjà évoqué quelques-unes des évolutions de Swift 5.7 dans un précédent article. Nous n’allons pas revenir en détail sur l’ensemble de ces nouveautés, mais plutôt traiter celles qui auront un impact significatif sur le développement dans les années à venir. Concernant Swift Package Manager qui est toujours plus intégré à Xcode, notamment au travers des plugins, nous vous invitons à lire notre série dédiée qui intègre les nouveautés de Swift 5.7.
Merci pour l’article
@macbook60
Avec plaisir. 😁
@FloMo
Les appintents ça a l’air intéressant aussi
Article au top merci.
@franckontheweb
👍
Encore un article au top ! Un vrai régal ! Merci beaucoup Florent ;)
@benjaminrousseau
🙂
C'était pas simple de faire plus compliqué et tordu que C++. Pourtant, ils y sont arrivés, et haut la main. Bravo Apple :p
Enfin un article (très bon au passage) qui parle d’Xcode 14 ! 👏
Plus d’articles orientés dev seraient vraiment cool !
@kiddsoso
Je ne suis pas développeur, mais je suppose qu’on doit trouver beaucoup d’articles sur ce sujet sur les sites anglophone ?
@RonDex
Oui bien sûr ! Mais sachant que j’aime bien les articles de MacG, c’est plutôt cool d’en avoir plus souvent
@kiddsoso
Merci. Quelques uns devraient arriver dans les prochaines semaines.
Sans être expert, il me semble que l’utilité des nouveaux mots-clefs any et some est surtout d’éliminer du code mort et d’éviter des indirections à l’exécution.
Quand on fait appel à une bibliothèque générique qui contient Véhicule, Vélo et Voiture, il se peut que notre application n’utilise que Vélo. L’optimisation consiste alors à ne pas embarquer le code inutilisé de Voiture.rouler(), ni les mécanismes pour sélectionner la bonne méthode à l’exécution. Si Voiture et Véhicule contiennent beaucoup de code non utilisé, ou si Véhicule a beaucoup d’autres héritiers, le gain peut être important.
Bref: code plus rapide et plus petit.
Nous avions notre propre compilateur Eiffel et à l’édition de lien, nous faisions ça automatiquement sans mot-clef spécifique (mais les librairies partagées étaient peu utilisées et les contraintes sans doute différentes).
@DahuLArthropode
Sans être expert, il me semble que l’utilité des nouveaux mots-clefs any et some est surtout d’éliminer du code mort et d’éviter des indirections à l’exécution.
Au contraire le mot clef « any » introduit volontairement une indirection. Cela permet lors de l’exécution de stocker une variable de n’importe quel type se conformant a un protocole donné (similaire à une classe). Le mot clef « some » n’introduit pas d’indirection supplémentaire mais son utilité n’est pas liée à l’optimisation du code. Il sert principalement à masquer certains détails d’implémentation d’API.