Pour développer ta première application mobile, Mac ou Apple watch, tu auras besoin de l’environnement de développement (IDE) Xcode. C’est un logiciel natif d’Apple et gratuit au téléchargement.
Xcode est un logiciel lourd puisqu’il pèse environ 12 Go (et ses mises à jour en fond au moins la moitié). Pour le télécharger, tu auras besoin de 25 à 30 Go d’espace libre sur ton mac afin d’avoir assez d’espace pour que son utilisation soit assez fluide.
L’interface XCode
Barre de statut
Permet de lancer et d’arrêter l’appli sur n’importe quel modèle d’appareil (grâce au simulateur).
Editeur de code
C’est ici que sera écrite toute la logique du code.
Zone de debug
Zone qui répertorie les différentes variables et la console.
Groupe d’inspecteurs
Permet soit :
- d’inspecter le fichier (informations sur le path, le nom, encodage, etc).
- de voir l’historique de versionning (commits, …)
- d’accéder à l’aide en cliquant sur une fonction
- d’accéder aux réglages (style, accessibilité, etc)
Volet de navigation
Fonctionnalités clés de XCode
Comme tous les autres IDE, Xcode permet de choisir la coloration syntaxique du texte ainsi que la suggestion automatique des fonctions présentes dans le projet, c’est ce qu’on appelle l’auto-complétion. Mais ce n’est pas qu’un simple éditeur de code, puisqu’il offre une multitude de fonctionnalités.
Storyboards
Sur Xcode, il est possible d’utiliser une interface graphique pour la conception et la création d’interfaces utilisateur. C’est une « interface builder ». C’est en glissant-déposant des éléments graphiques (boutons, texte, couleurs, etc) sur l’interface utilisateur que tu vas pouvoir concevoir cette interface.
Bien que l’utilisation des storyboards aie l’air plus simple que coder tête baissée, leur utilisation est assez controversée.
D’un côté, certains développeurs les apprécient pour leur simplicité et leur capacité à visualiser facilement les interfaces utilisateur. De l’autre, certains développeurs préfèrent créer des interfaces utilisateur en code pour des raisons de performance, de contrôle plus fin sur les détails de l’interface utilisateur et de la flexibilité qu’offre le code.
Il y a également des critiques qui considèrent que les storyboards peuvent rendre le code plus difficile à maintenir et à déboguer. Notamment en raison de la complexité des fichiers générés par les storyboards.
C’est donc une manière de travailler qui n’appartient qu’à toi.
Personnellement, je suis plutôt du parti du code mais si tu es intéressé(e) pour en savoir plus sur les storyboards, n’hésites pas à me le faire savoir dans les commentaires.
Debugger (ou débogage à la française 🐓)
C’est un outil qui permet de « débloquer »/déboguer/debugger (rayer la mention inutile) efficacement le code. Ainsi, en mettant des points d’arrêts aux bons endroits dans le code, le debugger stoppera le chargement de la page à cet endroit et nous permettra ainsi d’examiner les valeurs des variables, d’entrer en détail dans une fonction ou l’ignorer.
La console de débogage affiche les messages et les erreurs à mesure qu’ils se produisent pendant l’exécution de l’application.
Git intégré
Git est un système de contrôle de version de projet. Il est directement intégré dans Xcode et permet donc de visualiser les modifications apportées au projet, ainsi que d’envoyer directement les changements via l’interface. Il est également possible de créer des branches, les fusionner ou encore résoudre les conflits de merging.
Le sujet étant assez vaste, je t’invite à patienter un peu afin de découvrir un article un peu plus détaillé pour pouvoir intégrer toi aussi Git à tes projets.
Simulateur
Il permet de tester directement ton application, grâce au lancement d’un appreil virtuel. Celui se comporte comme un iPhone classique (si tu as sélectionné un iPhone, of course), tu pourras même aller toucher aux réglages à l’intérieur de cet appareil virtuel, si tu veux t’amuser un peu.
Ainsi, tu pourras tester ton application sans avoir besoin de l’installer dans ton téléphone (surtout si tu n’as pas d’iPhone à ta disposition). Tu peux donc simuler des interactions avec l’application, telles que l’entrée de texte, les mouvements tactiles, la localisation ou encore les notifications.
Intégration de l’App Store
Elle permet de publier directement l’application depuis l’interface Xcode. Tu pourras utiliser l’Assistant Publication de Xcode pour soumettre ton application pour examen. C’est un processus guidé qui permet aux développeurs de spécifier les détails de leur application, tels que le nom, les captures d’écran, les mots-clés et les catégories, ainsi que de configurer les options de tarification et de distribution.
Lorsque tous les détails de l’application sont remplis, Xcode prépare automatiquement l’archive du projet et le soumet à Apple pour examen. Ainsi, tu pourras suivre le processus d’examen à partir de la section « Activité » de Xcode et recevoir des notifications lorsque ton application sera approuvée (🎉) ou rejetée (☹️).
Pour y accéder, dans la barre de menu sélectionne « Window » (ou Fenêtre) et choisis « Organizer » (ou Organiseur).
Aide au développement
Elle est disponible dans l’onglet d’aide dans la zone du groupe d’inspecteurs. En cliquant sur une fonction ou une zone de texte, la zone d’aide t’offre directement la documentation à portée de main.
Support pour la création universelle pour plusieurs plateforme
C’est une configuration de projet qui nous permet, à nous développeurs, de définir des paramètres pour plusieurs plateformes (iOS, macOS, watchOS, tvOS) dans une seule cible de projet. Nous pouvons ainsi créer une seule application et configurer différentes options en fonction de la plateforme cible, telles que les tailles d’écran, les résolutions, les interfaces utilisateur et les fonctionnalités de plateforme spécifiques.
Et voilà, tu en sais déjà beaucoup sur XCode mais la présentation n’est pas finie, retrouve moi demain pour la configuration de ton premier projet sur XCode !
Rétroliens/Pings