Découvrir Xcode 7

Gérer un projet Xcode

Testez gratuitement nos 1271 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Contrairement à ce que vous pourriez penser, la représentation des groupes de Xcode n'a rien à voir avec les répertoires dans le Finder. C'est ce que vous allez découvrir ici.

Transcription

Alors maintenant on va parler de Gestion Projet, c'est pour ça qu'on va créer un projet qui s'appelle ProjectManagement, et donc on va aller jeter un œil un petit peu dans chaque fichier. Là c'est le fichier avec les Capabilities, donc je vous envoie au chapitre sur les Capabilites, mais on a aussi tous les Build Settings, qui permettent de confirmer certain chose, comme par exemple quel OS on déploie. Si on a besoin de telle ou telle clé, dans notre code par exemple, où se trouve l'info plist, quel est notre BunndelIdentifier, ainsi de suite plein de choses, qui sont là dedans, sachant qu'il y a des choses qui sont ici dans la resumé, puisque vous mettez ici par exemple, ça se retrouva plus tard dans les Build Settings, mais tout n'est pas resumé là-dedans. On a les Build Phases et les Build Rulses, mais là c'est un peu rentré dans tout ce qui est développant lui-même, par vraiment Xcode. Et on a toujours la différence entre vraiment au niveau du projet et au niveau de chaque Target. Donc, voilà, mais là c'est rentré un petit peu trop long détail-là, on a un groupe ProjectManagement, et dedans on a des fichiers. Donc la Delegate, le View Contrôleur par exemple un fichier un Storyboard, et le fameux infoplist dont on parlait tout à l'heure, alors dans infoplist vous pouvez toujours ajouter à la main par exemple Background ou Application, par exemple je crois qu'il y a Application needs. Et il y en a plein, plein, plein, il n'affiche pas tous : Application UI Présentation Mode, Applicationuses Wi-Fi. Ils sont pas tous pour IOS. Ça c'est toutes des choses qui existent, et qui ont évidemment leur correspondance avec les, si vous faites clique droite ici, que vous dites Show les Row, qui valuent et vous verrez que donc on a la réalité ça s'appelle effectivement UIMainStoryboardFile, et non pas Main stroyboard file base name. C'est ce qu'il se retrouvera vraiment dans le XML. Et ensuite il y a le Products, ici, alors maintenant ce qu'on va pouvoir se dire, c'est qu'on va vouloir se dire, bon, moi je voudrais un petit peu de structure là-dedans. Il y a deux façons, on peut faire File, New Group, par exemple et de dire Delegates, et à ce moment-là, voyez qu'il y a rien dedans, on peut les glisser. Une autre option c'est de prendre par exemple deux fichiers, ici en l’occurrence LaunchStortyboard. Et MainStoryboard et de dire par exemple Create New Group from Sélection. Ce groupe va s'appeler Storyboards, avec un s, ce qui au passage, me permet de vous montrer une petite astuce avec le LaunchStoryboard, qui est que là, on peut mettre à tout moment par exemple un Label. ou créer un interface qui sera donc notre interface de Démarrage. Si on met ici Démarrage, par exemple, et qu'à ce moment-là je le remets au centre, voilà et je lui demande de rajouter les Contraintes, Add Missing Constraints, et que par exemple je change ce Background, pour une couleur un peu funky comme ça. Lorsque je vais démarrer, mon Application, voilà démarrer sur un iPhone 6S, plutôt. Lorsque je vais démarrer notre application, eh bien on va voir qu'au moment de la compilation Xcode généré un PNJ, et ce PNJ est ce qu'on appelle historiquement le defol.pnj. Il y a plusieurs variantes de ce PNJ en fonction du device sur lequel ça tourne et ça c'est statique, aucun moyen de mettre du code dessus. Mais à la seule exception qu'on peut effectivement localiser cette chaîne de caractère, on peut avoir un lancement pour chaque caractère. Alors c'est recommandé de ne pas faire ce qu'on appelle un Slach Quin, mais plutôt de faire par exemple si votre application une Table View, de faire une Table View with par exemple. Alors on pouvait se dire, quand on a vu ça, que ce AppDelegate-là doit être dans un répertoire Delegates, par exemple. On va voir que c'est pas du tout le cas, parce que le AppDelegates, il est tout simplement dans le répertoire ProjectManagement. Si on voudrait par exemple mettre dans AppDelegate, ou dans Delegate, on pourrait faire ici un nouveau dossier, par exemple, et le bouger ici. On se dirait qu'à ce moment-là ça marcherait peut-être, et pas du tout. La preuve que ça marche pas c'est que si maintenant je compile, il va me dire Build fait, pourquoi, parce qu'il trouve pas ce fichier-là. Et vous voyez que contrairement à ça où j'ai effectivement le fichier qui est bien trouvé l'autre n'est pas trouvé. Donc je vais tout simplement l'effacer et on prend donc mon fichier AppDelegate, qui est ici donc maintenant ça et le mettre à cet endroit-là. Et à ce moment-là ça va fonctionner. Et une autre option : si vous savez que vous allez travailler comme ça, qui est de tout de suite aller directement de créer un fichier, par exemple imaginons que vous allez créer des modèles, vous mettez Models, ensuite vous allez mettre directement ça, ici, il va dire voilà Copy Items if needed et Create a group, il va créer un groupe. la prochaine fois que vous ferez un nouveau fichier, File, New File, que vous mettez un fichier par exemple file.swift, vous voyez qu'il est dans mon Models, directement, et donc là il est effectivement au bon endroit. Tous ça ce sont des groupes, donc ça veut dire que les groupes ne reflètent pas l'architecture de votre Finder. Donc retenez ça, si vous étiez habitué à d'autres environnements, c'était le cas ici, ce n'est pas le cas du tout, il y a pas de corrélation entre ce qui a dans le Finder et ce que vous avez ici. Vous pouvez organiser cette corrélation en l’occurrence mais elle n'est pas donnée Alors il y a une autre option, une autre chose, qu'on peut faire ici quand par exemple on veut mettre des fichiers de configuration, on pourrait se dire qu'on va créer par exemple un nouveau dossier, je prends un exemple ici, config, et dans lequel je vais mettre notre fichier, alors là pour le coup, on va dupliquer le fichier, appeler ça Config.Swift, par exemple, et de dire que ce fichier quand je vais le glisser-déplacer, je vais lui dire de ne pas ajouter en groupe, mais en folder références. Vous allez voir la couleur est différente, c'est plutôt bleu, au lieu d’être jaunâtre. La différence ça c'est fondamentale, c'est que ce fichier n'est plus dans la Target. Voyez ici, la Target ce sont tous les fichiers qui vont être compilés et donc déployés dans le projet. Donc pour le coup, un.Swift justement c'est un peu une mauvaise utilisation de ça, ça devrait peut-être être je sais pas moins.config, quelque chose qu'on lit pour la raison X ou Y, donc on mettrait ici quelque chose, OK, qu'on lira ensuite plus tard. Et ça ne sera pas donc dans le projet, au final, A retenir évidemment le fait, je vous rappelle que dans Xcode, il n'y a pas de corrélation directe entre les groupes et le finder. Mais effectivement il y a une corrélation entre les références et les finders, ça veut dire que si je retourne dans mon Finder et qu'ici je crée un deuxième fichier, voyez que le fichier a été copié ici, à cet endroit-là effectivement. Mais je vous rappelle, que ça, ce sont pas des fichiers, qui vont être compilés.

Découvrir Xcode 7

Explorez l’interface et les fonctionnalités d’Xcode 7. Gagnez ainsi en productivité lors du développement de vos applications iOS, OS X, watchOS et tvOS.

Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :4 mai 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !