Quoi de neuf dans Xcode 8

Pendant la WWDC, Apple donne traditionnellement aux développeurs un aperçu de la prochaine version majeure de son IDE, Xcode. À chaque nouvelle version majeure, la société améliore ses outils de développement et ajoute un certain nombre de nouvelles fonctionnalités intéressantes. Et cette année n'était pas différente.

1. Swift 2 et 3

Jusqu'à Xcode 8, chaque version de Xcode était liée à une version spécifique du langage de programmation Swift. Ce n'est plus vrai depuis Xcode 8. Swift 3 introduit une multitude de changements et un nombre considérable de ces changements sont en train de se produire..

Les projets créés avec Xcode 8 utilisent Swift 3 par défaut. Heureusement, Xcode 8 inclut un paramètre de construction qui donne aux développeurs la possibilité de s'en tenir à Swift 2, Swift 2.3 pour être précis..

Cela signifie que vous pouvez choisir le moment où vous souhaitez migrer un projet vers Swift 3. Pour configurer une cible pour Swift 2.3, ouvrez les paramètres de construction de la cible et définissez Utiliser l'ancienne version du langage Swift à Oui.

Xcode 8 comprend également un outil de migration qui vous aide à migrer un projet vers Swift 3. L’outil de migration de Xcode 7 a eu des résultats mitigés. Swift 3 introduit de très nombreux changements et j’espère que l’outil de migration s’est considérablement amélioré avec Xcode 8. prêt pour la libération.

2. Extensions de l'éditeur source

L’une des caractéristiques les plus surprenantes a été l’introduction d’extensions d’éditeur de sources. Les développeurs demandent depuis des années une architecture de plug-in native. Les extensions d'éditeur de source sont un premier pas dans cette direction.

Il y a beaucoup à aimer sur les extensions pour Xcode, mais Apple souligne que les extensions sont actuellement centrées sur la manipulation et la navigation dans le contenu de l'éditeur de source, d'où les extensions d'éditeur de source. Xcode 8 inclut même un modèle pour vous aider à vous mettre à niveau.

Ce que j'aime particulièrement dans l'architecture des extensions, c'est que chaque extension s'exécute dans un processus distinct. Cela signifie qu'une extension bloquante ne provoque pas la fermeture inopinée de Xcode. Cela posait souvent des problèmes avec les plugins locaux, surtout si Apple publiait une nouvelle version majeure de Xcode..

Un autre avantage des extensions par rapport aux plugins est la sécurité. Vous pouvez signer et distribuer des extensions à l'aide de votre compte de développeur. Apple a également mentionné que vous pouvez utiliser le Mac App Store pour distribuer des extensions. Ceci est une excellente option si vous êtes intéressé à gagner de l'argent avec les extensions que vous faites.

Je suis très enthousiasmé par les extensions de l'éditeur de source. Bien que je sois un grand fan d’Alcatraz, la mise en œuvre native des extensions par Apple semble être la voie à suivre. J'ai hâte de voir quel type d'extensions les développeurs vont créer. Il en existe déjà quelques uns sur GitHub.

3. Débogage

Même les meilleurs développeurs passent beaucoup de temps à déboguer et Apple comprend la nécessité de meilleurs outils pour faciliter cette tâche. Xcode 8 introduit un certain nombre d'améliorations significatives liées au débogage.

Voir le débogage

Le débogage des vues est beaucoup plus puissant dans Xcode 8. La fiabilité a été améliorée et le débogage des présentations ambiguës ou insatisfaisantes est beaucoup plus facile grâce à un débogueur de vues amélioré qui affiche les problèmes d'exécution.

Problèmes d'exécution? C'est vrai. Xcode 8 introduit des problèmes d'exécution en plus des problèmes de génération. Si vous rencontrez des problèmes de mise en page automatique au moment de l'exécution, Xcode vous indique le problème en tant que problème d'exécution dans Navigateur de problèmes sur la gauche. Ceci est un ajout très bienvenu.

Débogage de la mémoire

Xcode 8 est également doté d’un débogueur de mémoire assez impressionnant pour détecter les fuites de mémoire et conserver les cycles. Je ne sais pas à quel point cela va être utile dans la pratique, mais c'est très, très joli.

4. Signature du code

La signature de code est un mal nécessaire pour les développeurs intéressés par les plates-formes Apple. Heureusement, Apple ne se cache pas la tête dans le sable. Il comprend la douleur ressentie par les développeurs. Même les anciens combattants ont de temps à autre des problèmes de signature de code. Au cours de l’état de l’union de cette année sur les plateformes, Apple s’est même moqué de ses propres Resoudre le probleme bouton qui règle rarement le problème et qui aggrave parfois les choses.

Les problèmes de signature de code ne font plus partie du passé avec Xcode 8. Pour chaque cible, vous pouvez cocher une case qui indique à Xcode de gérer la signature de code en votre nom. Cette option est activée par défaut pour les nouveaux projets. Lorsque coché, Xcode gère pour vous les certificats, les profils de provisioning et les identifiants d'application..

J'espère que Apple a bien compris cette fois-ci. Et avec moi des dizaines de milliers d'autres développeurs.

5. Autres améliorations et améliorations

San Francisco Mono

Si vous aimez travailler avec des logiciels superbement conçus, vous pourrez profiter de la nouvelle police San Francisco Mono d’Apple, livrée avec Xcode 8. C’est une variante mono-espacée de San Francisco qui s’intègre parfaitement à la police système de macOS..

Surlignage de ligne

Avez-vous remarqué que la ligne actuelle est mise en surbrillance dans la capture d'écran ci-dessus? C’est une autre amélioration bienvenue ajoutée par Apple à Xcode 8. J'utilise actuellement Backlight for Xcode pour obtenir le même effet dans Xcode 7. Je suppose que je n'ai plus besoin de ce plugin dans Xcode 8..

Achèvement du code pour les images

En parlant de plugins tiers, j'utilise actuellement l'excellent plug-in KSImageNamed de Kent Sutherland pour permettre la complétion de code pour les images dans Xcode. Je n'aurai plus besoin de ce plugin lorsque je passerai à Xcode 8, cette fonctionnalité étant désormais intégrée à Xcode..

6. Documentation

Les développeurs passent énormément de temps à parcourir et à lire la documentation. Une bonne documentation va un long chemin et la documentation d'Apple est excellente. Parcourir la documentation est une autre histoire.

Cette douleur est maintenant résolue dans Xcode 8. Le nouveau format de documentation est magnifique et son navigateur est rapide et facile à utiliser. Apple a également consolidé la documentation de ses plates-formes, ce qui a permis de réduire considérablement l'encombrement de la mémoire..

Et, oui, la documentation peut être magnifique. Regardez ces captures d'écran si vous ne me croyez pas.

Conclusion

Il va sans dire que je n'ai couvert qu'un sous-ensemble de ce qui est nouveau dans Xcode 8. La prochaine version majeure de Xcode est toujours quelque chose que j'attends avec impatience. Les développeurs passent beaucoup de temps dans leur éditeur de code et il est donc compréhensible qu'ils se soucient de son évolution, à la fois bonne et mauvaise. Quelle est votre fonctionnalité préférée de Xcode 8? Partagez-le dans les commentaires.