Sobes.tech
Junior — Middle

Welche Designmuster kennst du im Kontext der Entwicklung von iOS-Anwendungen?

sobes.tech KI

Antwort von AI

Bei der Entwicklung von iOS-Anwendungen werden häufig folgende Entwurfsmuster verwendet:

  • MVC (Model-View-Controller) — Trennung von Daten, Oberfläche und Steuerungslogik.
  • MVVM (Model-View-ViewModel) — Trennung der Ansicht von der Geschäftslogik durch ViewModel.
  • Delegate (Delegierung) — Verantwortlichkeiten an ein anderes Objekt übertragen, weit verbreitet in UIKit.
  • Singleton (Singleton) — Gewährleistet eine einzige Instanz der Klasse, z.B. für einen Einstellungsmanager.
  • Observer (Beobachter) — Objekte können sich auf Ereignisse abonnieren, z.B. über NotificationCenter.

Beispiel für die Verwendung eines Delegierten:

protocol MyDelegate: AnyObject {
    func didUpdateData()
}

class DataProvider {
    weak var delegate: MyDelegate?
    func fetchData() {
        // Daten laden
        delegate?.didUpdateData()
    }
}

class ViewController: UIViewController, MyDelegate {
    func didUpdateData() {
        print("Daten aktualisiert")
    }
}