Junior — Middle
Comment se déroule l'interaction entre les différentes couches et composants dans une architecture système multicouche?
sobes.tech IA
Réponse de l'IA
Dans une architecture système à composants multiples, l'interaction entre les couches et les composants se fait généralement via des interfaces et des protocoles clairement définis. Par exemple, sur iOS, le pattern MVC ou MVVM est souvent utilisé, où la Vue interagit avec le ViewModel ou le Contrôleur, qui à leur tour accèdent au modèle de données. La communication peut se faire via des délégués, des notifications (NotificationCenter), des closures ou des bibliothèques réactives (Combine, RxSwift).
Exemple d'interaction via délégué:
protocol DataUpdateDelegate: AnyObject {
func didUpdateData(_ data: String)
}
class Model {
weak var delegate: DataUpdateDelegate?
func fetchData() {
// Récupération des données
let data = "Nouvelles données"
delegate?.didUpdateData(data)
}
}
class ViewController: UIViewController, DataUpdateDelegate {
let model = Model()
override func viewDidLoad() {
super.viewDidLoad()
model.delegate = self
model.fetchData()
}
func didUpdateData(_ data: String) {
print("Données mises à jour : \(data)")
}
}