
Erste Schritte mit der Programmiersprache Swift und dem Editor Xcode auf dem Mac
Swift, eine von Apple entwickelte Programmiersprache, dient zur Erstellung von Apps für die Betriebssysteme macOS, iOS, iPadOS, watchOS und tvOS. Obwohl Swift auch für Windows und Linux verfügbar ist, empfiehlt sich ein Mac, insbesondere für die Entwicklung von grafischen Benutzeroberflächen.
Swift ist kostenlos und Open Source. Auf dem Mac ist außer der IDE Xcode keine zusätzliche Installation erforderlich.
Apple stellt ein Handbuch zur Verfügung. Das Buch The Swift Programming Language kann kostenlos aus dem iBooks Store geladen werden.
Zusätzlich finden Sie eine ausführliche Dokumentation auf der Seite swift.org und eine tour durch grundlegende Syntax und Funktionen „A Swift Tour“.
Swift und SwiftUI
Swift wird durch das Framework SwiftUI ergänzt. SwiftUI ist eine Sammlung von Tools, die speziell zur Erstellung von Benutzeroberflächen für Apple Betriebssysteme entwickelt wurden. Swift hingegen ist eine allgemeine Programmiersprache, mit der alle Arten von Anwendungen erstellt werden können. Swift bildet sozusagen das Grundgerüst, während SwiftUI für die grafische Gestaltung zuständig ist.
Xcode
Xcode ist Apples Integrierte Entwicklungsumgebung zum Programmieren von Swift und SwiftUI. Neben einem Editor zum Schreiben von Code bringt die IDE alle erforderlichen Tools (SDK) mit. um Projekte und Dateien verwalten. Programme kompilieren und in einem Simulator testen ist direkt aus der IDE heraus möglich.
Mit der Installation von Xcode, das kostenlos über den Mac-Appstore erhältlich ist, werden auch gleich alle erforderlichen Werkzeuge, Compiler und Bibliotheken eingerichtet.
Erste Schritte
Eine Einführung zu Xcode in englischer Sprache bietet die Seite Apple Developer
Nach dem Öffnen von Xcode führt ein Assistent den Benutzer durch die Schritte zum Öffnen eines bestehenden Projekts oder zum Erstellen eines neuen Projekts. Ggf. werden zuvor noch fehlende Tools nachinstalliert.

Für einen ersten Test ist es erforderlich, ein Projekt anzulegen, analog zur Vorgehensweise in der Programmiersprachen Java. Eine einzelne Swift-Datei ist nicht ausreichend. Alle notwendigen Dateien und die Projektstruktur werden automatisch generiert.
Sollte der Willkommens-Bildschirm nicht angezeigt werden, stehen Ihnen alle Optionen über das Menü „Datei > Neu > Project“ zur Verfügung.

Beim Erstellen eines neuen Projekts müssen Sie zunächst ein Template auswählen. Ein Template enthält alle Komponenten für ein vollständiges, ausführbares Programm, einschließlich Dateien und Projektstruktur.
In der oberen Leiste wählen Sie das Betriebssystem, für das Sie die App erstellen möchten. Über die Icons wählen Sie die Art der Anwendung. Für den Anfang ist die Option „App“ die richtige Wahl. Die meisten Tutorials für Einsteiger konzentrieren sich auf die Entwicklung von Apps für iOS.

Im nächsten Schritt vergeben Sie einen Namen für das neue Projekt. Sie können „Team“ zunächst auf „None“ belassen. Für „Organization Identifier“ reicht ein Platzhalter wie z.B. „com.example“. „Interface“ und „Language“ sind bereits vorgegeben. „Storage“ gibt an, wo später Daten des Benutzers gespeichert werden sollen. Dies können Sie zunächst ebenfalls auf „None“ belassen.
Organization Identifier – Dies ist eine Reverse-DNS-Zeichenfolge zur Identifizierung Ihrer Organisation. Bevor Sie eine App im Appstore veröffentlichen, müssen sie eine solche Unternehmenskennung haben und den Identifier entsprechend ersetzen.
Organisationsname – Dies ist der Name, der in allen Textbausteinen in Ihrem Projektordner erscheinen wird. Dieser Name ist nicht identisch mit dem Namen, der im App Store für Ihre App erscheint.
Beide Kontrollkästchen können deaktiviert werden oder bleiben.

Und schon ist ein erstes Programm entstanden! Im Beispiel unten für den Mac. Im unteren Fensterbereich wird eine Vorschau angezeigt mit der Ausgabe des obligatorischen „Hello, World!“

Die linke Seitenleiste enthält den „Navigator“, der Zugriff auf die Projektdateien ermöglicht.
Die rechte Seitenleiste zeigt den Inspector, der unter anderem Detailinformationen und die Möglichkeit zur Bearbeitung von Programmteilen bereitstellt.
Der mittlere Bereich ist der Editor, darunter befindet sich die Vorschau (Canvas).

Um mehr Platz für den Code im Editor zu schaffen, können Sie die Seitenleisten durch einen Klick auf die nachstehende Schaltfläche einklappen:

oder die Tastenkombination cmd
+ 0
für den Navigator und opt
+ cmd
+ 0
für den Inspector, alternativ auch über das Menü „View“.
UI Textgröße
Die Textgröße der Benutzeroberfläche lässt sich über das Menü Xcode > Settings > Allgemein anpassen. Im Bereich des Navigators (der linken Seitenleiste mit dem Dateibaum) können Sie mit der Option „Navigator Size: Large“ eine größere Anzeige wählen.
Für eine bessere Übersicht über die Dateien können Sie die Dateiendungen mit der Option „File Extensions: Show All“ einblenden.

Themes
Unter dem Menüpunkt „Themes“ finden Sie verschiedene Themen zur Auswahl. Jedes Thema kann individuell farblich angepasst werden, indem Sie eine lokale Kopie erstellen. Sie können auch die Schriftart und die Schriftgröße wählen. Auf dem Screenshot sehen Sie das Thema „Civic“ mit der Schriftart „SF Mono Regular“ und einer Schriftgröße von 23 pt.

Gut eignen sich auch die Presentation-Themes, sie haben bereits größeren Text und sind etwas kontraststärker:

Für jedes Thema kann auch die Schrift des Terminals (Console) angepasst werden.

Im Editorbereich können Sie den Text mit den Tastenkombinationen
cmd + Plus-Taste bzw. Minus-Taste oder Bindestrich
vergrößern und verkleinern.
Weitere Anpassungsmöglichkeiten gibt es nicht, sodass einige Bereiche recht klein bleiben. Im Screenshot unten die Ansicht für die Grundeinstellungen eines Projekts.

Alle Elemente von Xcode sind sehr gut mit den Bedienungshilfen zugänglich. So können Sie sich beispielsweise in der App-Konfiguration im Screenshot oben alle Optionen und Symbole mit schwebendem Text vergrößert anzeigen und vorlesen lassen.
Alternativ können Sie, wie überall auf dem Mac, die Bildschirmlupe verwenden. Diese aktivieren Sie, indem Sie bei gedrückter ctrl-Taste mit zwei Fingern auf dem Trackpad nach oben streichen. Die Funktion muss jedoch über die Bedienungshilfen gesondert aktiviert sein.
Sowohl das Vorlesen mittels „Gesprochene Inhalte“ als auch mit VoiceOver funktioniert in allen Bereichen.
matching braces – Klammernpaare
Zusammengehörende Klammern finden:
Bewegt man den Cursor hinter eine öffnende oder schließende Klammer, so wird die zugehörige Klammer kurzfristig (für eine Sekunde) farbig hervorgehoben. Die Dauer der Hervorhebung reicht aber nicht aus, um die zweite Klammer in längeren Abschnitten und bei erhöhter Textgröße zu finden.
Abhilfe schafft die Markierung des Abschnittes:
- Doppelklicken auf eine Klammer bewirkt eine Hervorhebung des gesamten vom Klammerpaar umschlossenen Bereiches,
- hat man auf diese Weise den gesamten Bereich hervorgehoben, so kann man mit der rechten oder linken Pfeiltaste zur jeweils entsprechenden anderen Klammer springen,
- den Bereich „zusammenfalten“: mit dem Cursor hinter der öffnenden Klammer und der Tastenkombination
opt + cmd + <-
(Option + Command + Pfeil-links) und mit Pfeil-rechts wieder entfalten.
Shortcuts
Viele Tastenkombinationen beschleunigen die Arbeit im Editor – einige Beispiele:
neue Datei erstellen | command + N |
---|---|
Vorschau anzeigen | option + command + P |
Quick-Help | hold option + click variable |
Block-Comment | command + ß |
Canvas einblenden | option + command + Enter |
Quick Actions | command + Shift + A |
Navigator ein- und ausblenden | command + 0 |
Inspector ein- und ausblenden | command + opt + 0 |
Alle Befehle und deren Key Bindings können Sie auch über die Menüleiste ausfindig machen, Eine Übersicht bietet „Quick Actions“ über die Tastenkombination
cmd
+ Shift
+ A
Die Optionen für Kommentare und Formatierung sind unter dem Menüpunkt „Editor“ angeordnet. Ein schneller Weg einen Befehl zu finden ist der Menüpunkt Hilfe: tippt man die Anfangsbuchstaben des Befehls dort ein, schlägt Xcode passende Befehle vor und zeigt den Weg dorthin.


Canvas – Vorschau
Im rechten oder auch im unteren Bereich des Editors kann eine Vorschau eingeblendet werden. Die Option „Canvas“ aus dem Menü „Editor“ muss mit einem Haken versehen sein. Die Vorschau zeigt die Ausführung des erstellten Programms auf dem zuvor gewählten Gerät. Alle aktuellen Änderungen am Code werden unmittelbar angezeigt.

Über die Schaltflächen unten rechts vergrößert man die Darstellung oder setzt sie wieder auf eine passende Größe zurück. Tastenkombinationen oder Gesten funktionieren im Preview für Iphones leider nicht. Im Preview für einen Mac aber schon, auf dem Trackpad mit zwei Fingern auseinander oder zusammen ziehen. Über das Menü „Editor > Canvas > Zoom Canvas“ lässt sich eine Vergrößerung verschiedener Stufen bis 400% auswählen.

Simulator
Zusätzlich zum Preview können Sie ihr Programm in einem Simulator für das jeweilige Gerät testen. Über die dreieckige Schaltfläche am oberen Editorrand, per Shortcut cmd
+ R
oder über das Menü „Product > Run“ startet man ihn.

Die Tastenkombination cmd
+ Q
schließt den Simulator.
Playground
Ein Xcode- Playground ist eine Test-Umgebung in der Sie Code schreiben und ausführen können. Das Ergebnis wird unmittelbar angezeigt. Ein Playground eignet sich nicht nur zum Lernen, sondern auch generell zum Ausprobieren von Swift-Code und zum Erstellen kurzer Dokumentationen.
Die Option zum Erstellen eines Playgrounds wird im Willkommensfenster nicht mehr angezeigt, man erreicht sie über das Menü „File > New > Playground“ oder die Tastenkombination
opt
+ cmd
+ Shift
+ N

Anschließend wählt man ein Template und speichert den Playground über „Next“,
Man erhält dann ein neues Fenster mit einem kleinen „Hello world“- Programm, das auch gleich über das Dreieck-Symbol bei den Zeilennummern gestartet werden kann.

Die Programm- Ausgabe in der Seitenleiste:

Mit zusätzlichen Playgrondseiten kann man den Lerninhalt nach Themen gliedern. Eine neue Seite erstellen Sie über „File > New > Playground Page“ (opt
+ cmd
+ N
).

Neue Seiten können beliebig benannt und auch sortiert werden.
Die Ordner Sources und Resources
Beide Ordner existieren auf der Ebene des Playgrounds selbst, deren Inhalt steht für alle Playground-Seiten zur Verfügung. Zusätzlich hat jede Seite einen eigenen Sources- und Resources-Ordner.
Sources ist für unterstützenden Swift-Quellcode gedacht, der für den Playground oder nur für die einzelne Seite verfügbar sein soll. Resources für Ressourcendateien wie Bilder, Plists, etc. , je nach Ordner für den Playground oder für die Seite.
Dokumentation
Eine Playground-Page kann man verwenden, um Text mit Markdown-Syntax zu verfassen und damit z.B. eine kurze Dokumentation oder ein Tutorial zu erstellen.
Dazu stellen Sie dem eigenen Text zwei Schrägstriche, gefolgt von einem Doppelpunkt voran:
//:
Dann sollte zunächst eine Überschrift folgen und der weitere Text.
//: # Introduction
Über das Menü „Editor > Show Rendered Markup“ können Sie eine Vorschau anzeigen lassen und auch wieder zurück wechseln.
Wer möchte, legt eine eigene Tastenkombination hierfür im Menü „Settings > Key Bindings“ an.

Vorschau mit erster Überschrift:

Um einen mehrzeiligen Text zu erstellen, benötigen Sie andere Kommentarzeichen:
/*: # Introduction
Eine Einführung in Swift-Playgrounds.
1. Variables
2. Conditions
3. Loops
4. Functions
## Variables
*/
Und die Markdown- Vorschau: zum Beispieltext:

Links
Neue Playground- Seiten enthalten bereits am oberen und unteren Seitenende einen Link auf die vorausgehende und die nächste Seite. Dabei wird die Reihenfolge der Seiten im Navigator zugrundegelegt.
//: [Previous](@previous)
import Foundation
var greeting = "Hello, playground"
//: [Next](@next)
In der Vorschau:

Zusätzlich können Sie weitere Links sowohl auf Playgrond- Seiten als auch auf externe Seiten erstellen. In den eckigen Klammern steht ein frei wählbarer Anzeigename, darauf folgt ohne Leerzeichen der Name der Seite, auf die verlinkt werden soll in runden Klammern.
//:[Home](Introduction)
//:[Homepage](https://zoom-in.info)
Einen Überblick über die Markdown-Syntax bietet die Seite:
Apple Developer, Documentation Markup Formatting
Allerdings haben beim Testen nicht alle Formatierungsregeln, die in der Dokumentation vorgestellt werden, funktioniert.
Tutorials und Bücher
Quellen: