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).

illustration magazine 25 ans

MacGeneration a 25 ans !

Participez à la fête et découvrez l’histoire de votre site favori en précommandant notre magazine exclusif.

Je précommande le magazine