Quoi de neuf dans Xcode 9?

Ce que vous allez créer

Les annonces WWDC de cette année étaient axées sur les nouveaux SDK passionnants, tels que ARKit, et les modifications apportées à iOS 11. Cependant, Apple a également apporté des améliorations significatives à Xcode avec Xcode 9. La nouvelle version de Xcode ne devrait pas être dépassée. est un bond en avant pour les codeurs. Les développeurs sont sûrs d'être heureux!

Inclus dans les améliorations de cette année:

  • support mis à jour pour Swift 4, y compris le support parallèle pour Swift 4.0 et 3.2
  • Améliorations rapides de la vitesse dans Xcode Project Navigator and Editor, de l'indexation aux outils de refactoring
  • un composant de gestion du code source (SCM) entièrement reconstruit, avec intégration transparente à Git et GitHub
  • possibilité d'exécuter plusieurs simulateurs simultanés, ainsi que le débogage sans fil sur des périphériques physiques tels que l'iPhone et l'Apple TV
  • un nouvel outil Vérificateur de threads principal pour assurer la conformité des threads UIKit et AppKit
  • amélioration du rendu des composants d'interface utilisateur dans Interface Builder.

Il s’agit bien d’une liste de changements très intéressante, alors allons-y un à un, en commençant par Swift 4..

Prise en charge de Swift 4

Swift évolue régulièrement d'année en année, et cette année, Xcode prend en charge la dernière version majeure de Swift, Swift 4. Bien que la dernière itération open source ne soit pas aussi spectaculaire que les versions précédentes, Xcode 9 a rendu le processus encore plus simple. plus pratique. 

Pour commencer, Xcode 9 prend désormais en charge la possibilité de compiler simultanément les cibles Swift 4.0 et Swift 3.2, ce qui signifie qu'en tant que développeur, vous pouvez choisir de migrer votre projet progressivement plutôt que tout à la fois. Vous pouvez également écrire vos cibles de projet. la dernière version ou la version précédente de la langue.

Le compilateur de Xcode 9 comprend les deux versions et, via l'assistant de migration Xcode, demande désormais aux utilisateurs de sélectionner les cibles à migrer vers la version 4.0.. 

En fait, Xcode 9 évalue votre code et fournit des informations sur l'état de conformité de votre projet et les meilleures pratiques, via le Editeur> Valider option de menu. 

Améliorations apportées au navigateur de projet et à l'éditeur

Ensuite, Xcode 9 apporte certaines améliorations nécessaires à l'EDI lui-même, en particulier aux composants Project Navigator et Source Editor, en commençant par un moteur d'indexation plus rapide qui renforce votre capacité de recherche et vous permet d'obtenir des résultats plus rapidement.. 

Les développeurs peuvent effectuer des recherches dans une base de code volumineuse et obtenir des résultats instantanément, car le moteur d'indexation indexe désormais les fichiers au fur et à mesure de leur compilation, alors qu'avant, les fichiers dans un état de compilation n'étaient pas soumis à l'indexation. Les développeurs ont ainsi la possibilité de naviguer rapidement entre les projets liés et les bibliothèques liées et de les rechercher dans des fichiers liés, ce qui constitue un avantage appréciable, notamment lorsque vous travaillez avec CocoaPods et des espaces de travail multi-projets.. 

L’éditeur lui-même a également été reconstruit, permettant ainsi, comme le dit Apple, un «éditeur rapide basé sur une structure qui vous permet de mettre en évidence et de naviguer intelligemment dans votre code». Cela signifie un nouveau moteur de surbrillance qui reconnaît mieux les blocs logiquement groupés et qui vous fournit des outils intelligents pour naviguer entre les parties liées de votre base de code..

Refactoring

En plus de permettre aux développeurs de naviguer facilement d’une classe à l’autre ou d’une méthode à l’autre, Xcode fournit également une toute nouvelle fonctionnalité de refactoring. L'outil de refactoring fournit un volet d'éditeur modal permettant de comparer toutes les modifications possibles lors de l'extraction et du refactorisation de méthodes Swift. Cela facilite la refactorisation, même entre les méthodes Swift et Objective-C. 

Vous pouvez maintenant mettre à jour les symboles, modifier les getters et les setters, synthétiser iVars et remplir automatiquement les méthodes de protocole obligatoires pour la conformité, le tout en un seul clic.. 

Édition de Markdown

D'autres améliorations mineures incluent la prise en charge native des fichiers Markdown (rendus avec les styles Markdown) dans l'éditeur. Cette amélioration est logique compte tenu de l'intégration plus poussée de Xcode à GitHub, et il est utile de pouvoir accéder à LISEZMOI.md fichiers plus visuels dans l'éditeur. 

Terrains de jeux rapides

Xcode 9 fournit également de nouveaux modèles iOS Playground que vous pouvez réellement tester non seulement dans Xcode mais également sur Swift Playgrounds pour iPad.!

Autres améliorations du petit éditeur

De plus, c’est une petite amélioration, mais l’éditeur permet désormais aux utilisateurs d’augmenter ou de diminuer la taille de la police de l’éditeur à l’aide du logiciel compatible macOS. ou raccourcis. 

Une autre petite amélioration concerne la création, le changement de nom et la suppression de groupes dans le navigateur de projet. Les modifications apportées à un groupe sont désormais répercutées dans le dossier associé, ce qui garantit la cohérence des noms et élimine les ennuis que de nombreux développeurs ont avec la façon dont Xcode fonctionne avec les dossiers du système de fichiers.. 

Enfin, les améliorations apportées au catalogue d'actifs de Xcode permettent de prendre en charge le nouveau standard ouvert d'image HEIF intégré à iOS 11..

Améliorations de la gestion du contrôle de source 

L'une des améliorations les plus notables apportées à Xcode a été l'intégration de la gestion du contrôle de code source, jusqu'alors négligée. Au lieu du précédent SCM semi-cuit qui n’avait jamais vraiment fait partie de Xcode, Xcode 9 inclut désormais une intégration SCM complètement repensée..

À partir d'un nouveau navigateur SCM intégré de manière plus transparente, vous disposez également de méthodes de travail plus puissantes avec les branches et les balises. De plus, Xcode intègre désormais une intégration poussée dans GitHub qui vous permet de gérer votre compte directement à partir des préférences de Xcode, de créer des référentiels GitHub en un seul clic et de parcourir les pensions publiques à partir de l'éditeur.. 

Pour en savoir plus sur les nouvelles fonctionnalités de gestion de la chaîne logistique de Xcode 9, consultez notre article Nouveautés de la prise en charge de Git dans Xcode 9..

Débogage et améliorations du simulateur

Ne pas être laissé pour compte, le débogage a également attiré beaucoup d’attention dans Xcode 9. Nous allons commencer par examiner les nouveautés de Xcode Simulator..

Xcode Simulator

Auparavant, lors du lancement de Xcode Simulator, vous ne pouviez lancer qu'un seul simulateur à la fois. Donc, si vous deviez tester plusieurs types de périphériques, vous deviez les exécuter à tour de rôle. Cela a ralenti les tests, que ce soit pour des tests manuels ou automatisés.

Cela a changé dans Xcode 9. Les développeurs peuvent pour la première fois exécuter simultanément plusieurs simulateurs, les outils de test automatisés pouvant désormais exécuter des tests en parallèle.. 

Il y a quelques autres modifications mineures mais utiles au simulateur introduites par Apple. La première est que vous pouvez maintenir la touche Option enfoncée pour fermer la fenêtre du simulateur tout en la laissant active en arrière-plan. Vous pouvez également démarrer Simulator à partir de la ligne de commande, ce qui est utile pour les outils de test et de livraison automatisés.. 

Les développeurs peuvent également enregistrer des vidéos de simulateurs, en plus de prendre des captures d'écran, ce qui est utile pour la publication dans l'App Store.. 

Enfin, les développeurs passant de Simulator à des tests sur des appareils réels n'ont plus besoin de connecter physiquement leurs appareils. Apple permet désormais aux développeurs de couper le cordon et de déboguer les périphériques iOS et Apple TV sans fil, avec une fonctionnalité appelée débogage réseau..

Vérificateur de filetage principal

Un nouvel utilitaire de débogage autonome introduit par Apple avec Xcode 9, Main Thread Checker est capable de détecter une utilisation non conforme de SDK importants tels que AppKit et UIKit à partir d'un thread en arrière-plan. Par exemple, les développeurs pourraient utiliser UITableView actions dans le thread d'arrière-plan, ce qui pourrait entraîner des effets visuels étranges et des mises à jour erronées Le vérificateur de thread principal est activé par défaut et est configurable via l'éditeur de schéma. 

Serveur Xcode intégré

Xcode 9 a maintenant des robots Xcode Server intégrés et standard, ce qui évite aux développeurs de devoir installer macOS Server. Cela signifie que les développeurs peuvent exécuter des robots Xcode Server sur n’importe quelle machine et tirer parti des meilleures pratiques d’intégration continue.. 

Améliorations d'Interface Builder

Les développeurs ont constaté des modifications et des améliorations graduelles d’Interface Builder (IB) au fil des ans, avec des améliorations continues du rendu des écrans. Xcode 9 continue d'affiner IB en rendant les composants d'interface utilisateur de manière plus précise sur le canevas. Les composants améliorés incluent la navigation, la tabulation et les barres d'outils. 

Une autre nouvelle fonctionnalité est que Xcode et IB avertiront désormais les développeurs lorsque des contraintes de vue pourraient potentiellement causer des problèmes de localisation. Par exemple, vous serez alerté lorsqu'un changement apporté à une vue peut provoquer la troncature ou l'écrêtage de mots dans une autre langue, telle que l'allemand. Cela va certainement faire gagner beaucoup de temps aux développeurs prenant en charge plusieurs langues.. 

S'agissant des dispositions, Interface Builder prend désormais également en charge les guides de zone sans danger, qui sont des astuces qui aident les développeurs à organiser les éléments de l'interface utilisateur. Cela déprécie les guides de présentation supérieur et inférieur des versions précédentes de Xcode..

Conclusion

La dernière version de Xcode fournit une pléthore de nouvelles fonctionnalités qui amélioreront la productivité des développeurs. Parallèlement à l'annonce de Swift 4, Xcode rend la migration de Swift 3.2 vers la dernière version beaucoup plus agréable, grâce à sa prise en charge de la migration progressive. Xcode a également bénéficié d'améliorations rapides et remarquables de l'indexation de la recherche en termes de vitesse, ainsi que d'un éditeur entièrement reconstruit, plus contextuel, avec une nouvelle prise en charge du refactoring.. 

SCM est maintenant devenu un citoyen de première classe, ce qui signifie que les développeurs n'ont plus à basculer entre Xcode et un éditeur SCM tiers pour leurs besoins en matière de gestion de git. Le simulateur a bénéficié de certaines des améliorations les plus notables, avec la possibilité d'exécuter plusieurs simulateurs simultanés pour tester plusieurs périphériques plus rapidement, ainsi que de pouvoir couper le cordon et déboguer sans fil les périphériques physiques.. 

Alors qu'iOS 11 a revigoré la communauté des développeurs grâce à ses nouvelles fonctionnalités passionnantes du SDK, Xcode 9 constitue le véhicule de développement idéal pour apporter de l'innovation à ses utilisateurs. Restez à l’écoute pour des tutoriels pratiques sur l’utilisation des nouveaux SDK iOS. Et consultez certains de nos autres articles sur le développement d'applications iOS!