Ouvrir le menu principal

MacGeneration

Recherche

Swift 2 : « c'est le moment rêvé » pour se lancer

Nicolas Furno

vendredi 19 juin 2015 à 11:45 • 33

AAPL

L’annonce faite durant le keynote de la WWDC a fait grand bruit auprès de la communauté des développeurs, au-delà même des plateformes traditionnelles d’Apple : en devenant open source, Swift 2 s’ouvre de nouveaux horizons prometteurs. Les sources du compilateur ainsi que les bibliothèques seront diffusées, d’ici la fin de l’année, pour iOS, OS X et Linux ; de son côté, Apple acceptera les contributions provenant de la communauté.

Nous avons voulu en savoir plus sur ce changement majeur dans les habitudes d’Apple et sur cette ouverture inédite avec Pascal Batty, développeur iOS chez SOAT.

Swift open-source : qu’est-ce que ça va changer concrètement ?

Swift est le premier langage sur lequel Apple a communiqué aussi ouvertement. Pour la première fois il y a un blog avec des explications sur le langage, les choix pris, des astuces et la documentation des nouveautés. Il y a même une communication via Twitter sur lequel Chris Lattner [un des créateurs de LLVM et directeur des outils développeurs chez Apple, NDLR] est très actif.

Le passage en open source est un pas de plus dans cette direction « d’ouverture », qui montre cet Apple nouveau, qui n'a pas peur de la transparence sur certains aspects, qui partage et qui accepte les suggestions.

Est-ce que Swift pourrait devenir un langage majeur en dehors de l’écosystème d’Apple ?

C'est tout à fait envisageable : cette ouverture pourrait permettre le développement d'un framework web en Swift par exemple, ce qu'Apple ne propose pas pour le moment. Le langage a gagné en attraction et en popularité très vite, il est unique sur certains aspects, donc les chances pour que des équipes talentueuses se l'approprient et l'utilisent dans d'autres contextes sont plutôt élevées.

De plus, l'ambition du langage est de pouvoir servir aussi bien à écrire des scripts et des applications qu'un système d'exploitation complet ! Le passage en open source lui permet cette omniprésence.

Est-ce que les autres langages existants pourraient évoluer grâce à cette ouverture ?

Swift propose une approche différente des langages actuels, ce qu’Apple a clairement explicité à la WWDC lors de la présentation « Protocol-Oriented Programming ». Cette approche n'est pas incompatible avec les langages orientés objet par exemple, qui pourraient s'inspirer du travail effectué sur Swift et l'intégrer.

Sur un plan plus technique, la compilation de Swift est assez spécifique et « redescend » pas à pas l'échelle de l'abstraction jusqu'à un niveau très bas. Le langage utilisé est très facile d'utilisation et éloigné du langage machine. Malgré ça, pour promettre une exécution performante le compilateur fait toutes les optimisations possibles. D'autres langages de haut niveau pourraient aussi s'en inspirer.

Est-ce que cela pourrait faciliter le passage d’iOS à Android, ou d’OS X à Windows/Linux ?

Je ne pense pas que ça puisse avoir de l'influence là-dessus. Le plus important dans une app iOS ou OS X, ce sont tous les appels aux « frameworks » qu'Apple a réalisés : de celui qui permet d'afficher une liste d'éléments à celui qui effectue les appels réseau, en passant par le système de navigation et la détection des gestes. Tout ceci n'est pas du tout « libéré » par Apple.

Je pense qu'avec Swift, Apple espère plutôt lever la principale barrière qui pouvait décourager les développeurs de se mettre aux applications iOS et OS X : Objective-C, dont la réputation est qu'il est vieillissant et pénible à utiliser.

Swift 2 avance-t-il dans la bonne direction ?

Oui ! Au-delà de l'évolution itérative au niveau des messages d'erreur, deux nouveautés marquent clairement une intention.

La gestion des erreurs arrive tardivement, cela laisse entendre qu'Apple a préféré attendre de trouver une solution satisfaisante plutôt que de sortir quelque chose qui marche mais qui manque d'élégance — comme avec ses autres produits. C'est rassurant.

Avec les « Protocol Extensions », une nouveauté très technique du langage, Apple ouvre la porte à de nouvelles façons de concevoir et d'organiser le code de son application. Elle l'a même explicité en réservant une présentation à la WWDC à ce sujet.

D'autres petites améliorations comme le mot-clé guard donnent aux développeurs de nouvelles conventions autour desquelles se rassembler, pour se poser moins de question et mieux se comprendre les uns les autres. Je reviens sur les principales nouveautés dans un article sur le blog de SOAT.

Tout cela montre une véritable réflexion en profondeur et que Swift est un sujet important pour Apple, sur le long terme.

Apple a fait évoluer Swift très rapidement. Est-ce que selon toi, c’est le bon moment pour se lancer à Swift ?

C'est le moment rêvé. L'évolution rapide n'est pas difficile à suivre, et les outils pour migrer le code sont de plus en plus efficaces.

Le langage a aujourd'hui démontré sa légitimité et sa pertinence, je conseille à tous ceux qui veulent développer des applications iOS ou OS X de s'y mettre. Nous avons commencé à l'utiliser en début d'année et nous ne le regrettons pas du tout.

Et puis en commençant par apprendre le langage tel qu'il est aujourd'hui, prendre en main les prochaines nouveautés sera plus facile. Je prépare en ce moment un programme de formation pour aider chacun à mettre le pied à l'étrier. En attendant, les cours sur iTunes U (en anglais) sont très bons et Exercism est une excellente plateforme pour tester ses connaissances avec des exercices d'algorithmique.

Qu’est-ce que tu attends des futures mises à jour de Swift ?

J'aimerais voir de quelle manière le langage peut évoluer vers le paradigme « Fonctionnel », vu que ça semblait être un point important au départ. Je pense que les Playgrounds, qui permettent de coder « en live » nous réservent encore beaucoup de surprises. Je suis aussi très curieux de voir comment seront intégrées les contributions de la communauté. C'est très inhabituel de voir Apple abandonner son contrôle vertical.

Rejoignez le Club iGen

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

Rejoignez la plus grande communauté Apple francophone !

S'abonner

iOS 26 : prise en main du nouvel Appareil photo de l’iPhone

17/06/2025 à 21:07

• 5


Panne nationale : SFR offre 100 Go de data à ses clients en dédommagement

17/06/2025 à 20:51

• 46


Arnaques par SMS : les arnaques explosent en 2025, nos conseils pour s’en protéger 📍

17/06/2025 à 18:59

• 0


QNAP propose un switch 2,5 Gb/s avec 8 ports, presque abordable

17/06/2025 à 16:56

• 10


Amazon divise par deux l’abonnement Prime pour tous les 18-22 ans

17/06/2025 à 16:33

• 17


Vous n'aimez pas Liquid Glass ? Un hack permet de s'en débarrasser sous macOS Tahoe

17/06/2025 à 12:08

• 22


Pas d'écran pour les enfants de moins de 3 ans

17/06/2025 à 08:29

• 52


Le Prime Day d'Amazon durera 4 jours du 8 au 11 juillet

17/06/2025 à 08:05

• 23


Dia : le successeur d'Arc mise tout sur l'IA

17/06/2025 à 07:24

• 23


Nouveautés d’iOS 26, macOS Tahoe, Liquid Glass… Tous nos articles pour tout savoir sur la WWDC 2025

17/06/2025 à 00:00

• 13


Les activités en direct dans macOS 26 ne demandent pas iOS 26 et pourraient fonctionner en Europe

16/06/2025 à 21:23

• 14


Découverte de Téléphone dans iOS 26 : nouvelle interface, appels inconnus, portages sur l’iPad et le Mac

16/06/2025 à 20:35

• 30


France Identité : l’intégration de la carte grise disponible en bêta

16/06/2025 à 19:51

• 105


La publicité s’infiltre finalement dans WhatsApp

16/06/2025 à 19:51

• 53


Comme promis, Apple sort de nouvelles bêtas… pour iOS 18.6 et macOS 15.6

16/06/2025 à 19:20

• 13


Bug amusant ou blague non assumée ? Une mise à jour de Windows 11 ressuscite le son de démarrage de Vista

16/06/2025 à 18:57

• 21