Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Geleitwort
Vorwort
1 Hello iPhone
2 Die Reise nach iOS
3 Sehen und anfassen
4 Alles unter Kontrolle
5 Daten, Tabellen und Controller
6 Models, Layer, Animationen
7 Programmieren, aber sicher
8 Datenserialisierung und Internetzugriff
9 Multimedia
10 Jahrmarkt der Nützlichkeiten
Stichwort

Buch bestellen
Ihre Meinung?

Spacer
Apps programmieren für iPhone und iPad von Klaus M. Rodewig, Clemens Wagner
Das umfassende Handbuch
Buch: Apps programmieren für iPhone und iPad

Apps programmieren für iPhone und iPad
Rheinwerk Computing
1172 S., geb., mit DVD
49,90 Euro, ISBN 978-3-8362-2734-6
Pfeil 10 Jahrmarkt der Nützlichkeiten
Pfeil 10.1 Ein Rundgang durch Xcode
Pfeil 10.1.1 Die Navigatorspalte
Pfeil 10.1.2 Der Utilitybereich
Pfeil 10.1.3 Der Editor
Pfeil 10.1.4 Autovervollständigung und Code-Schnipsel
Pfeil 10.1.5 Tastaturkurzbefehle
Pfeil 10.1.6 Tabs und Fenster
Pfeil 10.1.7 Simulatoren und Dokumentation nachladen
Pfeil 10.1.8 No Country for Old Man-Pages
Pfeil 10.1.9 Projekte dokumentieren
Pfeil 10.1.10 Snapshots
Pfeil 10.2 Refactoring
Pfeil 10.2.1 Refactorings in Xcode
Pfeil 10.2.2 Methoden auslagern
Pfeil 10.2.3 Oberklassen erzeugen und Methoden verschieben
Pfeil 10.3 Der Organizer
Pfeil 10.3.1 Die Geräteverwaltung
Pfeil 10.3.2 Archive und die Archivverwaltung
Pfeil 10.3.3 Projektverwaltung
Pfeil 10.4 Das Buildsystem
Pfeil 10.4.1 Workspaces, Projekte und Targets
Pfeil 10.4.2 Klassen in Bibliotheken auslagern
Pfeil 10.4.3 Bibliotheken wiederverwenden
Pfeil 10.4.4 Konfigurationen
Pfeil 10.4.5 Targets
Pfeil 10.4.6 Schemata
Pfeil 10.5 Ad-hoc-Distributionen
Pfeil 10.5.1 Geräteregistrierung
Pfeil 10.5.2 App-Installation über das iPhone-Konfigurationsprogramm
Pfeil 10.5.3 Ad-hoc-Distributionen über einen Webserver
Pfeil 10.6 Versionsverwaltung mit Git
Pfeil 10.6.1 Lokale Git-Repositorys
Pfeil 10.6.2 Arbeiten mit verteilten Git-Repositorys
Pfeil 10.6.3 Git-Integration in Xcode
Pfeil 10.6.4 Einbindung existierender Git-Repositorys
Pfeil 10.6.5 GitX
Pfeil 10.6.6 SourceTree
Pfeil 10.6.7 Das Kommandozeilenprogramm von Git
Pfeil 10.6.8 Der eigene Git-Server

10Jahrmarkt der NützlichkeitenZur nächsten Überschrift

»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.


Rheinwerk Computing - Zum Seitenanfang

10.1Ein Rundgang durch XcodeZur nächsten ÜberschriftZur vorigen Überschrift

In Abbildung 10.1 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 sich alle Bereiche am Rand über das Menü View ein- und ausblenden; nur der Editorbereich ist immer in einem Xcode-Hauptfenster sichtbar.

Abbildung

Abbildung 10.1 Schematische Darstellung des Xcode-Hauptfensters

Die Werkzeugleiste (siehe Abbildung 10.2) enthält auf der linken Seite Buttons für die Programmablaufsteuerung 1, die Sie bereits kennengelernt haben. Das Schema und die Laufzeitumgebung (Gerät oder Simulator) wählen Sie über die Elemente 2 und 3 aus. Der helle Bereich in der Mitte 4 gibt Ihnen eine Rückmeldung über die Aufgaben, die Xcode momentan ausführt, und auf der rechten Seite 5 sehen Sie die Anzahl der gefundenen Fehler beziehungsweise der Warnungen.

Abbildung

Abbildung 10.2 Die Werkzeugleiste

Der Editorbereich kann den Inhalt der Dateien auf drei unterschiedliche Arten anzeigen: Im Standardmodus 6 zeigt er nur den Inhalt der Datei, während er im Assistenzmodus 7 den Inhalt mehrerer Dateien darstellt und im Versionierungsmodus 8 zwei beliebige Stände einer Datei aus einem Versionskontrollsystem miteinander vergleicht. Über die rechte Button-Gruppe blenden Sie die Navigatorspalte 9, den Debugger-Bereich und den Utilitybereich jeweils ein- oder aus. Die Inspektoren und den Debugger-Bereich haben Sie allerdings bereits in Kapitel 3, »Sehen und anfassen«, kennengelernt, weswegen wir in diesem Kapitel nicht mehr detailliert darauf eingehen.


Rheinwerk Computing - Zum Seitenanfang

10.1.1Die NavigatorspalteZur nächsten ÜberschriftZur vorigen Überschrift

Die Navigatorspalte (siehe Abbildung 10.3) stellt Ihnen acht 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 oder einen dazu passenden Inhalt im Editorbereich an.

Jeder Navigator hat am unteren Rand eine kleine Werkzeugleiste, mit deren Elementen Sie den Inhalt des Navigators bearbeiten oder filtern. Die einzelnen Elemente unterscheiden sich natürlich von Navigator zu Navigator. Die Funktionsweise ist jedoch bei allen ähnlich. Über einen Plus- und gegebenenfalls einen Minus-Button können Sie neue Elemente hinzufügen beziehungsweise bestehende entfernen. Mit dem Uhrsymbol schränken Sie die Auswahl auf die neuesten Elemente ein, und der Tresor begrenzt die Anzeige auf Dateien mit geändertem Source-Control-Status 9. Mit der Suchleiste auf der rechten Seite können Sie die Elemente nach ihrem Namen filtern.

Der Projektnavigator 1 zeigt Ihnen alle Projekte mit den Dateien des gerade geöffneten Workspace an.

Abbildung

Abbildung 10.3 Der Navigatorbereich von Xcode

Über den Symbolnavigator 2 können Sie sich alle Programmelemente (wie Klassen, Methoden und Propertys) Ihres Projekts anzeigen lassen (siehe Abbildung 10.4). Am oberen Rand des Navigators befinden sich dabei zwei Buttons, mit denen Sie zwischen hierarchischer und flacher Darstellung umschalten. Bei der hierarchischen Darstellung zeigt Xcode Unterklassen jeweils innerhalb ihrer Oberklasse an.

Abbildung

Abbildung 10.4 Symbolnavigator in hierarchischer Darstellung

Alle Symbole anzeigen

Über den linken Button mit der Beschriftung » in der Werkzeugleiste dieses Navigators schalten Sie die Darstellung um. 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 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 über 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. Sie können dabei die Einträge nach der Datei oder dem Problemtyp ordnen.

Der Test-Navigator 5 zeigt Ihnen alle Testklassen und -methoden an. Sie können sich darüber den Quellcode der einzelnen Elemente durch Anklicken im Editorbereich anzeigen lassen. Außerdem können Sie Testklassen oder -methoden über den Navigator ausführen, indem Sie den Pfeil auf der rechten Seite des entsprechenden Eintrags anklicken (siehe Abbildung 10.5). Dieser Pfeil erscheint allerdings nur, wenn Sie den Mauszeiger über den Eintrag bewegen.

Abbildung

Abbildung 10.5 Starten eines Tests über den Test-Navigator

Wenn Sie die Ausführung eines Programms während einer Debugging-Sitzung unterbrechen, zeigt Ihnen der Debug-Navigator 6 alle Threads mit deren Aufrufstapeln an. Sie gelangen über diesen Navigator zu allen aktuellen Ausführungspunkten der App. Das ist für Sie im Allgemeinen nur dann interessant, wenn Sie auch tatsächlich nebenläufige Programme erstellen. Über den Breakpoint-Navigator 7 können Sie die Breakpoints Ihrer Projekte ansehen und verwalten.

Der Log-Navigator 8 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 sehen Sie im Editorbereich. Bei den Buildlogs finden Sie hier zu jedem Log-Eintrag eine Auflistung aller Schritte mit den Aufrufen und Ausgaben der Hilfsprogramme. Xcode kürzt leider manchmal die Fehlermeldungen sehr stark, und so hilft es in einigen Fällen, 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überfahren (siehe Abbildung 10.6).

Abbildung

Abbildung 10.6 Anzeige des Buildlogs mit aufgeklapptem Eintrag


Rheinwerk Computing - Zum Seitenanfang

10.1.2Der UtilitybereichZur nächsten ÜberschriftZur vorigen Überschrift

Der Utilitybereich (siehe Abbildung 10.7) enthält verschiedene Bibliotheken mit Programmelementen. Über die Leiste am oberen Rand wechseln Sie dabei zwischen den verschiedenen Bibliotheken. Über das Menü 5 schränken Sie die Anzeige ein, und mit den Buttons daneben 6 wechseln Sie zwischen Objekt und Listendarstellung.

Abbildung

Abbildung 10.7 Die Bibliothek

Elemente für OS X ausblenden

Die File Template Library und die Code Snippet Library zeigen Ihnen auch Elemente für OS X an. 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, und haben damit also eine alternative Möglichkeit, neue Dateien anzulegen. In der Code Snippet Library 2 finden Sie mehrere nützliche Code-Schnipsel (Code Snippets). Sie können diese Bibliothek auch um eigene Elemente erweitern. Die Objektbibliothek 3 enthält schließlich die Elemente für die Oberflächengestaltung, die Sie bereits in Kapitel 3, »Sehen und anfassen« kennengelernt haben.

In der Medienbibliothek 4 finden Sie alle Medien (z. B. Bilder, Videos, Audiodateien) Ihres Workspace. 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.


Rheinwerk Computing - Zum Seitenanfang

10.1.3Der EditorZur nächsten ÜberschriftZur vorigen Überschrift

Gewöhnlich haben Sie den Standardmodus des Editorbereiches (siehe Abbildung 10.8) aktiviert, in dem er nur den Inhalt einer Datei anzeigt. Über die Sprungleiste oder auch Jumpbar (1 bis 7) können Sie schnell zwischen den Dateien wechseln, wobei die Elemente (außer 7) dieser Leiste jeweils Aufklappmenüs sind.

Unter dem Punkt verwandte Dateien (Related Files, 1) finden Sie Dateien und Elemente, die in irgendeiner Beziehung zur geöffneten Datei stehen. Das sind beispielsweise Super- oder Subklassen, passende Header- und Implementierungsdateien oder Interface-Dateien. Über die beiden Pfeile 2 durchsuchen Sie den Verlauf der geöffneten Dateien wie bei einem Webbrowser.

Daneben befinden sich die Pfadelemente (Projekt 3, Gruppe[n] 4 und Datei 5) der Datei und das aktuelle Element (z. B. Methode, Property) innerhalb der geöffneten Datei. Über die Menüs dieser Punkte können Sie jeweils über Untermenüs von der entsprechenden Ebene aus navigieren (siehe Abbildung 10.9).

Abbildung

Abbildung 10.8 Der Editorbereich

Abbildung

Abbildung 10.9 Dateiauswahl über die Sprungleiste

Die Menüs für die Pfadelemente besitzen gegenüber den anderen Menüs der Sprungleiste noch eine Besonderheit: Wenn Sie in das aufgeklappte Menü eine Zeichenfolge tippen, zeigt es ein Eingabefeld und nur die Einträge an, deren Namen mit der Eingabe beginnen.

Die drei Symbole 7 auf der rechten Seite der Sprungleiste erlauben die Navigation zwischen den Fehlern und Warnungen des Projekts.

Links neben jedem Editor zeigt Xcode zwei Leisten an. Die Breakpointleiste 8 (siehe Abbildung 10.8) zeigt nicht nur die Breakpoints 9 und den Programmzeiger an, sondern kann auch Zeilennummern darstellen. Diese Option lässt sich über die Xcode-Einstellungen (cmd+,) unter dem Reiter Text Editing einschalten. Dazu brauchen Sie dort nur den Haken vor der Option Line numbers zu setzen (siehe Abbildung 10.10). Dort können Sie außerdem über den Punkt Page guide at column eine Begrenzungslinie (siehe in Abbildung 10.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

Abbildung 10.10 Die Einstellungen des Xcode-Editors

Über das Code Folding Ribbon können Sie Blöcke im Programmcode einklappen. Für die eingeklappten Programmteile stellt der Editor jeweils einen kleinen Pfeil im Code Folding Ribbon dar, über den Sie den entsprechenden Programmteil wieder einblenden.


Rheinwerk Computing - Zum Seitenanfang

10.1.4Autovervollständigung und Code-SchnipselZur nächsten ÜberschriftZur vorigen Überschrift

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 mit Esc ablehnen. Wenn Sie ctrl+Leertaste drücken, zeigt Ihnen der Editor eine Liste mit passenden Vorschlägen an (siehe Abbildung 10.11). Sie können über die Pfeiltasten und ¢ einen Vorschlag auswählen oder durch Esc die Liste schließen.

Abbildung

Abbildung 10.11 Die Autovervollständigung mit Vorschlagsliste

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 blau hinterlegten Text darstellt (siehe Abbildung 10.12). Wenn Sie nach der Ersetzung einen Text tippen, ersetzt der Editor den Platzhalter durch den eingegebenen Text. Falls der Code-Schnipsel mehrere Platzhalter enthält, springen Sie mit der Tab-Taste zum nächsten Platzhalter.

Abbildung

Abbildung 10.12 Eingesetzter Code-Schnipsel 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 10.13). Xcode legt dann am Ende der Bibliothek einen neuen Code-Schnipsel mit dem Namen My Code Snippet an.

Abbildung

Abbildung 10.13 Anlegen eines neuen Code-Schnipsels

Wenn Sie den Eintrag in der Liste anklicken, zeigt Xcode Ihnen den Inhalt des Schnipsels an (siehe Abbildung 10.14). Über den Button Edit links unter dem Text können Sie den Schnipsel anpassen.

Abbildung

Abbildung 10.14 Anzeige eines Code-Schnipsels

Xcode zeigt Ihnen dann den Dialog aus Abbildung 10.15 an. Sie können hier Ihrem Code-Schnipsel 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, um diesen Schnipsel vorzuschlagen. Wenn Sie beispielsweise dafür »gradient« verwenden und »cat« im Editor eingeben, bietet Xcode Ihnen diesen Schnipsel als Vervollständigung an (siehe Abbildung 10.16).

Abbildung

Abbildung 10.15 Konfiguration eines Code-Schnipsels mit Platzhaltern

Das ist allerdings davon abhängig, an welcher Stelle im Programmcode Sie das machen. Wenn Sie »gra« außerhalb einer Methode oder Funktion tippen, springt die Vervollständigung nicht an. Das geschieht nur, wenn Sie diese Zeichenfolge innerhalb einer Methode oder Funktion eingeben. Sie können das über Completion Scopes (siehe Abbildung 10.15) steuern. Über den Plusknopf können Sie einem Schnipsel auch mehrere Bereiche, in denen dieser Schnipsel angewandt werden kann, zuweisen.

Abbildung

Abbildung 10.16 Verwendung des neuen Code-Schnipsels

Dafür stehen Ihnen die Werte aus Tabelle 10.1 zur Verfügung:

Tabelle 10.1 Bereiche für die Autovervollständigung

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 zwischen @interface Klasse { und }

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 in dieser Tabelle

Es gibt nahezu keine Beschränkungen für den Inhalt. Falls Sie Platzhalter verwenden möchten, müssen Sie den Platzhaltertext zwischen »<#« und »#>« schreiben. Xcode hinterlegt die Variablen dann farbig direkt nach der Eingabe der schließenden spitzen Klammer, wie Sie in Abbildung 10.15 sehen.

Probieren geht über Studieren

Sie sollten ruhig ein paar eigene Code-Schnipsel mit Platzhaltern anlegen, um sich mit dieser Funktion vertraut zu machen. Spielen Sie auch ruhig einmal ein bisschen mit den Gültigkeitsbereichen herum. Sie können Ihre Testschnipsel übrigens über die Taste ___æ oder Entf wieder aus der Liste löschen.


Rheinwerk Computing - Zum Seitenanfang

10.1.5TastaturkurzbefehleZur nächsten ÜberschriftZur vorigen Überschrift

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 Alt 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 (XcodePreferences... oder cmd+,) unter dem Reiter Key Bindings tun (siehe Abbildung 10.17).

Abbildung

Abbildung 10.17 Verwaltung der Tastenkombinationen

In der Tabellenansicht finden Sie die Spalte Command 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. Drücken Sie nun die Tastenkombination, 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. Falls Ihr neuer Kurzbefehl mit einem vorhandenen kollidiert, zeigt Xcode rechts von dem Kürzel ein Fehlersymbol an. Wenn Sie es anklicken, listet Ihnen der Dialog alle problematischen Tastenkombinationen auf. Wenn Sie das Kürzel eines Befehls löschen möchten, selektieren Sie die entsprechende Zeile, ohne dass der Cursor erscheint, und drücken ___æ oder Entf.

Xcode kann Tastaturkurzbefehle in Tastenbelegungen zusammenfassen und abspeichern. Sie können mehrere unterschiedliche Tastenbelegungen definieren und davon jeweils eine aktivieren. Über das Menü Key Bindings Set wählen Sie die aktive Tastenbelegung aus, und über den Eintrag Manage Key Bindings... in dem Menü verwalten Sie die Tastenbelegungen.

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, ihre Tastenbelegung nachzuahmen. Wenn Sie unterschiedliche Tastenbelegungen verwenden möchten, sollten Sie ihnen möglichst aussagekräftige Namen (z. B. »deutsche Tastatur«, »Smultron Editor«) geben.


Rheinwerk Computing - Zum Seitenanfang

10.1.6Tabs und FensterZur nächsten ÜberschriftZur vorigen Überschrift

Ein wichtiges Hilfsmittel bei der Navigation in Xcode sind Tabs. Einen neuen Tab erzeugen Sie (wie z. B. in Safari auch) über die Tastenkombination cmd+T.

Shortcuts für Tabs

Mit den Tastenkombinationen cmd+{ und cmd+} wechseln Sie zum vorherigen beziehungsweise folgenden Tab. Auf einer deutschen Tastatur entspricht das alt+cmd+8 beziehungsweise alt+cmd+9, was Xcode jedoch nur dann versteht, wenn Sie in der Systemeinstellung Bedienungshilfen den Punkt Tastaturbefehle zum Zoomen verwenden ausschalten. Wenn Sie die Tabs mit einer deutschen Tastatur ansteuern möchten, können Sie alternativ dafür auch die Tastenkürzel 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 Debugger-Bereich verwenden. Legen Sie dazu über cmd+T einen neuen Tab an, und öffnen Sie darin den Debugger-Bereich über das Kürzel cmd+ª+Y. Durch einen Doppelklick in die Menüleiste (siehe den Mauszeiger in Abbildung 10.18) des Debugger-Bereichs vergrößert er sich auf die volle Höhe.

Abbildung

Abbildung 10.18 Eigener Tab für die Debugger-Konsole

Sie können in Xcode 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 10.1 über die Untereinträge des Menüs View anzeigen lassen.


Rheinwerk Computing - Zum Seitenanfang

10.1.7Simulatoren und Dokumentation nachladenZur nächsten ÜberschriftZur vorigen Überschrift

Wenn Sie Ihre App unter einem älteren SDK im Simulator testen möchten, müssen Sie diese Teile nachinstallieren. Sie brauchen diese Pakete jedoch nur einmal und nicht bei jedem Update erneut zu installieren. Das ist besonders für Entwickler mit einem langsameren Internetzugang erfreulich. Außerdem können Sie die aktuelle Dokumentation laden, so dass sie Xcode auch dann zur Verfügung steht, wenn der Rechner keine Internetverbindung hat.

Um Pakete zu installieren, öffnen Sie in den Einstellungen unter XcodePreferences... den Reiter Downloads. Dort befindet sich der in Abbildung 10.19 dargestellte Dialog, der eine Liste mit den verfügbaren Pakten enthält. Neben den Simulatoren und der Dokumentation finden Sie dort auch die Command Line Tools; das sind verschiedene Komponenten (z. B. Compiler, Linker, Man-Pages, Standard-Header), die Sie für die kommandozeilenbasierte Entwicklung von Programmen brauchen.

Abbildung

Abbildung 10.19 Nachinstallation von Paketen

Um ein Paket zu installieren, drücken Sie einfach das entsprechende Download-Icon. 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 6.1 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 Schemaauswahl umschalten (siehe Abbildung 10.20), sofern die App die entsprechende Betriebssystemversion unterstützt.

Abbildung

Abbildung 10.20 Zusätzlicher Simulator für iOS 6.1

Der Dialog bietet Ihnen die Möglichkeit, regelmäßig nach Aktualisierungen zu suchen. Dazu setzen Sie einfach das Häkchen vor Check for and install updates automatically. Über den Button Check and Install Now starten Sie diesen Aktualisierungsprozess manuell.


Rheinwerk Computing - Zum Seitenanfang

10.1.8No Country for Old Man-PagesZur nächsten ÜberschriftZur vorigen Überschrift

Um die Dokumentation anzusehen, gibt es mehrere Möglichkeiten. Über den Dokumentationsinspektor sehen Sie sich die Schnellhilfe zu einzelnen Programmelementen an, indem Sie den Textcursor auf den gewünschten Bezeichner bewegen. Der Dokumentationsinspektor zeigt dann die verfügbare Dokumentation zu diesem Bezeichner an. Dabei können Sie blau geschriebene Textteile anklicken, um den zugehörigen Eintrag im Dokumentationsfenster zu öffnen (siehe Abbildung 10.21).

Abbildung

Abbildung 10.21 Die Schnellhilfe in Xcode

Sie können die Schnellhilfe eines Elements ebenfalls ansehen, indem Sie mit gedrückter alt-Taste den entsprechenden Bezeichner anklicken. Xcode zeigt die verfügbare Dokumentation dann in einem Pop-over an.

Abbildung

Abbildung 10.22 Anzeige der Schnellhilfe im Pop-over

Im Dokumentationsfenster (siehe Abbildung 10.23) steht Ihnen die komplette Dokumentation zur Verfügung, und Sie können es außer über die Schnellhilfe auch über das Menü Help oder die Tastenkombination alt+cmd+?, beziehungsweise ª+ alt+cmd+? auf einer deutschen Tastatur, öffnen.

Abbildung

Abbildung 10.23 Das Dokumentationsfenster

Das Dokumentationsfenster unterteilt sich in drei Bereiche; der Hauptbereich 7 zeigt die Hilfetexte an. Über die Suchleiste 3 können Sie die Dokumente suchen, die Sie im Hauptbereich anzeigen wollen, und die Pfeiltasten 1 erlauben eine Navigation in den Dokumenten entlang des Verlaufs. Der Share-Button 2 erlaubt das Versenden eines Links [Anm.: Damit der Empfänger diesen Link verwenden kann, muss er ebenfalls Xcode installiert haben.] der aktuellen Hilfeseite per Mail oder über die App Nachrichten die Anzeige in einem Browser. Außerdem können Sie über den Button die Seite als PDF öffnen und Lesezeichen anlegen. Lesezeichen lassen sich auch über die Lesezeichensymbole 8 in der Hilfeseite anlegen oder entfernen. Der Button Provide Feedback 9 öffnet eine Seite in Ihrem Webbrowser, auf der Sie die Hilfeseite bewerten und Verbesserungsvorschläge dazu abgeben können.

Der Lesezeichenbereich lässt sich über den Button 4 ein- und ausblenden. Er enthält alle Lesezeichen, die Sie angelegt haben. Über den Button 5 öffnen oder schließen Sie den Dokumentstrukturbereich , der das Inhaltsverzeichnis des aktuellen Dokuments enthält. Über die beiden Buttons wechseln Sie zwischen Inhaltsverzeichnis und Detailansicht.


Rheinwerk Computing - Zum Seitenanfang

10.1.9Projekte dokumentierenZur nächsten ÜberschriftZur vorigen Überschrift

Sie können die eingebaute Hilfe auch für die Elemente in Ihren eigenen Projekten nutzen, indem Sie Dokumentationskommentare in die Quelltexte schreiben. Ein Dokumentationskommentar ist entweder ein C-Kommentarblock mit einem Ausrufezeichen hinter dem öffnenden /*. Sie versehen beispielsweise die Klasse ClockView wie in Listing 10.1 mit einer kurzen Dokumentation.

/*!
Ein ClockView zeichnet ein Zifferblatt mit Uhrzeigern.
*/

@interface ClockView : UIView

Listing 10.1 Dokumentation mit Blockkommentar

Wenn Sie danach den Textcursor im Quelltext auf den Bezeichner ClockView bewegen, zeigt Ihnen die Schnellhilfe im Dokumentationsinspektor den Text aus dem Kommentar an. Das Ergebnis sehen Sie in Abbildung 10.24.

Abbildung

Abbildung 10.24 Anzeige der Dokumentation in der Schnellhilfe

Alternativ können Sie auch Zeilenkommentare mit einem dritten Schrägstrich verwenden. Der Kommentar in Listing 10.2 hat also den gleichen Effekt wie der Blockkommentar in Listing 10.1.

/// Ein ClockView zeichnet ein Zifferblatt mit Uhrzeigern.
@interface ClockView : UIView

Listing 10.2 Dokumentation mit einem Zeilenkommentar

Sie können auch andere Elemente, wie beispielsweise Kategorien, Methoden und Propertys, mit Dokumentationskommentaren versehen. Dabei können Sie bei Methoden und Funktionen die Dokumentationstags @param und @returns verwenden. Mit @param dokumentieren Sie jeweils einen Parameter in der Form @param Name Beschreibung, wobei Name für den Namen des Parameters und Beschreibung für einen Beschreibungstext steht. In Listing 10.3 sehen Sie ein Beispiel dazu.

/*! 
berechnet einen Punkt, der in einem vorgegebenen Abstand und einem Winkel im
Uhrzeigersinn vom Mittelpunkt liegt. Die (positive) y-Achse entspricht dabei
dem Winkel 0.

@param inRadius die Entfernung des Punktes zum Mittelpunkt
@param inAngle der Winkel des Punktes im Bogenmaß
@returns der berechnete Punkt

*/
- (CGPoint)pointWithRadius:(CGFloat)inRadius
angle:(CGFloat)inAngle;

Listing 10.3 Dokumentationskommentar für eine Methode

Die Darstellung dieses Kommentars in der Schnellhilfe sehen Sie in Abbildung 10.25.

Abbildung

Abbildung 10.25 Anzeige der Methodendokumentation in der Schnellhilfe

Mit dem Tag @see verweisen Sie auf andere Einträge in der Dokumentation. Xcode erzeugt dafür den fett gesetzten Text See also: vor dem Begriff, allerdings leider keine automatische Querverlinkung. Ein Beispiel für die Verwendung dieses Tags und die daraus resultierende Anzeige sehen Sie in Abbildung 10.26.

Abbildung

Abbildung 10.26 Ein Beispiel für das »@see«-Tag


Rheinwerk Computing - Zum Seitenanfang

10.1.10SnapshotsZur vorigen Überschrift

Xcode enthält neben der Integration externer Versionsverwaltungen auch einen integrierten Snapshot-Mechanismus für die Verwaltung von Zwischenständen. Ein Snapshot ist immer ein komplettes Abbild des Projekts. Sie erstellen einen Snapshot über den Menüpunkt FileCreate Snapshot... oder die Tastenkombination ctrl+cmd+S. In dem Dialog, der darauf erscheint (siehe Abbildung 10.27), 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 beanspruchen Archive deshalb schnell sehr viel Platz, wenn das Projekt viele große Dateien (z. B. Bilder, Videos, Audiodateien) enthält. Sie sollten also gelegentlich nicht mehr benötigte Snapshots löschen (siehe dazu Abschnitt 10.3.3, »Projektverwaltung«). Je größer das Projekt ist, umso länger dauert auch die Erstellung eines Snapshots.

Abbildung

Abbildung 10.27 Erstellen eines Snapshots

Über den Menüpunkt FileRestore 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 10.28) den Snapshot auswählen, den Sie restaurieren möchten.

Abbildung

Abbildung 10.28 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 10.29).

Abbildung

Abbildung 10.29 Snapshot und aktuellen Stand des Projekts vergleichen

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.

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 FileProject Settings... nachträglich über das Häkchen mit dem Titel Create snapshot of project before mass-editing operations ändern (siehe Abbildung 10.30).

Abbildung

Abbildung 10.30 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.

>> Zum Feedback-Formular
<< zurück




Copyright © Rheinwerk Verlag GmbH, Bonn 2014
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Rheinwerk Computing]

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de


  Zum Katalog
Zum Katalog: Apps programmieren für iPhone und iPad






Apps programmieren für iPhone und iPad
Jetzt bestellen


 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Katalog: Apps programmieren für iPhone und iPad






Apps programmieren für iPhone und iPad


Zum Katalog: Einstieg in Objective-C 2.0 und Cocoa






Einstieg in Objective-C 2.0 und Cocoa


Zum Katalog: Spieleprogrammierung mit Android Studio






Spieleprogrammierung mit Android Studio


Zum Katalog: Android 5






Android 5


Zum Katalog: iPhone und iPad-Apps entwickeln






iPhone und iPad-Apps entwickeln


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo