Ouvrir le menu principal

MacGeneration

Recherche

Xcode 11.4 va améliorer le quotidien des développeurs

Nicolas Furno

vendredi 07 février 2020 à 15:00 • 10

Logiciels

Dans la fournée de bêtas de la semaine, Apple a aussi distribué une première bêta de Xcode 11.4. La prochaine version de son outil de développement contient de nombreuses nouveautés, dont certaines sont liées à l’intégration de Swift 5.2. On fait le point rapidement sur les principaux changements à attendre dans cette mise à jour.

Des notifications dans le simulateur

Xcode est fourni avec un simulateur qui permet aux développeurs d’apps iOS, watchOS ou tvOS de tester leur travail sans avoir à installer l’app à chaque fois sur un appareil de test. Il sert aussi à tester une app sans avoir toutes les variantes de chaque matériel jamais vendu par Apple. C’est un outil très pratique, mais certaines fonctions devaient encore être testées directement sur les appareils concernés.

C’était le cas jusque-là des notifications push envoyées par un serveur distant. Le simulateur permettait de tester les notifications générées sur l’appareil lui-même, une autre option proposée aux développeurs, mais pas celles qui sont envoyées depuis un serveur. Avec Xcode 11.4, cette limite sera levée et le simulateur permettra de vérifier que tout fonctionne sans quitter son Mac :

Une notification push affichée directement dans le simulateur de Xcode 11.4 (vidéo @twannl).

Simulateur oblige, vous n’avez pas besoin d’un vrai serveur de push pour utiliser cette fonction. Vous pouvez simuler le serveur aussi à l’aide d’un outil en ligne de commande à utiliser dans le terminal. La fonction peut ainsi être vraiment testée avec un seul Mac, même sans connexion internet.

Swift 5.2 améliore ses messages d’erreur

Xcode 11.4 intègre aussi la première bêta de Swift 5.2, le langage de développement utilisé par Apple. L’un des objectifs annoncés par la firme pour Swift était d’améliorer le quotidien des développeurs et cela commence avec cette mise à jour.

Au programme, des messages d’erreur plus utiles, tout particulièrement si vous utilisez SwiftUI. Le framework d’interface d’Apple n’a pas encore fêté son premier anniversaire et même s’il simplifie considérablement le travail des développeurs pour créer des interfaces simples, il peut vite devenir un cauchemar dès lors que les besoins se compliquent. En particulier, ses messages d’erreur sont souvent assez obscurs et n’aident pas à comprendre ce qui ne convient pas. Swift 5.2 devrait améliorer ce point, comme en témoigne cet exemple :

La même erreur expliquée par Swift 5.1 en haut et Swift 5.2 en bas.

Les messages d’erreur devraient ainsi être en général plus complets et plus clairs, ce qui permettra aux développeurs de comprendre plus facilement ce qui ne va pas et corriger leur code. Et toujours dans l’esprit de régler les problèmes, Xcode 11.4 propose une nouvelle option dans son inspecteur d’interface. Il est désormais possible de séparer chaque « couche » (CALayers) de l’interface, pour mieux inspecter un élément précis.

Swift 5.2 contient aussi de nouvelles fonctions pour les développeurs, qui pourront trouver une liste avec des explications sur le site Hacking with Swift.

Compilations accélérées en Swift et Objective-C

Apple avait aussi promis des progrès pour les temps de compilation du code source, une étape indispensable pour vérifier que tout fonctionne correctement. Avec Xcode 11.4, les développeurs devraient noter une réduction du temps de compilation, qu’ils utilisent toujours Objective-C ou qu’ils soient passés à Swift. Apple va continue de travailler sur ce point en préparant Swift 6, mais cette mise à jour de Xcode améliore déjà les choses sur les projets existants.

Un développeur a compilé deux projets, un dans chaque langage, sur le même Mac équipé d’un processeur huit cœurs. Avec Xcode 11.3, il fallait environ 77 secondes pour compiler les deux projets. La mise à jour baisse ce temps d’une vingtaine de secondes environ, avec un gain plus net pour Swift que pour Objective-C :

Xcode 11.4 est disponible au téléchargement depuis le site dédié aux développeurs d’Apple. Cette version nécessite pour la première fois macOS Catalina, elle ne s’installe plus sur Mojave (enfin, en tout cas pas sans bricoler).

Soutenez MacGeneration sur Tipeee

MacGeneration a besoin de vous

Vous pouvez nous aider en vous abonnant ou en nous laissant un pourboire

Soutenez MacGeneration sur Tipeee

Mac mini M4 : les meilleures offres du moment à partir de 609 €

13:15

• 1


Black Friday : les offres les plus populaires

11:08

• 9


Comment éviter les appels indésirables sur iPhone : les solutions vraiment efficaces

10:48

• 24


Black Friday Fnac : 10 € offerts tous les 100 € sur les Mac et iPad) 🆕

09:20

• 20


Promos Apple : iPad Air M3 13” dès 639 €, iPad Pro M5 dès 840 €, MacBook Pro M5 dès 1 649 € (+ cashback)

08:15

• 1


Black Friday : les meilleures promotions sur les produits Apple (MacBook Air, iPhone, iPad...)

29/11/2025 à 12:55

• 10


Protection totale pour votre Mac : antivirus + firewall + sauvegarde pour 29,99 €

29/11/2025 à 12:54

• 0


pCloud fait dégringoler le prix de ses forfaits cloud à vie pour le Black Friday ! 📍

29/11/2025 à 12:37

• 0


Apple Plans et Apple Ads pourraient tomber sous le coup du DMA à leur tour

29/11/2025 à 12:34

• 30


J’ai travaillé trois jours avec iPadOS 26 et un écran externe : c’était bien assez

29/11/2025 à 12:33

• 50


Black Friday : notre récap des meilleures offres (AirPods, Hue, MacBook…) 🆕

29/11/2025 à 11:54

• 19


Black Friday : numériser ses DVD avec MacX DVD Ripper Pro à partir de 30,95 € seulement 📍

29/11/2025 à 10:00

• 0


Darty : jusqu’à 120 € de chèques-cadeaux sur toute la gamme Apple (iPhone 17 Pro/Max, MacBook Air M4, iPad, accessoires…)

29/11/2025 à 08:15

• 12


Sortie de veille : le Black Friday bat son plein et iOS 27 fait déjà parler de lui

29/11/2025 à 08:00

• 9


Apple vient au secours de Hong Kong suite à la catastrophe du Wang Fuk Court

28/11/2025 à 22:45

• 33


Un rare bug logiciel contraint Airbus à modifier 6 500 A320 en urgence

28/11/2025 à 22:00

• 107