iPhone SDK Application Development

Literatur  –  Kommentare

Jonathan Zdziarski

Januar 2009
O'Reilly
368 Seiten
US-$ 34,44
ISBN 978-0-596-15405-9

Ganz klar, Zdziarski ist in der Szene kein Unbekannter: Neben seiner iPhone-Hackerarbeit hat er zwei Titel zu Apples Smartphone herausgebracht. Das vorliegende Werk ist für Programmierer interessant, die den "offiziellen" Apple-Weg der Applikationsentwicklung für das iPhone gehen möchten. Seine Anwendung in Apples App Store zum Verkauf anbieten zu können, kann durch die Marktdurchdringung des iPhones (über 25.000 Programme im App Store seit dessen Einführung, 13,7 Millionen verkaufte iPhones weltweit) lukrativ sein, und eine Milliarde heruntergeladene Applikationen aus dem App Store sprechen eine deutliche Sprache – kein anderes Smartphone kann da mithalten.

In der Einleitung verdeutlicht Zdziarski, dass er ausschließlich die Entwicklung von iPhone-Applikationen mit dem Apple-eigenen SDK inklusive all seiner Einschränkungen und Restriktionen behandelt. Wer undokumentierte Features verwenden möchte, kann im App Store seine Applikationen nicht vertreiben. Für diese Programmierer hält der Autor das im gleichen Verlag erschienene Buch "iPhone Open Application Development" bereit. Zuweilen, etwa beim SourceReader-Beispiel, stellt er undokumentierte API-Methoden wie das Anzeigen von HTML in einer Text View vor, weist aber darauf hin, dass der geneigte Programmierer beim Einsatz der Methode riskiert, dass Apple die Software aus dem App Store entfernt.

Apples Haus- und Hofsprache und damit auch des iPhones ist Objective-C. Im Gegensatz zum "iPhone Open Application Development"-Werk hat der Autor in diesem Band eine Objective-C-Fibel integriert, die dem Objective-C-Novizen das Lesen und Verstehen der vielen Code-Beispiele erleichtert. Einen Blick in diese zur Festigung der Objective-C-Kenntnisse ist zu empfehlen. Der Autor hat hierzu Buchempfehlungen in den Text eingestreut (nicht nur zu Objective-C, sondern auch zum Erlernen von Cocoa).

Zunächst geht Zdziarski auf die bekannte Mac-Struktur von Anwendungen ein (den Application Container mit seinen unterschiedlichen Dateien). Er reißt Themen an wie das Installieren des SDK 2.x, die Applikationserstellung mit der Mac-Programmier-IDE Xcode, und den Interface Builder, mit sich grafisch ansprechende Programme erstellen lassen. Dann führt Zdziarksi in das UI Kit ein, das größte für das iPhone erhältliche SDK. Wie es sich für ein echtes Programmierbuch seit Kernighan und Ritchies C-Bibel gehört, ist das erste lauffähige Programm ein nutzloses "Hello World", an dem sich die UI-Elemente View und Window und das Zusammenspiel mit dem Framework erklären lassen. Gut und für Zdziarski typisch sind die Abschnitte "What's going on" und "Further study", in denen der Autor die Experimentierlust des Programmierers anstachelt und so auf Aspekte verweist, die sonst womöglich nicht berücksichtigt würden.

Weitere Themen sind Multi-touch-Events und Geometrie, Layer-Programmierung mit Quartz Core, Netzprogrammierung oder Cover Flow, um nur einige zu nennen. All diesen Abschnitten ist gemeinsam, dass sie ausführliche Codebeispielen enthalten, die der Autor ausgiebig bespricht und analysiert.

"iPhone SDK" ist ein spannendes Buch, Zdziarksi versteht es, den Leser mitzunehmen und in die Lage zu versetzen, schnell brauchbare Ergebnisse zu erzielen, die dann gleich auf dem iPhone auszuprobieren sind. Natürlich, und darauf weist Zdziarski hin, bedarf es der Apple-Developer-Lizenz, für die im Jahr 100 US-US-Dollar fällig werden, um die Programme digital signieren zu können, damit sie iPhone-fähig sind. Ansonsten bleibt dem Programmierer nur der Simulator, mit dem man aber beileibe nicht alle Situationen testen kann, gerade Bewegungssensor oder GPS sind damit außen vor. Auf der Website zum Buch finden sich neben Errata die Source-Listings. Mit "iPhone SDK" ist man für die immer mehr um sich greifende iPhone-Programmierung gerüstet. Bleibt nur zu hoffen, dass Zdziarski seine Buch bald nach Erscheinen von iPhone-Version 3.0 aktualisiert.