🍎 Découvrir Swift & SwiftUI (coder pour iPhone et iPad)
🍎 Découvrir Swift & SwiftUI (coder pour iPhone et iPad)
💡 “Swift, c’est le langage officiel d’Apple. SwiftUI, c’est la façon la plus moderne de créer des interfaces iPhone.”
Swift est le langage de programmation d’Apple, créé pour :
les apps iPhone, iPad, Apple Watch et Mac,
être rapide, sécurisé et simple à lire.
C’est l’équivalent de JavaScript pour le web… mais version Apple 🍏
var artiste = "Morgann Music"
print("Bienvenue sur \(artiste) 🎧")
➡️ var = une variable
➡️ print() = affiche du texte dans la console
➡️ \( ) = insère une variable dans une phrase
✅ Le texte est toujours entre guillemets " "
✅ Les variables s’écrivent avec var ou let
✅ Les parenthèses ( ) entourent les fonctions
✅ \(variable) = insérer une variable dans un texte
✅ Les majuscules comptent (print ≠ Print)
SwiftUI est un outil intégré à Swift pour créer des interfaces visuelles (écrans, boutons, textes, etc.)
➡️ Il remplace les anciens systèmes compliqués (Storyboard, UIKit).
➡️ Tu écris du code clair et l’écran se met à jour en direct 🪄
import SwiftUI
struct ContentView: View {
var body: some View {
VStack {
Text("🎧 Morgann Music")
.font(.largeTitle)
.fontWeight(.bold)
.foregroundColor(.pink)
.padding()
Text("Découvre les nouveaux sons et actus exclusives.")
.font(.subheadline)
.foregroundColor(.gray)
Button("Play 🎵") {
print("Lecture lancée !")
}
.padding()
.background(Color.blue)
.foregroundColor(.white)
.cornerRadius(15)
}
}
}
➡️ VStack = vertical stack (colonne verticale)
➡️ Text() = affiche du texte
➡️ Button() = crée un bouton avec une action
➡️ .padding(), .foregroundColor(), .background() = styles
✅ SwiftUI s’écrit avec des majuscules précises (ex : Text, Button, VStack)
✅ Les modificateurs (comme .font() ou .padding()) se chaînent les uns à la suite
✅ L’ordre compte ! (le dernier modificateur s’applique en dernier)
✅ Les accolades { } définissent ce qu’il y a à l’intérieur du bouton, de la vue, etc.
Quand tu ouvres Xcode et crées un projet “App iOS” → tu verras :
@main
struct MorgannMusicApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}
➡️ @main = le point de départ de ton app
➡️ WindowGroup = la “fenêtre principale”
➡️ ContentView() = ton écran principal
Tu peux modifier la couleur, la taille, la police, etc.
Text("Bienvenue sur Morgann Music")
.font(.title)
.foregroundColor(.purple)
.bold()
.shadow(radius: 5)
Tu peux aussi ajouter une image :
Image("logo")
.resizable()
.scaledToFit()
.frame(width: 200)
.cornerRadius(20)
.shadow(radius: 10)
(il faut que ton image “logo” soit importée dans ton projet Xcode)
Tu veux que ton interface réagisse à une action (par ex. un bouton qui change le texte) ?
Tu utilises @State 👇
import SwiftUI
struct ContentView: View {
@State private var message = "Appuie sur le bouton 🎵"
var body: some View {
VStack {
Text(message)
.font(.title)
.padding()
Button("Play") {
message = "Lecture en cours 🔥"
}
.padding()
.background(Color.pink)
.foregroundColor(.white)
.cornerRadius(12)
}
}
}
➡️ @State permet de modifier une variable en direct dans l’interface
➡️ Quand tu cliques sur le bouton, le texte change automatiquement
✅ @State = variable réactive (change le visuel)
✅ Les actions des boutons vont entre les accolades { }
✅ SwiftUI recharge l’interface dès qu’une valeur change
✅ Tu peux tester le rendu en temps réel avec le bouton ▶️ “Live Preview” dans Xcode
Avec SwiftUI, tu peux créer :
une page d’accueil Morgann Music 🎧
un bouton Play / Pause 🎵
un système de navigation entre plusieurs pages
un design Apple-like fluide, clair et responsive
Crée une mini app SwiftUI avec :
un texte "Bienvenue sur Morgann Music 🎧"
un bouton "Play" qui, quand on clique, change le texte en "Lecture en cours 🔥"
un fond coloré (.background(Color.black))
texte blanc (.foregroundColor(.white))
💡 Bonus : ajoute ton logo et un dégradé d’arrière-plan avec :
.background(LinearGradient(colors: [.black, .pink], startPoint: .top, endPoint: .bottom))