Microservices en Swift : par où commencer pour un débutant en 2024

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Pourquoi Swift n'est pas seulement pour le développement mobile ?



Quand on entend « Swift », la première association est les applications iOS. Mais ces dernières années, Swift s'impose avec confiance du côté serveur. Et ce n'est pas juste un effet de mode : Apple développe activement l'écosystème, et la communauté crée des frameworks puissants. Si vous écrivez déjà en Swift pour iOS et souhaitez élargir vos horizons — les microservices en Swift seront votre prochaine étape logique.



Pourquoi les microservices ? Parce que c'est le standard moderne de construction de backend : de petits services indépendants, faciles à mettre à l'échelle et à mettre à jour. Et Swift, avec ses performances, sa sécurité de typage et sa syntaxe concise, est parfaitement adapté. Dans cet article, nous allons voir par où commencer pour créer des microservices en Swift, écrire du code réel et lancer notre premier service.



Que faut-il savoir avant de commencer ?



Pour une lecture confortable, vous aurez besoin de :

  • Connaissances de base en Swift (variables, fonctions, structures)
  • Compréhension de HTTP et REST (au moins au niveau « il y a une requête — il y a une réponse »)
  • brew installé (pour macOS) ou Docker (pour Linux)

Si quelque chose vous manque — pas de panique, nous verrons cela en cours de route.



Choisir l'outil : Vapor — le roi du Swift serveur



Sur le marché des frameworks serveur pour Swift, il y a deux acteurs principaux : Vapor et Kitura (d'IBM). Mais Kitura, hélas, est presque figé. Alors que Vapor est activement développé, possède une immense communauté et une documentation complète. Donc notre choix est Vapor.



Vapor fournit tout ce dont vous avez besoin : routage, middleware, gestion des bases de données, WebSocket, asynchrone via async/await. Idéal pour construire une architecture microservices en Swift.



Installation de Vapor Toolbox

Ouvrez le terminal et exécutez :

brew install vapor

Après l'installation, vérifiez :

vapor --help

Si vous voyez la liste des commandes — tout va bien, vous pouvez créer votre premier projet.



Créer notre premier microservice : Hello, World!



Notre premier microservice sera simple : il acceptera une requête GET et retournera du JSON. Mais nous allons le faire correctement — avec une architecture prête à être étendue.



Étape 1. Créer le projet

vapor new HelloMicroservice --template=authcd HelloMicroservice

Le flag --template=auth ajoutera une structure de base avec authentification. Pour un microservice, c'est une bonne pratique — intégrer la sécurité dès le départ.



Étape 2. Structure du projet

Après la création, vous verrez cette structure :

HelloMicroservice/├── Sources/│   ├── App/│   │   ├── Controllers/│   │   ├── Models/│   │   └── configure.swift│   └── Run/│       └── main.swift├── Tests/├── Dockerfile└── Package.swift

Notez le Dockerfile — c'est déjà un modèle prêt pour la conteneurisation. Les microservices sans Docker, c'est comme une pizza sans fromage.



Étape 3. Écrire notre premier endpoint

Ouvrons Sources/App/Controllers/UserController.swift (s'il n'existe pas, créons-le). Ajoutons une méthode simple :

import Vapor

struct HealthController: RouteCollection { func boot(routes: RoutesBuilder) throws { let health = routes.grouped("api", "health") health.get(use: checkHealth) } @Sendable func checkHealth(req: Request) async throws -> HTTPStatus { return .ok }}

C'est un health-check classique — la base de tout microservice. Maintenant, enregistrons-le dans configure.swift :

// à la fin de la fonction configuretry app.register(collection: HealthController())


Étape 4. Lancer et tester

vapor run

Ouvrez le navigateur ou le terminal :

curl http://localhost:8080/api/health# Réponse : 200 OK

Félicitations ! Vous v

Blogs

Book Recommendations