Junior — Middle
Hoe wordt de interactie tussen de verschillende lagen en componenten in een meerlaagse systeemarchitectuur uitgevoerd?
sobes.tech AI
Antwoord van AI
In een multi-component systeemarchitectuur vindt de interactie tussen lagen en componenten meestal plaats via duidelijk gedefinieerde interfaces en protocollen. Bijvoorbeeld, op iOS wordt vaak het MVC- of MVVM-patroon gebruikt, waarbij de View interactie heeft met de ViewModel of Controller, die op hun beurt toegang krijgen tot het gegevensmodel. Communicatie kan plaatsvinden via delegates, notificaties (NotificationCenter), closures of reactieve bibliotheken (Combine, RxSwift).
Voorbeeld van interactie via delegate:
protocol DataUpdateDelegate: AnyObject {
func didUpdateData(_ data: String)
}
class Model {
weak var delegate: DataUpdateDelegate?
func fetchData() {
// Gegevens ophalen
let data = "Nieuwe gegevens"
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("Bijgewerkte gegevens: \(data)
}