0Pricing
Swift Academy · Lektion

Grundlagen von Result<Success, Failure>

Erstellen Sie Result-Werte und führen Sie Pattern Matching für eine explizite Fehlerbehandlung durch.

Grundlagen von Result<Success, Failure> ist eine kostenlose Swift Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Swift Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Swift Academy-Kurs umfasst insgesamt 4 Lektionen.

Willkommen

`Result` ist eine Swift-Enumeration mit zwei Fällen – `.success` und `.failure` – und ermöglicht eine explizite Fehlerbehandlung ohne `throws`-/`catch`-Syntax.

Result deklarieren

```swift func divide(_ a: Double, by b: Double) -> Result { guard b != 0 else { return .failure(.divisionByZero) } return .success(a / b) } enum DivisionError: Error { case divisionByZero } ```

Result verwenden

```swift switch divide(10, by: 2) { case .success(let value): print("Result: \(value)") case .failure(let err): print("Error: \(err)") } ```

get() – Bei einem Fehler wird geworfen

```swift let result = divide(10, by: 0) do { let value = try result.get() // throws DivisionError } catch { print(error) } ```

Results speichern

```swift var cache: [URL: Result] = [:] cache[url] = .success(data) cache[url] = .failure(URLError(.notConnectedToInternet)) ```

Result in asynchronen APIs

```swift func fetch(url: URL, completion: @escaping (Result) -> Void) { URLSession.shared.dataTask(with: url) { data, _, error in if let data { completion(.success(data)) } else { completion(.failure(error ?? URLError(.unknown))) } }.resume() } ```

Pattern Matching mit if case

```swift if case .success(let data) = result { process(data) } if case .failure(let err) = result { handle(err) } ```

Eigenschaften für Erfolg und Fehler

```swift let r: Result = .success(42) print(r.success) // Optional(42) — non-nil on success print(r.failure) // nil ```

Aus throws initialisieren

```swift let result = Result { try JSONDecoder().decode(User.self, from: data) } // .success(user) or .failure(decodingError) ```

Results vergleichen

```swift let a: Result = .success(42) let b: Result = .success(42) // Cannot == directly unless Success/Failure are Equatable ```

Kurztest

Was geschieht mit `result.get()`, wenn das Result `.failure` ist?

Zusammenfassung

Wichtige Erkenntnisse: • `Result` ermöglicht explizite Erfolgs- und Fehlerbehandlung ohne `throws` • `.success(value)` / `.failure(error)` sind die beiden Fälle • `.get()` wirft bei einem Fehler • `Result { try ... }` verbindet Code, der Fehler wirft, mit `Result` • Nützlich zum Speichern und Weitergeben verzögerter Results Als Nächstes: `map` und `flatMap` für Result.

Häufig gestellte Fragen

Ist die Lektion „Grundlagen von Result<Success, Failure>“ kostenlos?

Ja — der vollständige Text von „Grundlagen von Result<Success, Failure>“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Swift Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Swift Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Grundlagen von Result<Success, Failure>“?

Erstellen Sie Result-Werte und führen Sie Pattern Matching für eine explizite Fehlerbehandlung durch. Du übst Swift Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Swift Academy zu starten?

Keine Vorkenntnisse erforderlich. Swift Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „Grundlagen von Result<Success, Failure>“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Swift Academy-Lektion Code schreiben und ausführen?

Ja. Jede Swift Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Grundlagen von Result
  2. map und flatMap auf Result
  3. Benutzerdefinierte Fehlertypen mit LocalizedError
  4. Result mit async/await verbinden
← Zurück zu Swift Academy