9 Jahrmarkt der Nützlichkeiten
»If I had eight hours to chop down a tree, I’d spend the
first six of them sharpening my axe.«
– Abraham Lincoln
Dieses Kapitel zeigt Ihnen Tipps und Tools, die Ihnen die Arbeit mit Xcode und das Erstellen von iOS-Apps erleichtern. Neben einem Rundgang durch Xcode erhalten Sie einen Überblick über die Versionsverwaltung Git und die Verteilung von Apps im Entwicklungsstadium an Beta-Tester.
9.1 Die Struktur von Xcode 4

Bis Xcode 4 orientierten sich der Aufbau und das Design von Xcode am Project Builder von NEXTSTEP – dem Vorgänger von OS X. Insbesondere die Trennung von Xcode und dem Interface Builder in zwei separate Programme war ein Relikt aus NEXTSTEP-Zeiten. 2010 hat Apple mit Xcode 4 die Entwicklungsumgebung komplett überarbeitet und alle zentralen Funktionen in Xcode integriert, so auch den Interface Builder.
Leider ist Xcode 4 noch nicht so stabil wie seine Vorgängerversion, obwohl spätestens die Version 4.4 wesentliche Verbesserungen in puncto Stabilität zeigt. Falls Sie bei der Arbeit dennoch die unschöne Fehlermeldung aus Abbildung 9.1 sehen, sollten Sie zur Rettung Ihrer Projektdaten möglichst Crash wählen. Verwenden Sie Continue nur, wenn Ihr Projekt noch ungesicherte Dateien enthält, die Sie nur aufwendig wiederherstellen können. In diesem Fall sollten Sie nur diese Dateien sichern und Xcode unverzüglich neu starten.
Abbildung 9.1 Wählen Sie möglichst »Crash«.
Letzteres kann indes dazu führen, dass Xcode die Projektdatei zerschießt und Sie am Ende mit einem kaputten Projekt dastehen. Sie haben also die Wahl zwischen Pest und Cholera.
Crashreports
Wenn OS X Sie nach einem Absturz von Xcode fragt, ob es einen Fehlerbericht an Apple senden soll, sollten Sie zustimmen. Apple kann mithilfe dieser Berichte die Fehler in Xcode eliminieren.
9.1.1 Das Hauptfenster und die Werkzeugleiste

In Abbildung 9.2 sehen Sie eine schematische Darstellung des Xcode-Hauptfensters, das in sechs Hauptbereiche aufgeteilt ist. Xcode muss nicht unbedingt immer alle Bereiche anzeigen, denn es lassen alle Bereiche am Rand über das Menü View ein- und ausblenden.
Abbildung 9.2 Schematische Darstellung des Xcode-Hauptfensters
Die Werkzeugleiste (siehe Abbildung 9.3) enthält auf der linken Seite Buttons für die Programmablaufsteuerung 1, die Sie bereits kennengelernt haben. Das Schema und die Laufzeitumgebung können Sie über die Elemente 2 und 3 auswählen. Über den Button Breakpoints 4 können Sie alle Breakpoints des Debuggers auf einmal deaktivieren beziehungsweise aktivieren. Der helle Bereich in der Mitte 5 gibt Ihnen eine Rückmeldung über die Aufgaben, die Xcode momentan ausführt.
Abbildung 9.3 Die Werkzeugleiste
Über die Buttongruppe View 7 können Sie den linken, unteren und rechten Bereich ein- beziehungsweise ausblenden, und der Button Organizer 8 öffnet das gleichnamige Fenster, das Abschnitt 9.3 beschreibt. Sie können sich die Dateien im Editor auf drei unterschiedliche Arten anzeigen lassen. Den Anzeigemodus wählen Sie dabei über die Buttongruppe Editor 6 aus.
Die Inspektoren und den Debuggerbereich haben Sie bereits in Kapitel 3, »Views und Viewcontroller«, kennengelernt, weswegen dieses Kapitel nicht mehr detailliert darauf eingeht.
9.1.2 Die Navigatorspalte

Die Navigatorspalte (siehe Abbildung 9.4) stellt Ihnen sieben unterschiedliche Navigatoren zur Verfügung, mit denen Sie sich durch die Daten der App bewegen können. Die Navigatoren stellen dabei ihre Inhalte als Liste oder aufklappbaren Baum dar. Wenn Sie ein Element in dem gerade geöffneten Navigator auswählen, zeigt Xcode es im Editorbereich an.
Jeder Navigator hat am unteren Rand eine kleine Werkzeugleiste 8, mit deren Elementen Sie den Inhalt des Navigators bearbeiten oder filtern können. Die einzelnen Elemente unterscheiden sich natürlich von Navigator zu Navigator. Die Funktionsweise ist jedoch bei allen ähnlich. Über einen Plus- und einen Minusbutton können Sie neue Elemente hinzufügen beziehungsweise bestehende entfernen. Mit der Suchleiste auf der rechten Seite können Sie die Elemente nach ihrem Namen filtern. Die anderen Buttons filtern entweder die Elemente nach einem festgelegten Kriterium oder sie wechseln zu einer alternativen Ansicht. Der Tooltip des Buttons enthält dabei jeweils eine gute Beschreibung seiner Funktion.
Abbildung 9.4 Der Navigatorbereich von Xcode
Der Projektnavigator 1 zeigt Ihnen alle Projekte mit den Dateien des gerade geöffneten Workspaces an. Auf Workspaces geht Abschnitt 9.4.1 genauer ein. Über den Symbolnavigator 2 können Sie sich alle Programmelemente (wie Klassen, Methoden und Propertys) Ihres Projekts anzeigen lassen. Am oberen Rand des Navigators befindet sich dabei eine Leiste, mit der Sie zwischen hierarchischer und flacher Darstellung umschalten können. Bei der hierarchischen Darstellung zeigt Xcode Unterklassen jeweils innerhalb ihrer Oberklasse an (siehe Abbildung 9.5).
Abbildung 9.5 Symbolnavigator in hierarchischer Darstellung
Alle Symbole anzeigen
Über den linken Button mit der Beschriftung C in der Werkzeugleiste dieses Navigators können Sie die Darstellung umschalten. Bei einem neuen Projekt zeigt der Navigator nur die Klassen und Protokolle auf der obersten Ebene an. Über diesen Button können Sie sich indes auch alle anderen Arten (z. B. Enums, Unions) anzeigen lassen.
Die globale Suche (3 in Abbildung 9.4) ermöglicht es Ihnen, Ihre Projekte nach einer Zeichenkette oder einem regulären Ausdruck zu durchsuchen. Sie können die gefundenen Texte auch ersetzen, in dem Sie auf Find vor dem Suchfeld klicken und Replace auswählen. Der Issue Navigator 4 zeigt Ihnen eine Liste mit allen Warnungen und Fehlern des letzten Erzeugungsprozesses des Projekts an.
Wenn Sie die Ausführung eines Programms während einer Debugging-Sitzung unterbrechen, zeigt Ihnen der Debug Navigator 5 alle Threads mit deren Aufrufstapeln an. Sie können über diesen Navigator zu allen aktuellen Ausführungspunkten der App gelangen. Das ist für Sie im Allgemeinen nur dann interessant, wenn Sie auch tatsächlich nebenläufige Programme erstellen. Über den Breakpoint Navigator 6 können Sie die Breakpoints Ihrer Projekte ansehen und verwalten.
Der Log Navigator 7 erlaubt Ihnen die Ansicht der vollständigen Berichte nach der Erzeugung oder Ausführung eines Projekts, wobei der Navigator Ihnen eine Historie der Berichte anzeigt. Die Inhalte der Berichte können Sie im Editorbereich sehen. Bei den Buildlogs finden Sie hier zu jedem Logeintrag eine Auflistung aller Schritte mit den Aufrufen und Ausgaben der Hilfsprogramme. Xcode kürzt leider manchmal die Fehlermeldungen sehr stark, und so kann es in einigen Fällen helfen, sich die genaue Meldung hier anzusehen. Sie können dabei die Meldungen über ein Symbol aufklappen, das allerdings nur erscheint, wenn Sie mit der Maus darüber fahren (siehe Abbildung 9.6).
Abbildung 9.6 Anzeige des Buildlogs mit aufgeklapptem Eintrag
9.1.3 Der Utilitybereich

Der Utilitybereich (siehe Abbildung 9.7) enthält verschiedene Bibliotheken mit Programmelementen. Über die Leiste am oberen Rand können Sie dabei zwischen den verschiedenen Bibliotheken wechseln. Über das Menü 5 können Sie die Anzeige einschränken, und mit den Buttons daneben 6 wechseln Sie zwischen Objekt und Listendarstellung.
Abbildung 9.7 Der Utilitybereich
Elemente für OS X ausblenden
Die File Template Library und die Code Snippet Library zeigen Ihnen auch Elemente für OS X an. Sie können diese über das Menü 5 ausblenden, indem Sie den Punkt iOS wählen. Die Objektbibliothek zeigt Ihnen nur Elemente an, die Sie unter Cocoa Touch verwenden können. Wenn Sie ein neues Projekt öffnen, erscheint in bestimmten Fällen jedoch die OS X-Bibliothek. Sobald Sie allerdings eine XIB-Datei öffnen, wechselt sie zur richtigen Bibliothek.
Wenn Sie ein Objekt in den Bibliotheken 1 bis 3 anklicken, zeigt Xcode Ihnen eine kurze Beschreibung dazu an. Die File Template Library 1 enthält die Schablonen für verschiedene Dateiarten. Sie können sie verwenden, indem Sie das gewünschte Element in den Projektnavigator ziehen. Sie haben hiermit also eine alternative Möglichkeit, neue Dateien anzulegen. In der Code Snippet Library 2 finden Sie mehrere nützliche Codeschnipsel (Code Snippets). Sie können diese Bibliothek um eigene Elemente erweitern, was Abschnitt 9.1.5, »Autovervollständigung und Codeschnipsel«, beschreibt. Die Objektbibliothek 3 enthält schließlich die Elemente für die Oberflächengestaltung. Sie wurde bereits in Kapitel 3, »Views und Viewcontroller«, beschrieben.
In der Medienbibliothek 4 finden Sie alle Medien (z. B. Bilder, Videos, Audiodateien) Ihres Workspaces. Sie können Bilder von dort direkt in Ihre geöffneten Interface-Dateien ziehen. Der Interface Builder legt dann automatisch passende Imageviews dafür an.
9.1.4 Der Editor

Gewöhnlich haben Sie den linken Knopf dieser Gruppe selektiert, und der Editor befindet sich im Standardmodus, in dem er nur den Inhalt einer Datei anzeigt. Über den rechten Knopf dieser Gruppe öffnen Sie die Versionsanzeige, die Abschnitt 9.6, »Versionsverwaltung mit Git«, unter anderem beschreibt. Den Assistant Editor können Sie über den mittleren Knopf öffnen. Sie haben ihn bereits in Kapitel 3 kennengelernt. In diesem Modus stellt Xcode den Inhalt von zwei beliebigen Dateien nebeneinander dar. Sie verwenden diese Möglichkeit in der Regel für die Anzeige einer Interface- neben einer Headerdatei.
Abbildung 9.8 Der Editorbereich
Häufig zeigt Ihnen Xcode allerdings in dieser Situation nicht die gewünschte Headerdatei an, die Sie jedoch im Editorbereich (siehe Abbildung 9.8) über die Sprungleiste (1 bis 6) auswählen können. Dazu können Sie einfach die Pfadelemente (3 bis 5) mit der Maus anklicken und aufklappen, und auch die Elemente (z. B. Methoden, Propertys) innerhalb einer Datei lassen sich über das Menü für die Dokumentelemente 6 schnell finden.
In der Sprungleiste finden Sie außerdem zwei Pfeile 2, mit denen Sie die Historie der geöffneten Dateien wie bei einem Webbrowser durchsuchen können. Häufig wollen Sie von einer Datei in eine zugehörige andere Datei wechseln – beispielsweise von der Header- in die Implementierungsdatei oder in die Headerdatei der Oberklasse, die das Menü mit den zusammengehörenden Dateien 1 auflistet.
Links neben jedem Editor zeigt Xcode zwei Leisten an. Die Breakpointleiste 7 zeigt nicht nur die Breakpoints 8 und den Programmzeiger 9 an, sondern kann auch Zeilennummern darstellen. Diese Option lässt sich über die Xcode-Einstellungen (
+
) unter dem Reiter Text Editing einschalten. Dazu brauchen Sie dort nur den Haken vor der Option Line Numbers zu setzen (siehe Abbildung 9.9). Dort können Sie außerdem über den Punkt Page guide at column eine Begrenzungslinie (siehe J in Abbildung 9.8) im Editor definieren. Dieser Strich hat jedoch keine Auswirkungen auf den Quelltext,
sondern zeigt Ihnen nur an, wo Sie lange Zeilen ungefähr umbrechen sollten. Diese
Option ist beispielsweise dann nützlich, wenn Sie Ihre Quelltexte ausdrucken möchten.
Abbildung 9.9 Die Einstellungen des Xcode-Editors
9.1.5 Autovervollständigung und Codeschnipsel

Bei der Arbeit mit Xcode haben Sie sicherlich bereits die Autovervollständigung genutzt. Der Editor in Xcode zeigt Ihnen beim Tippen Vorschläge an, die Sie durch
Drücken von
annehmen oder von
ablehnen können. Wenn Sie
+
drücken, zeigt Ihnen der Editor eine Liste mit passenden Vorschlägen an (siehe Abbildung 9.10). Sie können über die Pfeiltasten und
einen Vorschlag auswählen oder durch
die Liste schließen.
Abbildung 9.10 Die Autovervollständigung in Aktion
Wenn Sie einen Eintrag aus der Liste auswählen, fügt die Autovervollständigung den
entsprechenden Text ein. Dabei enthält der eingefügte Text bei bestimmten Vervollständigungen
Platzhalter, die der Editor als schwarzen Text in einem blauen Oval darstellt (siehe Abbildung 9.11). In diesem Fall hat Xcode einen Codeschnipsel aus der entsprechenden Bibliothek
für die Vervollständigung verwendet. Wenn Sie nach der Ersetzung einen Text tippen,
ersetzt der Editor den Platzhalter durch den eingegebenen Text. Falls der Codeschnipsel
mehrere Platzhalter enthält, können Sie durch die
-Taste zum nächsten Platzhalter springen.
Abbildung 9.11 Eingesetzter Codeschnipsel mit Platzhalter
Sie können die Code Snippet Library um eigene Einträge erweitern. Dazu öffnen Sie die Bibliothek und ziehen den gewünschten Text per Drag & Drop darauf (siehe Abbildung 9.12). Xcode legt dann am Ende der Bibliothek einen neuen Codeschnipsel mit dem Namen My Code Snippet an.
Tipp
Sie können die Liste nach Ihren Codeschnipseln filtern, indem Sie in dem Menü (5 in Abbildung 9.7) den Eintrag User auswählen.
Abbildung 9.12 Anlegen eines neuen Codeschnipsels
Wenn Sie den Eintrag in der Liste anklicken, zeigt Xcode Ihnen den Inhalt des Schnipsels an (siehe Abbildung 9.13). Über den Button Edit links unter dem Text können Sie den Schnipsel anpassen.
Abbildung 9.13 Anzeige eines Codeschnipsels
Xcode zeigt Ihnen dann den Dialog aus Abbildung 9.14 an. Sie können hier Ihrem Codeschnipsel einen Titel und eine kurze Beschreibung geben.
Außerdem können Sie unter Platform und Language angeben, für welches Betriebssystem beziehungsweise welche Programmiersprache der
Schnipsel verfügbar ist. Der Completion Shortcut gibt die Zeichenfolge an, die die Autovervollständigung verwendet. Wenn Sie beispielsweise
dafür category verwenden und cat im Editor eingeben, bietet Xcode Ihnen diesen Schnipsel als Vervollständigung an
(siehe Abbildung 9.15). Wenn Sie
drücken, ersetzt Xcode Ihre Eingabe dann durch den Inhalt des Schnipsels.
Abbildung 9.14 Konfiguration eines Codeschnipsels mit Platzhaltern
Das ist allerdings davon abhängig, an welcher Stelle im Programmcode Sie das machen. Wenn Sie cat innerhalb einer Methode oder eines Implementierungsblocks tippen, springt die Vervollständigung nicht an. Das geschieht nur, wenn Sie diese Zeichenfolge auf der obersten Ebene eingeben. Sie können das über Completion Scopes (siehe Abbildung 9.14) steuern. Über den Plusknopf können Sie einem Schnipsel auch mehrere Bereiche, in denen dieser Schnipsel angewandt werden kann, zuweisen.
Abbildung 9.15 Verwendung des neuen Codeschnipsels
Dafür stehen Ihnen die folgenden Werte zur Verfügung:
| Bezeichnung | Bereich |
|
All |
Überall, beliebig |
|
Class Implementation |
Implementierungsblock einer Klasse, also zwischen @implementation Klasse und @end |
|
Class Interface Methods |
Im Methodendeklarationsteil einer Klasse, also zwischen @interface Klasse und @end, allerdings außerhalb der geschweiften Klammern. |
|
Class Interface Variables |
Im Variablendeklarationsteil einer Klasse, also |
|
Code Expression |
Innerhalb von Ausdrücken |
|
Function or Method |
In Funktionen oder Methoden |
|
Preprocessor Directive |
Innerhalb von Präprozessoranweisungen |
|
String or Comment |
Innerhalb von Zeichenketten oder Kommentaren |
|
Top Level |
Außerhalb von allen anderen genannten Blöcken |
Den Text des Schnipsels färbt Xcode entsprechend der Syntax automatisch ein, sodass Sie leicht Fehler erkennen können. Es gibt jedoch nahezu keine Beschränkungen für den Inhalt. Falls Sie Platzhalter verwenden möchten, müssen Sie den Platzhaltertext zwischen <# und #> schreiben – wie beispielsweise <#class name#> in Abbildung 9.14.
Probieren geht über Studieren
Sie sollten ruhig ein paar eigene Codeschnipsel mit Platzhaltern anlegen, um sich
mit dieser Funktion vertraut zu machen. Spielen Sie auch ruhig mal ein bisschen mit
den Gültigkeitsbereichen herum. Sie können Ihre Testschnipsel übrigens über die Taste
oder (Entf) wieder aus der Liste löschen.
9.1.6 Tastaturkurzbefehle

Viele Tastaturkurzbefehle oder auch Tastenkürzel von Xcode können Sie auf einer deutschen Tastatur nicht oder nur sehr schwer verwenden.
Das gilt besonders für alle Kombinationen, die auf Zeichen basieren, für die Sie
und eine Zeichentaste (z. B.
oder
) drücken müssen. Aus diesem Grund entsteht schnell der Wunsch, die Tastenbelegung
anzupassen. Das können Sie in den Einstellungen (Xcode • Preferences... oder
+
) unter dem Reiter Key Bindings tun (siehe Abbildung 9.16).
Abbildung 9.16 Verwaltung der Tastenkombinationen
Xcode kann Tastaturkurzbefehle in Tastenbelegungen zusammenfassen und abspeichern. Sie können mehrere unterschiedliche Tastenbelegungen definieren, von denen Sie jeweils eine aktivieren können. Die Tastenbelegungen stellt der Dialog in Abbildung 9.16 in der Spalte auf der linken Seite dar. Über den Plusknopf am unteren Rand können Sie eine bestehende Belegung kopieren oder eine neue aus der Standardbelegung erzeugen.
Kopieren geht über Studieren
Verändern Sie nicht die Standardbelegung, sondern legen Sie erst eine Kopie an, die Sie verändern. Falls Sie vorher bereits mit anderen IDEs oder Programmeditoren gearbeitet haben, kann es Ihnen den Einstieg in Xcode vereinfachen, deren Tastenbelegung nachzuahmen. Wenn Sie unterschiedliche Tastenbelegungen verwenden möchten, sollten Sie ihnen möglichst aussagekräftige Namen (z. B. deutsche Tastatur, Smultron Editor) geben.
In der Tabellenansicht auf der rechten Seite des Dialogs finden Sie eine Spalte mit allen verfügbaren Befehlen. Die Spalte daneben zeigt die dazugehörenden Tastenkürzel an. Über die Elemente in der Leiste über der Tabelle können Sie die Einträge nach festgelegten Kriterien filtern oder nach einem Text durchsuchen.
Um das Kürzel eines Eintrags zu ändern, führen Sie einen Doppelklick in der Spalte
Key und der Zeile des entsprechenden Befehls aus. Xcode zeigt in dieser Zelle dann einen
Cursor an. Sie können nun die Tastenkombination drücken, die Sie für die Ausführung
des Befehls haben möchten. Die Eingabe können Sie indes nicht durch einen Tastendruck
beenden, da jeder erneute Tastendruck Ihre vorherige Eingabe überschreibt. Sie müssen
stattdessen mit der Maus in einen anderen Bereich des Dialogs klicken. Wenn Sie Kürzel
eines Befehls löschen möchten, selektieren Sie die entsprechende Zeile, ohne dass
der Cursor erscheint, und drücken
oder
.
9.1.7 Tabs und Fenster

Ein wichtiges Hilfsmittel bei der Navigation in Xcode sind Tabs. In Xcode 3 befand
sich z. B. die Konsole mit den Ausgaben des Programms in einem eigenen Fenster. Das
macht beim Ausführen des Programms aus Xcode heraus das Überwachen der Konsole einfach.
Entweder wechseln Sie mit
+
von Xcode in die Konsole, oder Sie schieben das Konsolen-Fenster in einen freien
Bereich des Bildschirms.
In Xcode 4 ist dies durch das eine Fenster nicht möglich. Hier können Sie entweder
mit der Maus die verschiedenen Ansichten im Navigationsbereich auswählen, was einer
ergonomischen Arbeit stark widerspricht, oder Sie verwenden Tabs. Einen neuen Tab
erzeugen Sie (wie z. B. in Safari auch) über die Tastenkombination
+
.
Shortcuts für Tabs
Mit den Tastenkombinationen
+
und
+
wechseln Sie zum vorherigen beziehungsweise folgenden Tab. Auf einer deutschen Tastatur
entspricht das
+
+
beziehungsweise
+
+
, was Xcode jedoch leider nicht versteht. Es fasst
+
eben nicht als
auf. Wenn Sie die Tabs mit einer deutschen Tastatur ansteuern möchten, sollten Sie
also die Tastenkürzel dafür anpassen.
Xcode speichert die von Ihnen angelegten Tabs ab und stellt sie wieder her, wenn Sie
das Projekt erneut öffnen. Sie können jedoch eigene Tabs nicht nur für Ihre Quellcodedateien,
sondern auch für den Debuggerbereich verwenden. Legen Sie dazu über
+
einen neuen Tab an, und öffnen Sie darin den Debuggerbereich über das Kürzel
+
+
. Durch einen Doppelklick in die Menüleiste (siehe den Mauszeiger in Abbildung 9.17) des Debuggerbereichs vergrößert er sich auf die volle Höhe.
Abbildung 9.17 Eigener Tab für die Debuggerkonsole
Sie können in Xcode 4 allerdings auch mit mehreren Fenstern arbeiten. Um ein neues Fenster zu öffnen, führen Sie einfach einen Doppelklick auf einer beliebigen Datei im Projektnavigator aus. Xcode öffnet diese Datei dann in einem neuen Fenster, in dem nur der Editorbereich sichtbar ist. Sie können jedoch auch in diesem Fenster alle Bereiche aus Abbildung 9.2 über die Untereinträge des Menüs View anzeigen lassen.
9.1.8 Liebling, ich habe das SDK geschrumpft

Seit Xcode 4.2 enthält das Diskimage mit der IDE und dem iOS SDK wesentlich weniger Dateien, sodass der Umfang des Pakets von ca. 4,6 GB für Xcode 4.0.2 mit iOS SDK 4.3 auf ca. 1,8 GB für Xcode 4.2 mit iOS SDK 5.0 geschrumpft ist. Apple hat, um diese Einsparung zu erzielen, die SDKs für die älteren iOS-Versionen entfernt. Seit Xcode 4.3 liefert Apple die aktuelle IDE nur über den App Store aus, was den Installationsprozess verbessert, da Sie hier relativ einfach abgebrochene Downloads wieder aufnehmen können.
Wenn Sie allerdings Ihre App unter einem älteren SDK auf einem Gerät oder im Simulator testen möchten oder die entsprechende Dokumentation einsehen wollen, müssen Sie diese Teile nachinstallieren. Im Gegensatz zu allen Xcode-Versionen bis 4.1 einschließlich brauchen Sie die Pakete jedoch nur einmal und nicht bei jedem Update erneut zu installieren. Das ist besonders für Entwickler mit einem langsameren Internetzugang erfreulich.
Um Pakete zu installieren, öffnen Sie in den Einstellungen unter Xcode • Preferences... den Reiter Downloads. Dort befindet sich der in Abbildung 9.18 dargestellte Dialog, der eine Liste mit den verfügbaren Pakten enthält. Sie können die abgebildete kurze Beschreibung zu jedem Paket einblenden, indem Sie auf das kleine Rechteck mit dem Dreieck klicken.
Abbildung 9.18 Nachinstallation von Paketen
Um ein Paket zu installieren, drücken Sie einfach den entsprechenden Install-Button. Xcode fragt Sie nach einem Administratorkennwort, da es das Paket in den Systemverzeichnissen installiert, und startet den Download und die Installation nach der Authentifizierung. Über das Paket iOS 4.3 Simulator erhalten Sie beispielsweise die Möglichkeit, Ihre Apps auch in einem Simulator für die ältere Betriebssystemversion zu testen. Sie können dann einfach über die Schema-Auswahl umschalten (siehe Abbildung 9.19).
Abbildung 9.19 Zusätzlicher Simulator für iOS 4.3
Die Installation zusätzlicher Dokumentationspakte erfolgt über den Dialog, der sich hinter dem Button Documentation in Abbildung 9.18 verbirgt. Auch hier zeigt Ihnen Xcode eine Liste mit den verfügbaren Paketen an (siehe Abbildung 9.20), und die Installation erfolgt so wie oben.
Abbildung 9.20 Nachinstallation von Dokumentation
Beide Dialoge bieten Ihnen die Möglichkeit, regelmäßig nach Aktualisierungen zu suchen. Dazu brauchen Sie nur das Häkchen vor Check for and install updates automatically zu setzen. Über den Button Check and Install Now starten Sie den Aktualisierungsprozess manuell.
9.1.9 Snapshots
Xcode enthält neben der Integration externer Versionsverwaltungen (siehe Abschnitt 9.6, »Versionsverwaltung mit Git«) auch einen integrierten Snapshot-Mechanismus für die
Verwaltung von Versionsständen. Ein Snapshot ist ein komplettes Abbild des Projekts, differenziert also nicht zwischen den einzelnen
Dateien eines Projekts. Sie können einen Snapshot über den Menüpunkt File • Create Snapshot... beziehungsweise die Tastenkombination
+
+
erstellen. In dem Dialog, der dann erscheint (siehe Abbildung 9.21), haben Sie die Möglichkeit, einen Titel und eine Beschreibung zum Snapshot hinzuzufügen.
Im Sinne der Übersichtlichkeit sollten Sie diese Möglichkeit intensiv nutzen.
Da kommt alles rein
Ein Snapshot speichert alle Dateien Ihres Projekts in einem Archivpaket, das die Daten in einem eigenen Format ablegt. Bei größeren Projekten können Archive deshalb schnell sehr viel Platz beanspruchen, wenn das Projekt viele große Dateien (z. B. Bilder, Videos, Audiodateien) enthält. Je größer das Projekt ist, umso länger dauert auch die Erstellung eines Snapshots. Sie sollten also gelegentlich nicht mehr benötigte Snapshots löschen (siehe dazu Abschnitt 9.3.2, »Projektverwaltung«).
Abbildung 9.21 Erstellen eines Snapshots
Über den Menüpunkt File • Restore Snapshot... können Sie den Projektstand aus einem Snapshot wiederherstellen. Dabei überschreibt Xcode natürlich den aktuellen Stand. Wenn Sie die Funktion aufrufen, müssen Sie zunächst über einen Dialog (siehe Abbildung 9.22) den Snapshot auswählen, den Sie restaurieren möchten.
Abbildung 9.22 Wiederherstellung eines Snapshots
Danach zeigt Xcode Ihnen ein Fenster, mit dem Sie die Änderungen zwischen dem aktuellen Stand und dem Snapshot miteinander vergleichen können (siehe Abbildung 9.23).
Die linke Spalte enthält dabei alle Dateien, die sich in beiden Ständen des Projekts unterscheiden. Über das Häkchen vor jeder Datei können Sie die entsprechende Datei von der Wiederherstellung ausschließen. Für die ausgewählte Datei zeigt die mittlere Spalte deren Stand im Snapshot und die rechte Spalte den aktuellen Projektstand an. Dabei visualisieren dunkelblaue Linien und hellblaue Flächen die einzelnen Änderungen.
Abbildung 9.23 Snapshot und aktuellen Stand des Projekts vergleichen
Wenn Sie den Button Restore drücken, fragt Xcode Sie gegebenenfalls noch, ob Sie einen Snapshot des aktuellen Projektstands erstellen möchten. Xcode übernimmt Ihre Entscheidung in die Projekteinstellungen und belästigt Sie in Zukunft nicht mehr mit dieser Frage. Sie können diese Einstellung indes unter dem Reiter Snapshots in File • Project Settings... nachträglich über das Häkchen mit dem Titel Create snapshot of project before mass-editing operations ändern (siehe Abbildung 9.24).
Abbildung 9.24 Nachträgliche Änderung der Snapshot-Einstellungen
Wie dieser Titel schon vermuten lässt, schalten Sie damit automatische Snapshots bei allen Operationen ein, die Änderungen an mehreren Dateien auf einmal vornehmen. Dazu gehören beispielsweise Refactorings.
Ihr Kommentar
Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.




























Jetzt bestellen





