Comment créer des applications iPhone avec un SDK (contexte historique / développement moderne)
L'article original (2008) décrivait les SDK non officiels « pré-App Store » (jailbreak, toolchain, Lucas Newman). Depuis le SDK officiel Apple (mars 2008) et l'App Store (juillet 2008), le développement iOS est encadré, sécurisé, et monétisable.
Développement iOS moderne (2024) - La voie officielle
Prérequis
- Mac (obligatoire pour Xcode, signature, soumission App Store). macOS Sonoma/Ventura récent.
- Xcode (gratuit, Mac App Store) : IDE complet (éditeur Swift/SwiftUI, Interface Builder, simulateurs, instruments, Organizer).
- Apple Developer Program (99$/an) : requis pour tester sur appareil réel, distribuer (TestFlight, App Store), utiliser services (Push, iCloud, Wallet, etc.). Gratuit pour test simulateur seulement.
- Langage : Swift (moderne, sûr, performant). SwiftUI (UI déclarative, iOS 13+) ou UIKit (impératif, legacy).
Étapes de création d'une app
- Apprenez Swift & SwiftUI : Tutoriels officiels Apple, Hacking with Swift (Paul Hudson), Swift.org.
- Créez un projet Xcode : File > New > Project > iOS > App. Choisissez SwiftUI / Storyboard. Nommez (Bundle ID unique : com.votreentreprise.votreapp).
- Concevez l'UI : SwiftUI (code + preview temps réel) ou Interface Builder (Storyboards/XIBs).
- Codez la logique : Models, ViewModels (MVVM), Services (réseau, persistence CoreData/SwiftData, CloudKit).
- Testez : Simulateurs (tous appareils/iOS) + Vrai iPhone (branché, mode développeur activé : Réglages > Confidentialité > Mode développeur).
- Archivez : Product > Archive. Valide signature, entitlements.
- Distribuez : TestFlight (bêta testeurs) > App Store Connect (métadonnées, captures, notes, prix, dispo) > Soumettre pour revue Apple > Publication.
Alternatives multiplateformes (code unique iOS/Android)
- Flutter (Dart) : Google. UI pixel-perfect, performance native, hot reload. Très populaire.
- React Native (JS/TS) : Meta. Pont vers natif. Grande écosystème. Utilisé par Facebook, Instagram, Shopify.
- Kotlin Multiplatform (KMP) : JetBrains. Partage logique métier (Kotlin), UI native (SwiftUI/Jetpack Compose). Montée en puissance.
- .NET MAUI (C#) : Microsoft. Évolution Xamarin.Forms. UI unique ou natif.
- Capacitor / Ionic (Web tech : HTML/CSS/JS/TS) : WebView encapsulée. Accès natif via plugins. Rapide pour apps web existantes.
Ressources officielles
- Apple Developer : Documentation, WWDC videos, Human Interface Guidelines, App Store Review Guidelines.
- Swift.org : Langage, migration, serveur.
- Swift Server : Backend Swift (Vapor, Hummingbird).
Note : Les « SDK non officiels » et « jailbreak pour développer » sont de l'histoire ancienne. Ne perdez pas de temps là-dessus.
