Swift — bien plus qu'un « langage pour iOS »
\n\nQuand Chris Lattner a présenté Swift en 2014, beaucoup l'ont perçu comme « un énième langage pour Apple ». Dix ans ont passé, et Swift est sorti avec assurance de l'écosystème de Cupertino. Aujourd'hui, ce n'est pas simplement un outil pour écrire des applications pour iOS et macOS, mais une plateforme multiplateforme puissante, de plus en plus utilisée dans le développement côté serveur, la science des données et même le travail avec l'intelligence artificielle.
\n\nDans cet article, nous analyserons les tendances clés de l'évolution de Swift pour 2025-2026, les étayerons avec des exemples de code concrets et donnerons des conseils pratiques pour rester un développeur recherché dans cette nouvelle réalité.
\n\n1. Swift 6 : Le silence tant attendu dans la concurrence
\n\nL'un des événements les plus marquants de ces dernières années a été la sortie de Swift 6. La fonctionnalité principale que tout le monde attendait — le modèle complet de concurrence stricte (Strict Concurrency). Si auparavant vous pouviez accidentellement provoquer une course aux données et obtenir un bug qui se reproduit « une fois sur deux », désormais le compilateur joue le rôle de contrôleur strict.
\n\nVoici à quoi cela ressemble en pratique :
\n\n// Swift 5 — le compilateur se taisait, mais les données pouvaient être en course\nvar counter = 0\nDispatchQueue.concurrentPerform(iterations: 100) { _ in\n counter += 1 // Opération dangereuse\n}\n\n// Swift 6 — le compilateur générera une erreur\n@MainActor\nclass ViewModel {\n var counter = 0\n \n func increment() {\n counter += 1 // Autorisé uniquement sur le thread principal\n }\n}\n\n\nPrévision : En 2025-2026, Swift deviendra la référence en matière de programmation concurrente sécurisée. Les développeurs habitués à écrire « à la va-vite » devront se reconvertir, mais cela bénéficiera à la qualité du code.
\n\n2. Swift côté serveur : Vapor et Hummingbird gagnent en popularité
\n\nUne tendance qu'il est désormais impossible d'ignorer — Swift côté serveur. Les frameworks Vapor et Hummingbird deviennent de plus en plus populaires, en particulier dans les startups où les équipes connaissent déjà Swift et souhaitent écrire le backend avec le même langage.
\n\nPourquoi est-ce pratique ? Un langage unique pour le client et le serveur, des performances élevées (Swift est compilé en code natif), un typage sécurisé.
\n\nExemple d'une API REST simple avec Vapor :
\n\nimport Vapor\n\nfunc routes(_ app: Application) throws {\n app.get("hello") { req async -> String in\n return "Hello, Swift on server!"\n }\n \n app.post("data") { req async throws -> [String: String] in\n let input = try req.content.decode(MyData.self)\n return ["status": "ok", "value": input.value]\n }\n}\n\nstruct MyData: Content {\n let value: String\n}\n\n\nPrévision : D'ici 2026, la part des projets côté serveur en Swift augmentera de 40 à 50 %. Cela concerne particulièrement les microservices et les systèmes à forte charge où la rapidité d'exécution sans compilation JIT est cruciale.
\n\n3. Swift pour Android et Embedded : L'écosystème s'élargit
\n\nUn mythe tenace : « Swift — seulement pour Apple ». En réalité, grâce à des outils comme Swift for Android et Embedded Swift, vous pouvez exécuter du code pratiquement partout. Apple investit activement dans le portage de Swift vers d'autres plateformes : les binaires officiels pour Linux et Windows sont déjà stables, et le SDK Android pour Swift devient de plus en plus mature.
\n\nExemple de code qui fonctionne à la fois sur iOS et Android :
\n\nimport Foundation\n\nfunc calculateDistance(from: (Double, Double), to: (Double, Double)) -> Double {\n let dx = to.0 - from.0\n let dy = to.1 - from.1\n return sqrt(dx * dx + dy * dy)\n}\n\n// Ce code sera compilé sur Android via Swift Android Toolchain\nlet distance = calculateDistance(from: (55.7558, 37.6173), to: (59.9343, 30.3351))\nprint("Distance entre Moscou et Saint-Pétersbourg : \\(distance) degrés")\n\n\nPrévision : Dans les 2 à 3 prochaines années, nous assisterons à une augmentation des projets embedded en Swift (IoT, drones, appareils intelligents). Swift