Swift Standardbibliothek (iOS/macOS): vollständiger Überblick
Die Swift Standardbibliothek ist das Fundament, auf dem die gesamte Entwicklung für iOS, macOS, watchOS und tvOS aufbaut. Sie bietet dem Entwickler eine Reihe grundlegender Datentypen, Protokolle, Strukturen und Funktionen, die für die tägliche Arbeit notwendig sind. Im Gegensatz zu externen Frameworks (z. B. UIKit oder SwiftUI) ist die Standardbibliothek Teil der Swift-Sprache selbst und in jedem Projekt ohne zusätzliche Importe verfügbar. In diesem Artikel werden wir die wichtigsten Komponenten der Bibliothek im Detail besprechen.
Grundlegende Datentypen
Die Swift Standardbibliothek enthält alle primitiven Typen, die Sie täglich verwenden:
- Int, Float, Double — numerische Typen mit unterschiedlicher Genauigkeit.
- Bool — boolescher Typ (true/false).
- String — Textverarbeitung.
- Character — einzelnes Unicode-Zeichen.
Ein Beispiel für die Arbeit mit Strings, das die Leistungsfähigkeit der integrierten Methoden demonstriert:
import Foundation
let greeting = "Hallo, Swift!"let uppercased = greeting.uppercased()let containsWord = greeting.contains("Swift")
print(uppercased) // "HALLO, SWIFT!"print(containsWord) // true
// Mehrzeilige Stringslet multiline = """Dies ist die erste Zeile.Dies ist die zweite Zeile."""print(multiline)Collections: Array, Set, Dictionary
Die Bibliothek bietet drei Haupttypen von Collections, die für verschiedene Aufgaben optimiert sind:
- Array — geordnete Liste von Elementen mit Zugriff über Index.
- Set — ungeordnete Sammlung eindeutiger Werte.
- Dictionary — Sammlung von Schlüssel-Wert-Paaren.
Ein Beispiel für die Verwendung aller drei Typen:
// Arrayvar numbers: [Int] = [1, 2, 3, 4, 5]numbers.append(6)numbers.sort(by: >)
// Setvar uniqueNames: Set<String> = ["Alice", "Bob", "Charlie"]uniqueNames.insert("Alice") // Wird nicht hinzugefügt, da bereits vorhanden
// Dictionaryvar capitals: [String: String] = [ "Russland": "Moskau", "USA": "Washington"]capitals["Frankreich"] = "Paris"
print(numbers) // [6, 5, 4, 3, 2, 1]print(uniqueNames) // ["Charlie", "Alice", "Bob"]print(capitals) // ["Russland": "Moskau", "USA": "Washington", "Frankreich": "Paris"]Optionale Typen (Optionals)
Eine der wichtigsten Eigenschaften von Swift ist die sichere Handhabung fehlender Werte durch Optional. Dies hilft, viele Laufzeitfehler zu vermeiden, die in anderen Sprachen üblich sind.
Die wichtigsten Methoden zur Arbeit mit Optionals:
- Optional Binding (
if let,guard let) - Force Unwrapping (nur wenn Sie sicher sind, dass ein Wert vorhanden ist)
- Nil-Coalescing Operator (
??) - Optional Chaining
var username: String? = "JohnDoe"
// Optional bindingif let name = username { print("Hallo, \\(name)!")!} else { print("Name nicht angegeben")}
// Nil-coalescinglet displayName = username ?? "Gast"print(displayName)
// Optional chaininglet count = username?.count ?? 0print("Namenslänge: \\(count)")Protokolle und Erweiterungen
Die Swift Standardbibliothek basiert auf Protokollen. Die wichtigsten Protokolle, die Sie verwenden werden:
Equatable— zum Vergleichen von ObjektenHashable— zur Verwendung in Set und DictionaryComparable— zum SortierenCodable— zur Serialisierung/Deserialisierung (JSON, Property List)Collection— Basisprotokoll für alle Collections
Beispiel für die Implementierung eines Prot
Auch in der Bibliothek
JWT-Tokens in Rust: Bibliotheken und Implementierung der Authentifizierung
PDF-Generierung in Kotlin: Die besten Bibliotheken und Codebeispiele
GraphQL in PHP: Vollständiger Leitfaden zur Bibliothek webonyx/graphql-php
Redis-Client für Rust: Überblick über die Bibliothek redis-rs
GraphQL für Swift: Apollo iOS — Client für iOS und macOS