Swift - die neue Programmiersprache von Apple für das Entwickeln von iOS Apps

An der Entwicklerkonferenz (WWDC 2014) vom 2. Juni stellte Apple-CEO Tim Cook unter anderem eine neue Programmiersprache für das Entwickeln von iOS Apps vor: Swift. Unser Kursleiter Marc Buchser teilte seine ersten Eindrücke mit Ihnen.

Autor Marc Buchser
Datum 23.06.2014
Lesezeit 4 Minuten

An der Entwicklerkonferenz (WWDC 2014) vom 2. Juni stellte der Apple-CEO Tim Cook nebst iOS 8 und OS X Yosemite auch eine neue Programmiersprache für das Entwickeln von iOS Apps vor: «Swift» schnell, flink.

Xcode-About

Der erste Eindruck

Zunächst braucht es die Xcode Version 6 beta (2.5 GB), die registrierte Entwickler von http://developer.apple.com herunterladen können. Sobald Xcode 6 installiert und gestartet ist, bietet es nun  beim Erzeugen eines neuen Projekts die Möglichkeit, Swift als Programmiersprache auszuwählen.

Xcode-ProjektAuswahl

Das Projekt unterscheidet sich auf den ersten Blick nicht gross von einem Projekt in Xcode 5. Die Projektdateien sind im linken Teil untergebracht, man findet AppDelegate, ViewController und ein Storyboard, in dem die Layouts erzeugt werden können. Bei genauer Betrachtung fällt auf, dass es nicht mehr zwei Dateien pro Klasse (Header- und Methodendatei) gibt, sondern nur noch eine Datei pro Klasse mit der Endung «.swift». Genau so, wie wir dies auch schon von Java kennen.

Xcode6_Projekt

Kleine Änderungen ersparen viel Tipparbeit

Wenn wir dann in eine Klasse hineinschauen, fallen schon einige Neuerungen auf: So brauchen Imports keine Hash-Tags oder eckigen Klammern mehr, und die Klassen heissen jetzt auch endlich «class». Das sind schon einmal gute Nachrichten, denn hier sparen wir unnötige Tipparbeit und Projekte werden einiges übersichtlicher, wenn wir alles zu einer Klasse in derselben Datei finden. Aber es wird noch besser!

Was immer noch funktioniert, ist das Verbinden von Layoutelementen mit der Code-Datei mittels CTRL-Taste, so können schnell Elemente und Aktionen in einer Klasse deklariert bzw. eingefügt werden. Nur sieht es jetzt etwas anders aus:

@IBOutlet var MeinLabel : UILabel

Was auffällt, ist zunächst das fehlende «;» am Ende der Deklaration – dies fällt bei Swift gänzlich weg. Und wir können neu Variablen einfach mit dem Schlüsselwort «var» deklarieren, wie wir dies von JavaScript her kennen.

Funktionen

Hier sieht es ähnlich einfach aus. Die Funktionen werden mit dem Schlüsselwort «func» eingeleitet und haben in Klammern die Parameter und dahinter, falls vorhanden, die Rückgabewerte – und hier können jetzt mit Swift endlich mehrere Werte zurückgegeben werden, wo Objective-C nur jeweils einen Rückgabewert erlaubt.

Damit können wir auch schon loslegen in der Klasse ViewController.swift. Nachdem wir eine Verbindung zu einem neu erstellten Knopf auf dem Layout hergestellt haben, können wir in der Methode nun mit einfachen Mitteln eine AlertView auf den Bildschirm zaubern:

Xcode6_AlertView

Alles was es braucht, ist eine Variable «var», der eine AlertView zugewiesen wird. Danach setzen wir noch ein paar Eigenschaften – genau wie dies auch mit Java oder JavaScript gemacht wird – und rufen die Methode «show()» auf, die die AlertView anzeigt. Noch drei Zeilen mehr und wir können auch den Knopf auswerten, der gedrückt wurde. Schon ist die erste kleine App fertig, die einen freundlich im iOS-8 Stil zu Swift begrüsst.

HalloSwift

Fazit

Auch wenn Xcode 6 erst in der Beta-Version vorliegt, es macht schon einen überraschend guten ersten Eindruck – der Simulator startet noch einmal schneller als beim Vorgänger und die wichtigsten Funktionen sind bereit. Wo es interessant wird, vor allem auch für Java-/Javascript oder PHP-Programmierer ist die vereinfachte Programmiersprache Swift. Apple hat hier das Beste aus allen Programmier- und Skriptingsprachen zusammengepackt und noch etwas vereinfacht, dies ergibt eine kompakte und schnell zu lernende Umgebung.

Ebenfalls spannend wird es in der Spiele-Entwicklung, hier hat Apple mit dem SceneKit nachgelegt, nachdem sie in iOS-7 bereits ein SpriteKit eingebaut hatten. So können z.B. nun einfacher Szenen mit Schwerkraft oder Lichtquellen erzeugt werden.


Über den Autor

Marc Buchser

Marc Buchser ist als freier Programmierer tätig. Daneben führt er Programmierkurse und Seminare für Schulen und Firmen durch. Er programmiert in C, C++, Objective-C, Java und Swift.