Zum Hauptinhalt springen Zur Suche springen Zur Hauptnavigation springen
Dekorationsartikel gehören nicht zum Leistungsumfang.
Swift
Das umfassende Handbuch. Apps entwickeln mit SwiftUI für iOS und macOS
Buch von Michael Kofler
Sprache: Deutsch

49,90 €*

inkl. MwSt.

Versandkostenfrei per Post / DHL

auf Lager, Lieferzeit 1-2 Werktage

Produkt Anzahl: Gib den gewünschten Wert ein oder benutze die Schaltflächen um die Anzahl zu erhöhen oder zu reduzieren.
Kategorien:
Beschreibung

Mit Swift und SwiftUI erstellen Sie professionelle und moderne Apps für macOS und iOS. Wie das geht, zeigt Ihnen Michael Kofler in diesem vollständig neu konzipierten Swift-Handbuch. Von den ersten Zeilen in Xcode über das Design Ihrer neuen App mit SwiftUI bis zur Veröffentlichung im App-Store lernen Sie alle Schritte der Anwendungsentwicklung kennen und machen sich mit den neuen Features von Swift 6 vertraut. Ideal für das Selbststudium und den Unterricht.

Aus dem Inhalt:

  • Crashkurs Xcode
  • Schleifen, Funktionen und Closures
  • Strukturen, Klassen und Protokolle
  • Views anwenden und selbst programmieren
  • App-Design und Animation
  • Data Binding, SwiftData und iCloud
  • Internationalisierung und App Store

Die Fachpresse zur Vorauflage:

Mac Life: 'Wer Apps mit Swift programmieren möchte, erhält mit diesem Wälzer einen soliden Helfer.'

Mit Swift und SwiftUI erstellen Sie professionelle und moderne Apps für macOS und iOS. Wie das geht, zeigt Ihnen Michael Kofler in diesem vollständig neu konzipierten Swift-Handbuch. Von den ersten Zeilen in Xcode über das Design Ihrer neuen App mit SwiftUI bis zur Veröffentlichung im App-Store lernen Sie alle Schritte der Anwendungsentwicklung kennen und machen sich mit den neuen Features von Swift 6 vertraut. Ideal für das Selbststudium und den Unterricht.

Aus dem Inhalt:

  • Crashkurs Xcode
  • Schleifen, Funktionen und Closures
  • Strukturen, Klassen und Protokolle
  • Views anwenden und selbst programmieren
  • App-Design und Animation
  • Data Binding, SwiftData und iCloud
  • Internationalisierung und App Store

Die Fachpresse zur Vorauflage:

Mac Life: 'Wer Apps mit Swift programmieren möchte, erhält mit diesem Wälzer einen soliden Helfer.'

Über den Autor
Michael Kofler hat Telematik an der TU Graz studiert und ist einer der erfolgreichsten deutschsprachigen IT-Fachbuchautoren. Zu seinen Themengebieten zählen neben Linux auch IT-Sicherheit, Python, Swift, Java und der Raspberry Pi. Er ist Entwickler, berät Firmen und
arbeitet als Lehrbeauftragter.
Inhaltsverzeichnis
Vorwort ... 13
Teil I. Einführung ... 17
1. Hello, World! ... 19

1.1 ... Erste Schritte mit Xcode ... 20

1.2 ... Der Hello-World-Code ... 24

1.3 ... Eigene Code-Experimente ... 28

2. Learning by Doing: Die erste App ... 31

2.1 ... Schritt 1: Eine Liste mit den Buchtiteln ... 33

2.2 ... Schritt 2: Gestaltung der Listenelemente ... 45

2.3 ... Schritt 3: Bücher nach Sprachen gruppieren ... 55

2.4 ... Schritt 4: Von der Liste zur Detailansicht ... 58

2.5 ... Schritt 5: Die RatingView ... 63

2.6 ... Schritt 6: Multiplatform- und Farb-Finetuning ... 70

2.7 ... Schritt 7: Persistenz mit SwiftData ... 74

3. Tipps & Tricks ... 81

3.1 ... Syntaxeigenheiten von Swift ... 82

3.2 ... Coding mit KI-Unterstützung ... 87

3.3 ... Xcode ... 90

Teil II. Swift ... 101
4. Variablen, Optionals und Datentypen ... 103

4.1 ... Variablen und Konstanten ... 103

4.2 ... Optionals ... 107

4.3 ... Elementare Datentypen ... 111

4.4 ... Zeichenketten ... 115

4.5 ... Wert- versus Referenztypen ... 122

5. Operatoren ... 125

5.1 ... Zuweisungs- und Rechenoperatoren ... 125

5.2 ... Vergleichsoperatoren und logische Operatoren ... 128

5.3 ... Range-Operatoren ... 131

5.4 ... Operatoren für Fortgeschrittene ... 132

6. Verzweigungen und Schleifen ... 135

6.1 ... Verzweigungen mit if ... 135

6.2 ... Inverse Logik mit guard ... 138

6.3 ... Verzweigungen mit switch ... 139

6.4 ... Versions- oder plattformabhängiger Code ... 141

6.5 ... Schleifen ... 142

7. Funktionen und Closures ... 149

7.1 ... Funktionen definieren und ausführen ... 149

7.2 ... Parameter ... 157

7.3 ... Standardfunktionen ... 164

7.4 ... Funktionen als eigener Datentyp ... 166

7.5 ... Closures ... 168

8. Arrays, Dictionaries, Sets und Tupel ... 173

8.1 ... Arrays ... 173

8.2 ... Arrays und Aufzählungen verarbeiten ... 180

8.3 ... Dictionaries ... 187

8.4 ... Sets ... 189

8.5 ... Tupel ... 191

9. Grundlagen der objektorientierten Programmierung ... 193

9.1 ... Klassen und Strukturen ... 193

9.2 ... Enumerationen ... 201

9.3 ... Eigenschaften ... 204

9.4 ... Init-Funktion ... 213

9.5 ... Methoden ... 219

9.6 ... Subscripts ... 225

9.7 ... Typ-Aliasse ... 227

10. Objektorientierte Programmierung für Fortgeschrittene ... 229

10.1 ... Vererbung ... 229

10.2 ... Generics ... 239

10.3 ... Protokolle ... 242

10.4 ... Standardprotokolle ... 251

10.5 ... Extensions ... 256

10.6 ... Protokollerweiterungen ... 258

11. Fehlerabsicherung ... 263

11.1 ... Fehlerabsicherung mit try und catch ... 263

11.2 ... Selbst Fehler auslösen (throws und throw) ... 270

11.3 ... Fehler in Funktionen weitergeben (rethrows) ... 273

11.4 ... Das Error-Protokoll ... 275

12. Swift-Interna ... 277

12.1 ... Speicherverwaltung ... 277

12.2 ... Attribute, Property Wrapper und Makros ... 282

12.3 ... Reflection und KeyPath-Ausdrücke ... 286

12.4 ... Swift Package Manager ... 290

Teil III. SwiftUI ... 293
13. Views ... 295

13.1 ... Grundlagen ... 297

13.2 ... Text ... 307

13.3 ... Buttons und Optionen ... 312

13.4 ... Bitmaps und Icons (Image) ... 317

13.5 ... Grafik (Canvas, Path und Shape) ... 321

13.6 ... Container (Stack, ScrollView, Grid) ... 323

13.7 ... Farbe, Datum und Uhrzeit auswählen (Date- und ColorPicker) ... 330

13.8 ... Ereignisse (Gestures) ... 333

13.9 ... Vorschau (Preview-Optionen) ... 336

13.10 ... Apps auf dem eigenen iPhone ausführen ... 340

14. State, Binding und Observable ... 343

14.1 ... Variablen synchronisieren (@State und [...] ... 343

14.2 ... Umgebungsvariablen (@Environment) ... 352

14.3 ... Fokus-Management (@FocusState) ... 354

14.4 ... Instanzen von Klassen beobachten (@Observable) ... 355

14.5 ... Model-View-ViewModel (MVVM) ... 362

14.6 ... Code-Organisation nach MVVM-Regeln ... 364

15. Listen und Tabellen ... 373

15.1 ... Listen ... 373

15.2 ... Listen manipulieren ... 379

15.3 ... Beispiel: Issue-Management ... 382

15.4 ... Tabellen ... 392

16. Navigation ... 399

16.1 ... NavigationStack ... 399

16.2 ... Navigation entlang eines Pfads ... 402

16.3 ... Deep Links ... 407

16.4 ... NavigationSplitView ... 414

16.5 ... TabView ... 419

16.6 ... Toolbar ... 421

16.7 ... Modale Dialoge (Alerts, Sheets, Popovers) ... 424

16.8 ... Best Practices ... 428

17. SwiftUI-Spezialthemen ... 431

17.1 ... Animationen ... 432

17.2 ... Einstellungen (User-Defaults, [...] ... 437

17.3 ... macOS-App mit mehreren Fenstern (FileDocuments) ... 440

17.4 ... Eigene View-Modifier ... 448

17.5 ... UIKit-Views in SwiftUI verwenden ... 452

17.6 ... Capabilities und Entitlements ... 458

Teil IV. Programmier- und Arbeitstechniken ... 461
18. Asynchrone Programmierung ... 463

18.1 ... Tasks, async und await ... 465

18.2 ... actor und Sendable ... 473

18.3 ... Asynchrone Programmierung in SwiftUI ... 480

18.4 ... Beispiel: Asynchroner Download ... 484

18.5 ... Beispiel: Datenauswertung und -visualisierung ... 491

19. Dateien, JSON und XML ... 499

19.1 ... Dateinamen und URLs ... 500

19.2 ... Standardverzeichnisse ... 501

19.3 ... Dateioperationen ... 506

19.4 ... Bundle-Dateien und Assets ... 510

19.5 ... JSON-Dateien verarbeiten ... 512

19.6 ... XML-Dateien lesen ... 519

20. Netzwerkfunktionen und REST-APIs ... 525

20.1 ... Dateien herunterladen ... 526

20.2 ... REST-APIs nutzen ... 528

20.3 ... Beispiel: Aktuelles Wetter ermitteln ... 531

20.4 ... Beispiel: New-York-Times-Bestsellerliste ... 534

21. SwiftData ... 541

21.1 ... Persistenz ... 541

21.2 ... SwiftData-Überblick ... 543

21.3 ... Modellierung (Schema) ... 545

21.4 ... Container ... 549

21.5 ... Daten lesen und speichern (Kontext) ... 550

21.6 ... Relationen ... 554

21.7 ... SwiftData-Interna ... 559

21.8 ... Beispiel: To-do-App ... 564

21.9 ... Undo-Funktion für die To-do-App ... 574

22. iCloud ... 581

22.1 ... iCloud-Grundlagen ... 581

22.2 ... Hello, iCloud! ... 583

22.3 ... SwiftData und iCloud ... 592

Teil V Apps ... 597

23. Währungskalkulator ... 599

23.1 ... App-Überblick ... 599

23.2 ... Umrechnungskurse herunterladen und speichern (Model) ... 602

23.3 ... UI-Logik (View Model) ... 606

23.4 ... Benutzeroberfläche (View) ... 612

23.5 ... Währungseinstellung (View) ... 616

24. Lokalisierung und App Store ... 623

24.1 ... Artwork ... 623

24.2 ... Mehrsprachige Apps ... 626

24.3 ... Eigene Apps im App Store anbieten ... 637

24.4 ... macOS-Programme selbst weitergeben ... 647

25. Familieneinkaufsliste ... 653

25.1 ... Bedienung ... 654

25.2 ... Software-Design ... 658

25.3 ... Einkaufsliste und Kategorien (Model) ... 666

25.4 ... UI-Logik (View Model) ... 671

25.5 ... Grundaufbau der Benutzeroberfläche (ContentView) ... 675

25.6 ... Shopping-Tab (View) ... 678

25.7 ... Planungs-Tab (View) ... 685

25.8 ... Settings-Tab (View) ... 689

25.9 ... REST-Server-Implementierung mit Python ... 693

25.10 ... REST-Client in Swift (View Model) ... 706

Index ... 717
Details
Erscheinungsjahr: 2025
Fachbereich: Programmiersprachen
Genre: Informatik, Mathematik, Medizin, Naturwissenschaften, Technik
Rubrik: Naturwissenschaften & Technik
Medium: Buch
Reihe: Rheinwerk Computing
Inhalt: 729 S.
ISBN-13: 9783367107346
ISBN-10: 3367107344
Sprache: Deutsch
Einband: Gebunden
Autor: Kofler, Michael
Auflage: 5. Auflage
Hersteller: Rheinwerk Verlag GmbH
Verantwortliche Person für die EU: Rheinwerk Verlag GmbH, Rheinwerkallee 4, D-53227 Bonn, service@rheinwerk-verlag.de
Maße: 246 x 179 x 44 mm
Von/Mit: Michael Kofler
Erscheinungsdatum: 06.06.2025
Gewicht: 1,496 kg
Artikel-ID: 130734675
Über den Autor
Michael Kofler hat Telematik an der TU Graz studiert und ist einer der erfolgreichsten deutschsprachigen IT-Fachbuchautoren. Zu seinen Themengebieten zählen neben Linux auch IT-Sicherheit, Python, Swift, Java und der Raspberry Pi. Er ist Entwickler, berät Firmen und
arbeitet als Lehrbeauftragter.
Inhaltsverzeichnis
Vorwort ... 13
Teil I. Einführung ... 17
1. Hello, World! ... 19

1.1 ... Erste Schritte mit Xcode ... 20

1.2 ... Der Hello-World-Code ... 24

1.3 ... Eigene Code-Experimente ... 28

2. Learning by Doing: Die erste App ... 31

2.1 ... Schritt 1: Eine Liste mit den Buchtiteln ... 33

2.2 ... Schritt 2: Gestaltung der Listenelemente ... 45

2.3 ... Schritt 3: Bücher nach Sprachen gruppieren ... 55

2.4 ... Schritt 4: Von der Liste zur Detailansicht ... 58

2.5 ... Schritt 5: Die RatingView ... 63

2.6 ... Schritt 6: Multiplatform- und Farb-Finetuning ... 70

2.7 ... Schritt 7: Persistenz mit SwiftData ... 74

3. Tipps & Tricks ... 81

3.1 ... Syntaxeigenheiten von Swift ... 82

3.2 ... Coding mit KI-Unterstützung ... 87

3.3 ... Xcode ... 90

Teil II. Swift ... 101
4. Variablen, Optionals und Datentypen ... 103

4.1 ... Variablen und Konstanten ... 103

4.2 ... Optionals ... 107

4.3 ... Elementare Datentypen ... 111

4.4 ... Zeichenketten ... 115

4.5 ... Wert- versus Referenztypen ... 122

5. Operatoren ... 125

5.1 ... Zuweisungs- und Rechenoperatoren ... 125

5.2 ... Vergleichsoperatoren und logische Operatoren ... 128

5.3 ... Range-Operatoren ... 131

5.4 ... Operatoren für Fortgeschrittene ... 132

6. Verzweigungen und Schleifen ... 135

6.1 ... Verzweigungen mit if ... 135

6.2 ... Inverse Logik mit guard ... 138

6.3 ... Verzweigungen mit switch ... 139

6.4 ... Versions- oder plattformabhängiger Code ... 141

6.5 ... Schleifen ... 142

7. Funktionen und Closures ... 149

7.1 ... Funktionen definieren und ausführen ... 149

7.2 ... Parameter ... 157

7.3 ... Standardfunktionen ... 164

7.4 ... Funktionen als eigener Datentyp ... 166

7.5 ... Closures ... 168

8. Arrays, Dictionaries, Sets und Tupel ... 173

8.1 ... Arrays ... 173

8.2 ... Arrays und Aufzählungen verarbeiten ... 180

8.3 ... Dictionaries ... 187

8.4 ... Sets ... 189

8.5 ... Tupel ... 191

9. Grundlagen der objektorientierten Programmierung ... 193

9.1 ... Klassen und Strukturen ... 193

9.2 ... Enumerationen ... 201

9.3 ... Eigenschaften ... 204

9.4 ... Init-Funktion ... 213

9.5 ... Methoden ... 219

9.6 ... Subscripts ... 225

9.7 ... Typ-Aliasse ... 227

10. Objektorientierte Programmierung für Fortgeschrittene ... 229

10.1 ... Vererbung ... 229

10.2 ... Generics ... 239

10.3 ... Protokolle ... 242

10.4 ... Standardprotokolle ... 251

10.5 ... Extensions ... 256

10.6 ... Protokollerweiterungen ... 258

11. Fehlerabsicherung ... 263

11.1 ... Fehlerabsicherung mit try und catch ... 263

11.2 ... Selbst Fehler auslösen (throws und throw) ... 270

11.3 ... Fehler in Funktionen weitergeben (rethrows) ... 273

11.4 ... Das Error-Protokoll ... 275

12. Swift-Interna ... 277

12.1 ... Speicherverwaltung ... 277

12.2 ... Attribute, Property Wrapper und Makros ... 282

12.3 ... Reflection und KeyPath-Ausdrücke ... 286

12.4 ... Swift Package Manager ... 290

Teil III. SwiftUI ... 293
13. Views ... 295

13.1 ... Grundlagen ... 297

13.2 ... Text ... 307

13.3 ... Buttons und Optionen ... 312

13.4 ... Bitmaps und Icons (Image) ... 317

13.5 ... Grafik (Canvas, Path und Shape) ... 321

13.6 ... Container (Stack, ScrollView, Grid) ... 323

13.7 ... Farbe, Datum und Uhrzeit auswählen (Date- und ColorPicker) ... 330

13.8 ... Ereignisse (Gestures) ... 333

13.9 ... Vorschau (Preview-Optionen) ... 336

13.10 ... Apps auf dem eigenen iPhone ausführen ... 340

14. State, Binding und Observable ... 343

14.1 ... Variablen synchronisieren (@State und [...] ... 343

14.2 ... Umgebungsvariablen (@Environment) ... 352

14.3 ... Fokus-Management (@FocusState) ... 354

14.4 ... Instanzen von Klassen beobachten (@Observable) ... 355

14.5 ... Model-View-ViewModel (MVVM) ... 362

14.6 ... Code-Organisation nach MVVM-Regeln ... 364

15. Listen und Tabellen ... 373

15.1 ... Listen ... 373

15.2 ... Listen manipulieren ... 379

15.3 ... Beispiel: Issue-Management ... 382

15.4 ... Tabellen ... 392

16. Navigation ... 399

16.1 ... NavigationStack ... 399

16.2 ... Navigation entlang eines Pfads ... 402

16.3 ... Deep Links ... 407

16.4 ... NavigationSplitView ... 414

16.5 ... TabView ... 419

16.6 ... Toolbar ... 421

16.7 ... Modale Dialoge (Alerts, Sheets, Popovers) ... 424

16.8 ... Best Practices ... 428

17. SwiftUI-Spezialthemen ... 431

17.1 ... Animationen ... 432

17.2 ... Einstellungen (User-Defaults, [...] ... 437

17.3 ... macOS-App mit mehreren Fenstern (FileDocuments) ... 440

17.4 ... Eigene View-Modifier ... 448

17.5 ... UIKit-Views in SwiftUI verwenden ... 452

17.6 ... Capabilities und Entitlements ... 458

Teil IV. Programmier- und Arbeitstechniken ... 461
18. Asynchrone Programmierung ... 463

18.1 ... Tasks, async und await ... 465

18.2 ... actor und Sendable ... 473

18.3 ... Asynchrone Programmierung in SwiftUI ... 480

18.4 ... Beispiel: Asynchroner Download ... 484

18.5 ... Beispiel: Datenauswertung und -visualisierung ... 491

19. Dateien, JSON und XML ... 499

19.1 ... Dateinamen und URLs ... 500

19.2 ... Standardverzeichnisse ... 501

19.3 ... Dateioperationen ... 506

19.4 ... Bundle-Dateien und Assets ... 510

19.5 ... JSON-Dateien verarbeiten ... 512

19.6 ... XML-Dateien lesen ... 519

20. Netzwerkfunktionen und REST-APIs ... 525

20.1 ... Dateien herunterladen ... 526

20.2 ... REST-APIs nutzen ... 528

20.3 ... Beispiel: Aktuelles Wetter ermitteln ... 531

20.4 ... Beispiel: New-York-Times-Bestsellerliste ... 534

21. SwiftData ... 541

21.1 ... Persistenz ... 541

21.2 ... SwiftData-Überblick ... 543

21.3 ... Modellierung (Schema) ... 545

21.4 ... Container ... 549

21.5 ... Daten lesen und speichern (Kontext) ... 550

21.6 ... Relationen ... 554

21.7 ... SwiftData-Interna ... 559

21.8 ... Beispiel: To-do-App ... 564

21.9 ... Undo-Funktion für die To-do-App ... 574

22. iCloud ... 581

22.1 ... iCloud-Grundlagen ... 581

22.2 ... Hello, iCloud! ... 583

22.3 ... SwiftData und iCloud ... 592

Teil V Apps ... 597

23. Währungskalkulator ... 599

23.1 ... App-Überblick ... 599

23.2 ... Umrechnungskurse herunterladen und speichern (Model) ... 602

23.3 ... UI-Logik (View Model) ... 606

23.4 ... Benutzeroberfläche (View) ... 612

23.5 ... Währungseinstellung (View) ... 616

24. Lokalisierung und App Store ... 623

24.1 ... Artwork ... 623

24.2 ... Mehrsprachige Apps ... 626

24.3 ... Eigene Apps im App Store anbieten ... 637

24.4 ... macOS-Programme selbst weitergeben ... 647

25. Familieneinkaufsliste ... 653

25.1 ... Bedienung ... 654

25.2 ... Software-Design ... 658

25.3 ... Einkaufsliste und Kategorien (Model) ... 666

25.4 ... UI-Logik (View Model) ... 671

25.5 ... Grundaufbau der Benutzeroberfläche (ContentView) ... 675

25.6 ... Shopping-Tab (View) ... 678

25.7 ... Planungs-Tab (View) ... 685

25.8 ... Settings-Tab (View) ... 689

25.9 ... REST-Server-Implementierung mit Python ... 693

25.10 ... REST-Client in Swift (View Model) ... 706

Index ... 717
Details
Erscheinungsjahr: 2025
Fachbereich: Programmiersprachen
Genre: Informatik, Mathematik, Medizin, Naturwissenschaften, Technik
Rubrik: Naturwissenschaften & Technik
Medium: Buch
Reihe: Rheinwerk Computing
Inhalt: 729 S.
ISBN-13: 9783367107346
ISBN-10: 3367107344
Sprache: Deutsch
Einband: Gebunden
Autor: Kofler, Michael
Auflage: 5. Auflage
Hersteller: Rheinwerk Verlag GmbH
Verantwortliche Person für die EU: Rheinwerk Verlag GmbH, Rheinwerkallee 4, D-53227 Bonn, service@rheinwerk-verlag.de
Maße: 246 x 179 x 44 mm
Von/Mit: Michael Kofler
Erscheinungsdatum: 06.06.2025
Gewicht: 1,496 kg
Artikel-ID: 130734675
Sicherheitshinweis

Ähnliche Produkte

Ähnliche Produkte