O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

iOS-Apps programmieren mit Swift , 2nd Edition

Book Description

  • Problemloser Einstieg in App-Entwicklung+ Basiert auf Swift 3 und xCode 8 (aktuell!)

Table of Contents

  1. Cover
  2. Titel
  3. Impressum
  4. Vorwort
  5. Inhaltsübersicht
  6. Inhaltsverzeichnis
  7. Kapitel 1: Einleitung
    1. 1.1 iPhone, iPad & Co.
    2. 1.2 Für wen ist dieses Buch gedacht?
    3. 1.3 Benötigte Hard- und Software
      1. 1.3.1 Welcher Mac genügt?
      2. 1.3.2 Welche macOS-Version?
    4. 1.4 Xcode und das iOS-SDK
      1. 1.4.1 Download und Installation von Xcode
      2. 1.4.2 Xcode im Detail
      3. 1.4.3 Projektübersicht
      4. 1.4.4 Quellcodefenster
      5. 1.4.5 Interface Builder
      6. 1.4.6 Object Library & Co.
      7. 1.4.7 Inspektoren
    5. 1.5 Vorlagen in Xcode
      1. 1.5.1 Schnellstart: Hallo Playground
      2. 1.5.2 Die Projektvorlagen von Xcode für iOS-Apps
      3. 1.5.3 Schnellstart: Die Master-Detail-Application-Vorlage
      4. 1.5.4 Schnellstart: Die Page-Based-Application-Vorlage
      5. 1.5.5 Schnellstart: Die Single-View-Application-Vorlage
      6. 1.5.6 Schnellstart: Die Tabbed-Application-Vorlage
      7. 1.5.7 Bestandteile eines Projekts
    6. 1.6 Apps ausführen
      1. 1.6.1 App im Simulator
      2. 1.6.2 Die App auf dem iOS-Gerät
      3. 1.6.3 Der iOS-Simulator im Detail
    7. 1.7 Mehrere Xcode-Versionen parallel verwenden
      1. 1.7.1 Ältere Versionen von Xcode finden
      2. 1.7.2 Weitere Xcode-Versionen installieren
    8. 1.8 Das Apple Developer Program – Anlaufstelle für Entwickler
      1. 1.8.1 Von Zertifikaten, Profilen und Identitäten
      2. 1.8.2 App auf ein angeschlossenes iOS-Gerät übertragen
  8. Kapitel 2: Schnellstart mit Swift
    1. 2.1 Das Projekt anlegen
    2. 2.2 Die Oberfläche mit dem Interface Builder bauen
    3. 2.3 Controls und Ereignisse
    4. 2.4 Mit Swift zum Ergebnis
  9. Kapitel 3: Einstieg in Swift
    1. 3.1 Variablen, Konstanten und Zuweisungen
      1. 3.1.1 Zuweisungsoperator
      2. 3.1.2 Konstanten
    2. 3.2 Datentypen
      1. 3.2.1 Strings
      2. 3.2.2 Ganze Zahlen und Fließkommazahlen
      3. 3.2.3 Wahrheitswerte
      4. 3.2.4 Aufzählungen (Enumerationen)
      5. 3.2.5 Felder (Arrays)
      6. 3.2.6 Dictionarys
      7. 3.2.7 NS-Datentypen
      8. 3.2.8 NSNumber
      9. 3.2.9 NSString
      10. 3.2.10 NSDate
      11. 3.2.11 NSRange
      12. 3.2.12 TimeInterval
      13. 3.2.13 NSArray/NSMutableArray
      14. 3.2.14 NSDictionary und NSMutableDictionary
    3. 3.3 Operatoren
      1. 3.3.1 Boolesche Operatoren
    4. 3.4 Arithmetische Operatoren
    5. 3.5 Kontrollstrukturen
      1. 3.5.1 Die Fallunterscheidung (if)
      2. 3.5.2 Mehrfachauswahl
    6. 3.6 Schleifen
      1. 3.6.1 Kopfgesteuerte Schleifen (while-Schleife)
      2. 3.6.2 Fußgesteuerte Schleifen (repeat...while-Schleife)
      3. 3.6.3 Zählschleifen (for-Schleife)
    7. 3.7 Funktionen
      1. 3.7.1 Funktionen – Parameter übergeben
      2. 3.7.2 Funktionen – Werte zurückgeben
      3. 3.7.3 Funktionen – Mehrere Werte zurückgeben (Tupel)
      4. 3.7.4 Funktionen – Externe Parameternamen
      5. 3.7.5 Funktionen – Parameter vorbelegen
      6. 3.7.6 Funktionen – Weitere Parametertypen
      7. 3.7.7 Verschachtelte Funktionen
      8. 3.7.8 Closures
      9. 3.7.9 Optionals
    8. 3.8 Strukturen Teil 1 (Structs)
  10. Kapitel 4: Objektorientierte Programmierung mit Swift
    1. 4.1 Grundlagen der OOP
      1. 4.1.1 Strukturen aus objektorientierter Sicht (Strukturen Teil 2)
      2. 4.1.2 Was sind Objekte?
      3. 4.1.3 Was sind Klassen?
      4. 4.1.4 Public, Private und wer noch?
    2. 4.2 Eigenschaften (Properties)
    3. 4.3 Methoden
      1. 4.3.1 Instanzmethoden (Instance Methods)
      2. 4.3.2 Klassenmethoden (Type Methods)
      3. 4.3.3 Der Initialisierer (Konstruktor)
      4. 4.3.4 Der Deinitialisierer (Dekonstruktor)
    4. 4.4 Vererbung
      1. 4.4.1 Erben (Ableitung) von Klassen
      2. 4.4.2 Zugriff auf Elemente der vererbenden Klasse
      3. 4.4.3 Initializer delegation
      4. 4.4.4 Überschreiben von Methoden
      5. 4.4.5 Überschreiben von Eigenschaften
      6. 4.4.6 Das Überschreiben von Elementen verhindern
    5. 4.5 Schnittstellen
      1. 4.5.1 Was sind Protokolle?
      2. 4.5.2 Ableitung von Protokollen
    6. 4.6 Erweiterung von Typen (Klassen, Strukturen und Enumerationen)
      1. 4.6.1 Subscripts
      2. 4.6.2 Verschachtelte Typen (Nested Types)
      3. 4.6.3 Erweiterungen (Extensions)
      4. 4.6.4 Optional Chaining
    7. 4.7 Typumwandlung (is & as) und (Any & AnyObject)
    8. 4.8 Generics
    9. 4.9 Speicherverwaltung (Automatic Reference Counting)
  11. Kapitel 5: Grundlagen der App-Entwicklung
    1. 5.1 Storyboard und Interface Builder
      1. 5.1.1 App im Storyboard
    2. 5.2 Bausteine einer iOS-App
      1. 5.2.1 View, ViewController und wer noch?
      2. 5.2.2 View-Ereignisse und View-Lebenszyklus
      3. 5.2.3 Outlets und Actions
      4. 5.2.4 MVC – Model View Controller
      5. 5.2.5 Controls
      6. 5.2.6 UIAlertController
    3. 5.3 Delegate
    4. 5.4 Gestenverarbeitung (Touch Events)
    5. 5.5 AutoLayout
    6. 5.6 Workshop – Passwortverwaltung – Teil 1
      1. 5.6.1 Planung der App
      2. 5.6.2 Umsetzung des Projekts – Teil 1
  12. Kapitel 6: Fehlersuche und Problembehandlung
    1. 6.1 Breakpoints im Quellcode setzen
    2. 6.2 Inspizieren von Variablen
    3. 6.3 View Debugging
    4. 6.4 Fehlerbehandlung mit »try catch«, (NS)Error & Co.
    5. 6.5 Fehlerbehandlung bei knappem Speicher
    6. 6.6 Vorausetzungen prüfen, Fehler vermeiden
  13. Kapitel 7: Tabellen und Controller
    1. 7.1 Schnellstart: App mit Master-Detail-Application-Vorlage
      1. 7.1.1 Datenquelle für Master-Detail hinzufügen
      2. 7.1.2 Das Projekt testen
    2. 7.2 UITableView und Controller
    3. 7.3 UITableViewCell
    4. 7.4 CustomCell
    5. 7.5 NavigationBar anpassen
    6. 7.6 Workshop – Passwortverwaltung – Teil 2
  14. Kapitel 8: Core Data
    1. 8.1 Was ist Core Data?
    2. 8.2 Ein neues Projekt mit Core Data
    3. 8.3 Ein Modell für die Speicherung
    4. 8.4 Core-Data-Klassen verwenden
    5. 8.5 Workshop – Passwortverwaltung – Teil 3
  15. Kapitel 9: Internet und Netzwerke
    1. 9.1 Das UIWebView
    2. 9.2 Wetter mit JSON
      1. 9.2.1 Mit der App zum (aktuellen) Wetter
    3. 9.3 Dateiaustausch mit AirDrop
    4. 9.4 Daten in der iCloud
  16. Kapitel 10: Sensoren
    1. 10.1 Kamera
    2. 10.2 Mikrofon
    3. 10.3 Beschleunigungssensor
    4. 10.4 Positionsdienste
    5. 10.5 Workshop – Passwortverwaltung – Teil 4
  17. Kapitel 11: iOS Maps
    1. 11.1 Das MapKit-Framework
    2. 11.2 Das MapView-Control
    3. 11.3 Markierung mit Annotation
    4. 11.4 Markierung auf der Karte anzeigen
    5. 11.5 Icon ändern
  18. Kapitel 12: Lokalisierung
    1. 12.1 Statische Texte in der GUI
    2. 12.2 Eine Sprache hinzufügen
    3. 12.3 Lokalisierung von Bildern
    4. 12.4 Dynamische Texte
    5. 12.5 Lokalisierung des App-Namens
    6. 12.6 Workshop – Passwortverwaltung – Teil 5
  19. Kapitel 13: Universal Apps
    1. 13.1 Universal Apps
    2. 13.2 Ein Projekt als Universal App anlegen
    3. 13.3 Bilder in der App
    4. 13.4 Portrait oder Landscape?
    5. 13.5 iPad oder iPhone?
    6. 13.6 Icons und Launch Images
    7. 13.7 Workshop – Passwortverwaltung – Teil 6
  20. Kapitel 14: App Extensions
    1. 14.1 Widgets und iOS
    2. 14.2 Ein Projekt für Widgets
    3. 14.3 Today Extension anlegen
    4. 14.4 Code und GUI des Widgets entwerfen
    5. 14.5 Test des Widgets
  21. Kapitel 15: WatchKit
    1. 15.1 Apple und die Watch
    2. 15.2 Zweiteilung
    3. 15.3 Das Projekt im Projekt
    4. 15.4 Das WatchKit-Projekt
    5. 15.5 GUI für die Watch-App
    6. 15.6 Der Code im anderen Abschnitt
    7. 15.7 Wie kommt die App auf die Watch?
  22. Kapitel 16: Apps für Apple TV
    1. 16.1 Apps im Fernsehen
    2. 16.2 Projektvorlagen für Apple-TV-Apps
    3. 16.3 Auflösungen berücksichtigen
    4. 16.4 Fokus und Steuerung der App
    5. 16.5 Der Simulator und Apple Remote
    6. 16.6 Würfel im Fernsehen
    7. 16.7 Die Programmlogik der Würfel-App
    8. 16.8 Icons hinzufügen
    9. 16.9 Installation der App
  23. Kapitel 17: NSOperation und Dispatch Queue
    1. 17.1 Operationen und Queues
    2. 17.2 Grand Central Dispatch und Queues im Überblick
      1. 17.2.1 Serielle Queues
      2. 17.2.2 Konkurrierende Queues
    3. 17.3 Queues in der praktischen Anwendung
    4. 17.4 Serielle Abarbeitung
    5. 17.5 NSOperation Queues
  24. Kapitel 18: Handoff-API
    1. 18.1 Einrichtung von Handoff
    2. 18.2 Die Klasse NSUserActivity
    3. 18.3 Das Projekt einrichten
    4. 18.4 Activity anlegen
    5. 18.5 Update und Ereignisse
  25. Kapitel 19: Das Core Spotlight Framework
    1. 19.1 Indizierung mit Spotlight
    2. 19.2 Neue Struktur für ein Zitat
    3. 19.3 Den Text analysieren
    4. 19.4 NSUserActivity verwenden
    5. 19.5 Activity-Instanz prüfen
    6. 19.6 Ein Activity wiederherstellen
  26. Kapitel 20: 3D Touch verwenden
    1. 20.1 Was ist 3D Touch?
    2. 20.2 3D Touch verwenden
    3. 20.3 Waage mit 3D Touch
    4. 20.4 Shortcuts definieren
    5. 20.5 Shortcut im Code
  27. Kapitel 21: Drucken unter iOS
    1. 21.1 Was ist Airprint?
    2. 21.2 Der Printer Simulator
    3. 21.3 Drucken aus einem TextView-Control
    4. 21.4 Generierung eines PDF-Dokuments
      1. 21.4.1 Drucklayout mit HTML
      2. 21.4.2 PDF im Code erzeugen
  28. Kapitel 22: Apps verteilen
    1. 22.1 Der Distributionsprozess
    2. 22.2 iTunes Connect verwenden
      1. 22.2.1 Meine Apps (App registrieren)
    3. 22.3 Apps verteilen
      1. 22.3.1 App Store
      2. 22.3.2 Ad Hoc Deployment
      3. 22.3.3 Enterprise Deployment
      4. 22.3.4 Bereitstellung einer App zur Verteilung
  29. Nachwort
  30. Index