Architecture en couches pour KMP
Séparez proprement les données, le domaine et la présentation.
Architecture en couches pour KMP est une leçon Kotlin Multiplatform Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Kotlin Multiplatform Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Kotlin Multiplatform Academy comprend 4 leçons au total.
Une base de code, plusieurs applications
À mesure que votre application KMP grandit, le code partagé peut devenir un enchevêtrement. Une architecture en couches claire maintient chaque élément à sa place afin que les deux applications restent faciles à modifier.
Trois couches classiques
La plupart des applications KMP adoptent trois couches : données, domaine et présentation. Chacune a une seule responsabilité, et les dépendances circulent dans une direction unique et prévisible.
La couche de données
La couche de données communique avec le monde extérieur : Ktor pour HTTP, SQLDelight pour le stockage. Elle récupère des octets bruts et transmet des données propres vers le haut, en masquant les détails.
La couche domaine
La couche domaine contient vos règles métier et vos modèles. Elle ne sait rien de HTTP ni de SQL ; elle reste donc pure, portable et très facile à tester.
La couche de présentation
La couche de présentation prépare l'état pour l'écran. Les ViewModels partagés résident ici et transforment les données du domaine en StateFlow que chaque interface utilisateur collecte.
Les dépendances pointent vers l'intérieur
La règle d'or : les couches externes dépendent des couches internes, jamais l'inverse. La présentation connaît le domaine ; le domaine ne connaît aucun de ses deux voisins.
Communiquer par des interfaces
Les couches communiquent par des interfaces, et non par des classes concrètes. Le domaine déclare ce dont il a besoin ; les données fournissent l'implémentation, ce qui vous permet de remplacer librement les éléments.
interface UserRepository {
suspend fun load(id: String): User
}Des modèles propres à chaque couche
Chaque couche peut posséder ses propres structures : un objet de transfert de données réseau dans les données, un modèle propre dans le domaine. La conversion entre les deux empêche les particularités de l'API de se propager dans vos règles.
Pourquoi séparer les couches
La séparation devient utile lorsque les exigences évoluent. Remplacez une API REST par GraphQL et seule la couche de données change ; le domaine et la présentation ne s'en aperçoivent jamais.
Tout réside dans le code partagé
Les données, le domaine et la présentation peuvent tous résider dans commonMain. Android et iOS réutilisent l'ensemble de la pile et ne fournissent que l'écran natif final.
Commencer simplement
Vous n'avez pas besoin de dix couches dès le premier jour. Commencez par ces trois couches, gardez les flèches de dépendance propres et ne faites évoluer la structure que lorsque cela devient réellement utile. 🙂
Vérification rapide
Dans quelle direction les dépendances doivent-elles circuler entre les couches ?
Récapitulatif
Vous avez réparti le code partagé entre les données, le domaine et la présentation, orienté les dépendances vers l'intérieur et relié les couches par des interfaces. Des responsabilités claires pour des modifications faciles. 🎉
Apprends Kotlin avec un tuteur IA — gratuit
Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.
- Cours
- 30
- Leçons
- 120
Questions Fréquemment Posées
La leçon « Architecture en couches pour KMP » est-elle gratuite ?
Oui — le texte complet de « Architecture en couches pour KMP » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Kotlin Multiplatform Academy, passe à CoddyKit PRO. Le cours Kotlin Multiplatform Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Architecture en couches pour KMP » ?
Séparez proprement les données, le domaine et la présentation. Tu pratiques Kotlin Multiplatform Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Kotlin Multiplatform Academy ?
Aucune expérience préalable n'est requise. Kotlin Multiplatform Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Architecture en couches pour KMP » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Kotlin Multiplatform Academy ?
Oui. Chaque leçon Kotlin Multiplatform Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Architecture en couches pour KMP
- Cas d’utilisation et limites du domaine
- Répartir le code partagé en modules
- Décider ce qui reste natif