Während der WWDC gibt Apple Entwicklern traditionell einen Einblick in die nächste Hauptversion der IDE, Xcode. Mit jeder Hauptversion verbessert das Unternehmen seine Entwickler-Tools und fügt eine Reihe überzeugender neuer Funktionen hinzu. Und dieses Jahr war es nicht anders.
Bis Xcode 8 war jede Version von Xcode an eine bestimmte Version der Programmiersprache Swift gebunden. Dies ist ab Xcode 8 nicht mehr der Fall. Swift 3 führt eine Reihe von Änderungen ein, und eine beträchtliche Anzahl dieser Änderungen bricht.
Mit Xcode 8 erstellte Projekte verwenden standardmäßig Swift 3. Glücklicherweise enthält Xcode 8 eine Build-Einstellung, die es Entwicklern ermöglicht, sich an Swift 2, Swift 2.3, zu halten, um genau zu sein.
Dies bedeutet, dass Sie auswählen können, wann Sie ein Projekt nach Swift 3 migrieren möchten. Um ein Ziel für Swift 2.3 zu konfigurieren, öffnen Sie die Build-Einstellungen des Ziels und legen Sie fest Verwenden Sie eine ältere Swift-Sprachversion zu Ja.
Xcode 8 enthält auch ein Migrationstool, mit dessen Hilfe Sie ein Projekt nach Swift 3 migrieren können. Ich hatte mit dem Migrationstool von Xcode 7 gemischte Ergebnisse. Swift 3 führt viele, viele Änderungen ein, und ich hoffe, dass sich das Migrationstool mit Xcode 8 erheblich verbessert hat zur Veröffentlichung bereit.
Eine der überraschendsten Funktionen war die Einführung von Source-Editor-Erweiterungen. Entwickler fordern seit vielen Jahren eine native Plugin-Architektur. Source Editor-Erweiterungen sind ein erster guter Schritt in diese Richtung.
Es gibt viel zu mögen über Erweiterungen für Xcode, aber Apple betont, dass sich Erweiterungen derzeit auf die Bearbeitung und Navigation des Inhalts des Quelleditors und der Quelleditorerweiterungen konzentrieren. Xcode 8 enthält sogar eine Vorlage, um Sie auf den neuesten Stand zu bringen.
An der Erweiterungsarchitektur gefällt mir besonders, dass jede Erweiterung in einem separaten Prozess ausgeführt wird. Dies bedeutet, dass eine abstürzende Erweiterung nicht dazu führt, dass Xcode unerwartet beendet wird. Dies führte häufig zu Problemen mit einheimischen Plugins, insbesondere wenn Apple eine neue Hauptversion von Xcode lieferte.
Ein weiterer Vorteil von Erweiterungen gegenüber Plugins ist die Sicherheit. Sie können Erweiterungen mit Ihrem Entwicklerkonto signieren und verteilen. Apple hat auch erwähnt, dass Sie den Mac App Store zum Verteilen von Erweiterungen verwenden können. Dies ist eine großartige Option, wenn Sie mit Ihren Erweiterungen Geld verdienen möchten.
Ich freue mich sehr auf die Quelltext-Editor-Erweiterungen. Obwohl ich ein großer Fan von Alcatraz bin, scheint Apples native Implementierung von Erweiterungen der richtige Weg. Ich kann es kaum erwarten zu sehen, welche Art von Erweiterungen Entwickler entwickeln werden. Es gibt bereits ein paar auf GitHub.
Sogar die besten Entwickler verbringen einen erheblichen Teil ihrer Zeit mit dem Debuggen, und Apple weiß, dass bessere Tools erforderlich sind, um diese Aufgabe zu vereinfachen. Mit Xcode 8 werden einige wesentliche Verbesserungen beim Debugging eingeführt.
Das Debuggen von Ansichten ist in Xcode 8 wesentlich leistungsfähiger. Die Zuverlässigkeit wurde verbessert und das Debuggen von mehrdeutigen oder unbefriedigenden Layouts ist dank eines verbesserten View-Debuggers, der Laufzeitprobleme anzeigt, viel einfacher.
Laufzeitprobleme? Stimmt. Xcode 8 führt neben Buildtime-Problemen auch Laufzeitprobleme ein. Wenn Sie zur Laufzeit auf Probleme mit dem automatischen Layout stoßen, zeigt Xcode das Problem als Laufzeitproblem in der Datei an Ausgaben-Navigator auf der Linken. Dies ist eine sehr willkommene Ergänzung.
Xcode 8 bietet auch einen ziemlich beeindruckenden Speicher-Debugger zum Aufspüren von Speicherverlusten und zum Beibehalten von Zyklen. Ich bin nicht sicher, wie nützlich es in der Praxis sein wird, aber es sieht sehr, sehr nett aus.
Code-Signierung ist ein notwendiges Übel für Entwickler, die an Apples Plattformen interessiert sind. Glücklicherweise vergräbt Apple seinen Kopf nicht im Sand. Es versteht die Schmerzen, die die Entwickler haben. Sogar Veteranen haben ab und zu Probleme mit der Code-Signatur. Während des diesjährigen Platforms State of Union machte sich Apple sogar über seine eigenen lustig Problem beheben Ein Knopf, der selten das Problem behebte und die Dinge manchmal noch schlimmer machte.
Probleme bei der Codesignatur sollten mit Xcode 8 der Vergangenheit angehören. Für jedes Ziel können Sie ein Kontrollkästchen aktivieren, in dem Xcode aufgefordert wird, die Codesignatur in Ihrem Namen zu verwalten. Diese Option ist standardmäßig für neue Projekte aktiviert. Wenn diese Option aktiviert ist, verwaltet Xcode Zertifikate, Bereitstellungsprofile und Anwendungskennungen für Sie.
Ich hoffe, Apple hat es diesmal richtig verstanden. Und mit mir Zehntausende anderer Entwickler.
Wenn Sie gerne mit schönster Software arbeiten, können Sie Apples neue San Francisco Mono-Schriftart genießen, die im Lieferumfang von Xcode 8 enthalten ist. Es handelt sich um eine Monospace-Variante von San Francisco, die sich nahtlos in die Systemschriftart von macOS einfügt.
Haben Sie bemerkt, dass die aktuelle Zeile im obigen Screenshot hervorgehoben ist? Dies ist eine weitere willkommene Erweiterung, die Apple zu Xcode 8 hinzugefügt hat. Derzeit verwende ich Backlight for Xcode, um in Xcode 7 den gleichen Effekt zu erzielen. Ich denke, ich brauche das Plugin in Xcode 8 nicht mehr.
Apropos Plugins von Drittanbietern: Derzeit verwende ich das hervorragende KSImageNamed-Plugin von Kent Sutherland, um die Code-Vervollständigung für Bilder in Xcode zu ermöglichen. Ich werde dieses Plugin nicht benötigen, wenn ich zu Xcode 8 wechsle, da diese Funktion jetzt in Xcode integriert ist.
Entwickler verbringen übermäßig viel Zeit damit, die Dokumentation zu durchsuchen und zu lesen. Eine gute Dokumentation ist ein großer Weg und Apples Dokumentation ist ausgezeichnet. Das Durchsuchen der Dokumentation ist eine andere Geschichte.
Dieser Schmerz ist jetzt in Xcode 8 behoben. Das neue Dokumentationsformat sieht großartig aus und der Dokumentationsbrowser ist schnell und einfach zu bedienen. Apple konsolidierte auch die Dokumentation für seine Plattformen, wodurch der Speicherbedarf erheblich verringert wurde.
Und ja, Dokumentation kann wunderschön aussehen. Schauen Sie sich diese Screenshots an, wenn Sie mir nicht glauben.
Es versteht sich von selbst, dass ich nur einen Teil der Neuerungen in Xcode 8 behandelt habe. Die nächste Hauptversion von Xcode ist immer etwas, worauf ich mich freue. Entwickler verbringen so viel Zeit in ihrem Code-Editor und es ist daher verständlich, dass sie sich für die Entwicklung des Guten interessieren, sowohl für die guten als auch für die schlechten. Was ist Ihre Lieblingsfunktion von Xcode 8? Teilen Sie es in den Kommentaren.