Was bedeutet das Schlüsselwort `some` in Swift (und SwiftUI)? Erklärung für Anfänger
Hallo zusammen! Ich lerne Swift und SwiftUI und sehe ständig das Schlüsselwort `some` im Code. Zum Beispiel:
```swift
struct ContentView: View {
var body: some View {
Text("Hello, World!")
}
}
```
Ich verstehe, dass `some` vor dem Typ `View` steht, aber ich kann nicht verstehen, warum es nötig ist. Warum kann man nicht einfach `var body: View` schreiben? Schließlich ist `Text` doch auch ein `View`. Ich habe versucht, `some` zu entfernen – Xcode meckert und sagt etwas über Protokolle.
Ich habe gelesen, dass es mit Opaque Types (undurchsichtige Typen) zusammenhängt und damit, dass Swift nicht mit Protokollen arbeiten kann, die `Self` oder `associated types` haben. Aber das klingt sehr kompliziert.
Bitte erklären Sie in einfachen Worten: Was macht `some`, warum wird es gerade in SwiftUI benötigt, und wie funktioniert es unter der Haube? Geben Sie Beispiele, wann `some` obligatorisch ist und wann man es weglassen kann. Vielen Dank im Voraus!
<<>>
Das Schlüsselwort
Das Schlüsselwort some ist ein "undurchsichtiger Typ" (Opaque Type)
Stellen Sie sich vor, Sie bestellen ein Taxi, aber