Architecture MVVM
MVVM pattern, ViewModel, data binding, separation of concerns, testabilité
1Qu'est-ce qu'un ViewModel dans l'architecture MVVM ?
Qu'est-ce qu'un ViewModel dans l'architecture MVVM ?
Réponse
Le ViewModel encapsule la logique métier et gère l'état de la vue sans dépendre de UIKit ou SwiftUI. Il établit un pont entre le Model et la View, permettant une séparation claire des responsabilités. Cette architecture facilite les tests unitaires et rend le code plus maintenable et réutilisable.
2Quelles sont les responsabilités principales du Model dans MVVM ?
Quelles sont les responsabilités principales du Model dans MVVM ?
Réponse
Le Model représente les données et la logique métier de l'application. Il définit les structures de données, valide les règles métier et ne dépend pas des couches View ou ViewModel. Le Model doit rester indépendant du framework UI pour assurer la réutilisabilité et la testabilité. C'est la source de vérité des données applicatives.
3Quel est le rôle principal de la View dans une architecture MVVM ?
Quel est le rôle principal de la View dans une architecture MVVM ?
Réponse
La View est responsable de l'affichage des données et de la capture des interactions utilisateur. Elle doit contenir uniquement le code de présentation et éviter la logique métier. La View se lie au ViewModel par le data binding pour rester simple et testable. En SwiftUI, utiliser @ObservedObject ou @StateObject pour observer le ViewModel. En UIKit, utiliser Combine pour souscrire aux changements.
Qu'est-ce que le data binding dans le contexte MVVM ?
Quelle est la différence entre @Published et @ObservedObject en SwiftUI ?
+17 questions d'entretien
Autres sujets d'entretien iOS
Les bases de Swift
Essentiels du langage Swift
Fondamentaux UIKit
Cycle de vie UIViewController
UserDefaults & Keychain
Cycle de vie de l'application
Auto Layout & Constraints
UITableView & UICollectionView
Les bases de SwiftUI
Gestion d'état SwiftUI
Navigation SwiftUI
Networking & URLSession
Codable & Parsing JSON
Core Data
Programmation orientée protocoles
Notifications Push
Tests unitaires & XCTest
Tests d'interface utilisateur
Xcode & Système de build
Swift Package Manager
Memory Management & ARC
Combine Framework
Concurrency & async/await
iOS Design Patterns
Performance Optimization
Security & Encryption
SwiftUI Advanced
iOS Application Architecture
Maîtrise iOS pour ton prochain entretien
Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.
Commencer gratuitement