Hilfe Warenkorb Konto Anmelden
 
 
   Schnellsuche   
     zur Expertensuche                      
Swift 3 - Das umfassende Handbuch
  Großes Bild
 
Swift 3 - Das umfassende Handbuch
von: Michael Kofler
Rheinwerk Computing, 2016
ISBN: 9783836241281
1174 Seiten, Download: 45944 KB
 
Format: EPUB
geeignet für: geeignet für alle DRM-fähigen eReader Apple iPad, Android Tablet PC's Apple iPod touch, iPhone und Android Smartphones Online-Lesen PC, MAC, Laptop

Typ: A (einfacher Zugriff)

 

 
eBook anfordern
Leseprobe

Vorwort


Apples größte Innovation des Jahres 2014 war aus meiner Sicht weder die Vorstellung der Apple Watch noch die Auslieferung des Bestsellers iPhone 6. Apple hat sich neben den Arbeiten an diesen Produkten einer anderen Baustelle zugewandt und als Reaktion auf die vielen Mängel, die die rund 20 Jahre alte Programmiersprache Objective-C aufweist, eine vollkommen neue Programmiersprache entwickelt: Swift!

In ersten Kommentaren konnten selbst Apple-Fans ihre Skepsis nicht verbergen: Brauchen wir wirklich eine neue Programmiersprache? Doch je mehr Details Apple auf der World Wide Developers Conference (WWDC 2014) verriet, desto größer wurde die Begeisterung der teilnehmenden Entwickler und der Fachpresse.

Warum Swift?

Swift ist für Apple ein Befreiungsschlag: Objective-C dient dem Apple-Universum seit vielen Jahren als Fundament. Das ändert aber nichts daran, dass Objective-C eine Programmiersprache aus den 1980er-Jahren ist, die in keinerlei Hinsicht mit modernen Programmiersprachen mithalten kann.

Swift ist dagegen ein sauberer Neuanfang. Bei der Vorstellung wurde Swift auch Objective-C without the C genannt. Natürlich ist Swift von Objective-C beeinflusst – schließlich muss Swift kompatibel zu den unzähligen Apple-Bibliotheken sein. Swift realisiert viele neue Ideen, greift aber auch Konzepte von C#, Haskell, Java, Python und anderen Programmiersprachen auf. Daraus ergeben sich mehrere Vorteile:

  • Swift zählt zu den modernsten Programmiersprachen, die es momentan gibt.
  • Code lässt sich in Swift syntaktisch eleganter formulieren als in Objective-C.
  • Der resultierende Code ist besser lesbar und wartbar.
  • Swift ist für Programmierer, die schon Erfahrung mit anderen modernen Sprachen gesammelt haben, wesentlich leichter zu erlernen als Objective-C. Vorhandenes Know-how lässt sich einfacher auf Swift als auf Objective-C übertragen.
  • Seit Ende 2015 ist Swift ein Open-Source-Produkt. Swift steht seither auch für Linux zur Verfügung, und der Entwicklungsprozess erfolgt offen und transparent.

Wer mit Apple-Produkten zu tun hat, erwartet Perfektion bis ins kleinste Detail. Bei aller Euphorie für Swift will ich Ihnen nicht verschweigen, dass dies für Swift auch in Version 3 nicht vollständig zutrifft:

  • Die Integration in Xcode ist gut, aber es ist noch Luft nach oben. Beispielsweise fehlen in Xcode Refactoring-Funktionen für Swift.
  • Das Swift-Entwicklerteam versucht, Swift zur optimalen Programmiersprache zu machen. Das geht nicht von heute auf morgen. Es ist absehbar, dass Swift sich in den nächsten Jahren weiterentwickeln wird. Das ist gut so, aber es führt dazu, dass Sie jeden Herbst Ihren Code an die dann gerade neueste Swift-Version anpassen müssen. Die meiste Arbeit erledigt der in Xcode integrierte Konverter automatisch. Aber dennoch wäre mehr Stabilität natürlich angenehmer.

Allen Kinderkrankheiten zum Trotz vereinfacht Swift den Einstieg in die App-Entwicklung enorm. Es ist offensichtlich, dass Swift in wenigen Jahren die Programmiersprache der Apple-Welt sein wird und Objective-C in dieser Rolle ablöst. In naher Zukunft führt an Swift kein Weg vorbei, wenn Sie native Apps für iOS, macOS oder andere Apple-Plattformen entwickeln möchten.

Der Swift-Entwicklungsprozess

Seit Herbst 2015 ist Swift ein Open-Source-Projekt. Die Weiterentwicklung erfolgt vollkommen transparent. Jede neue Idee wird als Proposal veröffentlicht, mit ihren Vor- und Nachteilen diskutiert und kommt schließlich zu einer Abstimmung. Nichtsdestotrotz wird beim Nachlesen der Mailing-Archive schnell klar, dass die Entwicklung von Swift trotz des öffentlichen Charakters sehr stark von Apple-Mitarbeitern gesteuert wird.

Ich befasse mich in diesem Buch selten mit der Frage, warum Swift so ist, wie es ist, sondern beschreibe es in der gerade aktuellen Form. Aber wenn Sie Interesse an den Hintergründen haben und mitverfolgen möchten, wie Swift sich entwickelt, lege ich Ihnen das Studium der folgenden Seiten nahe:

Neu in Swift 3

Im Vergleich zu Swift 2 wurden in Version 3 rund hundert Veränderungen durchgeführt. Zu jeder dieser Veränderungen gibt es einen ausführlichen Vorschlag. Die Abschaffung der Operatoren ++ und -- ist beispielsweise im Proposal 0004 dokumentiert. Links zu diesem und allen anderen Proposals finden Sie auf folgender Seite:

https://apple.github.io/swift-evolution

Es ist hier nicht zielführend, alle Änderungen aufzuzählen. Wenn Sie neu in Swift einsteigen, ist es ohnedies irrelevant, wie Swift in früheren Versionen ausgesehen hat. Und wenn Sie bisher in Swift 2 programmiert haben, kümmert sich der Code-Konverter von Xcode um den Großteil der erforderlichen Änderungen.

Aus meiner Sicht hat sich Swift 3 in den folgenden Punkten radikal verbessert:

  • Bibliotheken: Die Standardbibliotheken sind wesentlich Swift-kompatibler geworden. Viele Methoden, die ursprünglich für Objective-C entwickelt wurden, stehen nun in einer zweiten, Swift-tauglicheren und besser lesbaren Version zur Verfügung. Hier sehen Sie einige Beispiele, die Code aus Swift 2 aktuellem Swift-3-Code gegenüberstellen:
    NSUserDefaults.standardUserDefaults() --> UserDefaults.standard zeichenkette.rangeOfString("such mich") --> zeichenkette.range(of: "such mich") func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) --> func prepare(for segue: UIStoryboardSegue, sender: Any?) let dest = segue.destinationViewController --> let dest = segue.destination txt.stringByTrimmingCharactersInSet( NSCharacterSet.whitespaceAndNewlineCharacterSet()) --> txt.trimmingCharacters(in: .whitespacesAndNewlines)
  • Parameter von Methoden: In Swift 2 wurde der erste Parameter einer Funktion oder Methode anders behandelt als alle weiteren Parameter. In Swift 3 gelten für alle Parameter dieselben Regeln. Da kann man nur fragen: Warum nicht gleich so?
  • Literale für Farben und Bitmaps: Farben und Bitmaps aus Xcassets-Dateien können im Code als Literale eingebaut werden. Diese Literale zeigen die Farbe bzw. eine winzige Vorschau der Bitmap. In diesem Buch lässt sich das schwer abbilden, aber in der Praxis ist das ein ausgesprochen hilfreiches Feature.
  • Generics-Verbesserungen: Beim Umgang mit generischen Typen gab es viele Verbesserungen. Unter anderem können Sie nun generische Aliasse definieren (z.B. typealias StringDictionary<T> = Dictionary<String, T>).

Daneben gibt es viele Detailveränderungen, die aus einem Apple-typischen Perfektionsanspruch resultieren. Sie sind spannend für Entwickler von (Standard-)Bibliotheken, aber für den typischen App-Entwickler nur begrenzt relevant.

Keine Angst vor Swift 4!

Es ist schon ein wenig absurd: Im August 2016, also rund drei Monate, bevor dieses Buch veröffentlicht wurde, begannen bereits die Planungen und erste Arbeiten an Swift 4. Zu den wichtigsten Zielen zählt eine Optimierung der generischen Funktionen. Daneben sollen der Umgang mit Zeichenketten und die Speicherverwaltung verbessert werden. Soweit es der enge Zeitplan zulässt, wird es auch kleinere Spracherweiterungen und fortgesetzte Swift-Anpassungen der Standardbibliotheken geben. Schließlich sollen der Compiler und andere Werkzeuge so gestaltet werden, dass mit Swift 3 entwickelte Bibliotheken unverändert unter Swift 4 weiterverwendet werden können. Derart große Umstellungen wie in Swift 3 sollen diesmal aber vermieden werden.

Müssen Sie sich also vor den zu erwartenden Änderungen in Swift 4 fürchten? Ist es...



nach oben


  Mehr zum Inhalt
Kapitelübersicht
Kurzinformation
Leseprobe
Blick ins Buch
Fragen zu eBooks?

  Navigation
Belletristik / Romane
Computer
Geschichte
Kultur
Medizin / Gesundheit
Philosophie / Religion
Politik
Psychologie / Pädagogik
Ratgeber
Recht
Reise / Hobbys
Sexualität / Erotik
Technik / Wissen
Wirtschaft

  Info
Hier gelangen Sie wieder zum Online-Auftritt Ihrer Bibliothek
© 2008-2024 ciando GmbH | Impressum | Kontakt | F.A.Q. | Datenschutz