16. Oktober 2019

Überblick über die App-Entwicklung mit Xcode

Xcode

Xcode ist die Apple-Entwicklungsumgebung zur Entwicklung für iOS, macOS, tvOS und watchOS. Da Xcode ausschließlich für macOS verfügbar ist, wird ein Mac benötigt, um Xcode zu verwenden.

iOS SDK

In Xcode enthalten ist das iOS SDK mit allen benötigten Bibliotheken zur Entwicklung von iOS-Apps. So enthält Xcode 11 zum Beispiel das SDK für die Entwicklung für iOS 13.

LLVM

Apps für iOS werden in den Programmiersprachen Swift oder Objective-C entwickelt und mit dem in Xcode integrierten LLVM-Compiler übersetzt.

iOS Simulator

Der iPhone Simulator erlaubt das schnelle Testen ohne Hardware-Gerät. Dabei wird unter macOS das Verhalten von iOS-Geräten simuliert.

Instruments

Instruments ist ein Profiler, mit dem Apps auf Speicher- und Performance-Engpässe hin untersucht werden können.

Aufbau von Xcode

In Xcode findest Du um den Editierbereich herum den Navigator, die Utilities und die Debug Area. Mit den Buttons rechts oben können diese ein- und ausgeblendet werden:

Xcode: Navigator, Debug Area, Utilities

Tipp: Mit den Tastenkürzeln ⌘1,⌘2,... können die Reiter im Navigator direkt angewählt werden.

Xcode Projektstruktur

Folgende Dateien werden standardmäßig in einem Xcode-Projekt für eine iOS-App angelegt:

Das Xcode-Projekt enthält projektweite Einstellungen und die Target-Konfigurationen, die den Xcode-Buildprozess steuern.
Das AppDelegate wird über applikationsweite Ereignisse benachrichtigt - zum Beispiel über Lebenszyklus-Ereignisse wie den Start der App oder die Verlagerung der App in den Hintergrund.
ViewController-Klassen implementieren das Verhalten der Views der App, sie befüllen sie zum Beispiel mit Daten und behandeln Ereignisse.
Aus Main.storyboard wird die grafische Oberfläche der App geladen, die mit dem in Xcode integrierten Interface Builder bearbeitet werden kann.
Assets.xcassets enthält Icons und Grafiken in verschiedenen Auflösungen, unter anderem das App-Icon.
LaunchSceen.storyboard enthält den Startbildschirm der angezeigt wird, bis die App vollständig geladen und initialisiert ist.
Info.plist enthält Konfigurationsoptionen, die zur Laufzeit geladen werden, zum Beispiel die Versionsnummer der App oder unterstützte Geräte-Drehungen.
Unter Products werden die Build-Ergebnisse des Projektes angezeigt.

Ausführen von Apps im Simulator

Der iPhone Simulator simuliert das Verhalten von iOS unter macOS weitgehend analog zu einem echten Hardware-Gerät. Dazu wird die App für die x86-64-Architektur des Macs kompiliert. Um Apps im Simulator zu starten, wähle einen der iPhone-Simulatoren in der Schema-Auswahl und starte die App mit Product » Run ⌘R:

Schema-Auswahl: iPhone-Simulator

Beim Testen im Simulator gilt es einige Unterschiede zu den echten Geräten zu beachten:

Es empfiehlt sich daher, häufig auf echten Geräten mit den iOS-Versionen zu testen, für die die App entwickelt wird.

Aufgaben