Evaluer (correction)

Quels sont les 3 niveaux d'architecture d'une application en SwiftUI ?

App : le niveau le plus englobant, il peut contenir une ou plusieurs scènes ("scene")

Scene : représente un écran et peut comporter une ou plusieurs vues ("view")

View : élément le plus atomique de l'architecture d'une application

⚠️ Window : il existe un élément appelé "WindowGroup" en SwiftUI. On peut également le voir comme un niveau d'achitecture d'une appli en SwiftUI.

Frame : représente l'encadrement d'une vue (exemple : une "frame" de 200 px par 200 px signifie qu'une vue est représentée par un carré de 200 px de large)

Appli : c'est juste pas le bon mot 🤭

❌  Group : "Group" est également un élément que l'on peut utiliser en SwiftUI mais ne représente pas un niveau d'architecture. Un "Group" est simplement un type de "View".


Lors de la création de vues ("View"), il est préférable de :

❌  Créer des vues les plus grosses possible

✅  Fragmenter au maximum les vues afin qu'elles soient les plus petites possible

❌  Peu importe, chacun ses préférences

A chaque fois qu'une vue est modifiée (quand un élément visuel doit être changé, comme un bouton "Like" qui passe de l'état désactivé à l'état activé par exemple) la vue est re-créée. Il n'est pas important de comprendre ça à ce stade de la formation.

Il faut simplement retenir que plus une vue est grosse, plus elle mettra du temps à être re-créée, et plus l'application sera lente. Ainsi, pour fluidifier au maximum l'application, il est préférable de créer des vues les plus petites possibles afin que seule les vues modifiées visuellement soient re-créées.


Si mon projet contient trois fichiers : MyTestAppApp.swift, ContentView.swift et info.plist, dans lequel de ces 3 fichiers dois-je insérer le code permettant de créer mon écran principal ?

❌  MyTestAppApp.swift

✅  ContentView.swift

❌  info.plist

ContentView.swift n'est pas le seul fichier dans lequel nous écrirons le code pour créer une vue (heureusement ! sinon le fichier serait très long...). Mais c'est en effet le nom donné par défaut par Xcode lors de la création d'un projet. Bien sûr, il est possible de le renommer ou de créer une vue dans un autre fichier. Nous verrons comment faire dans les prochains chapitres.