Eines vorweg: Ja, um eigene Software auf einem nicht gehackten iPhone/iPod touch/iPad laufen zu lassen, muss man registrierter Apple-Developer sein und mindestens $99 pro Jahr bezahlen. Über Sinn und Unsinn dieser Verfahrenweise soll es in diesem Eintrag nicht gehen…
Bevor es losgehen kann, muss die Entwicklungsumgebung installiert werden. Diese nennt sich XCode und ist kostenlos erhältlich. Eigentlich bekommt man mit XCode nicht nur eine IDE, sondern gleich für sämtliche Entwicklungsarbeit ein Komplettpaket – ob für OS X oder iPhone, mit Kompiler, Bibliotheken, allem. Einfach das Rundrum-Sorglospaket. Herunterzuladen gibt es das Paket im iOS-DeveloperPortal unter: http://developer.apple.com/devcenter/ios/index.action.
Die Größe des Paketes (derzeit 2.9Gb) läßt schon erahnen, dass man nach der Installion nicht mehr viel brauchen kann. In der Tat, ist man sofort und ohne jegliche Konfiguration vollständig einsatzbereit. Wer ersteinmal Geld sparen und spielen will, der kann trotzdem loslegen und einfach im mitgelieferten iPhone-Simulator entwickeln. Die üblichen Einschränkungen wie bei anderen Simulatoren gelten auch hier: GPS gibt es nicht, Sensoren gibt es nicht. Man kann jedoch beispiesweise ein Schütteln des Gerätes simulieren, das Gerät drehen oder gar multitouch ausprobieren.
Programmiert wird in ObjectiveC, einem C-Klon, welcher für objektorientiertes Programmieren umgebaut wurde. Die Syntax ist auf den ersten Blick grausig, auf den zweiten Blick jedoch durchaus sinnvoll. Besonderer Wert wird darauf gelegt, dass die Entwicklung beschleunigt und vor allem stets kontrolliert erfolgt. Dem Entwickler wird allein durch die Sprachstruktur einerseits viel Verantwortung, andererseits ein hohes Maß an Flexibilität und Kontrolle in die Hand gelegt. Zusammen mit XCode machen die Sprachkonvetionen zum Beispiel zur Deklaration von Argumenten in Methoden gleich richtig Sinn. Eine Garbage-Collection gibt es im Prinzip keine, und so macht man sich zum ersten Mal jenseits der Uni ernsthaft Gedanken über das Leben und Sterben von Objekten. Zugegebenermaßen anfangs etwas gewöhnungsbedürftig, aber da wir für ein mobiles Endgerät entwickeln wollen, ist die Kontrolle über das Speichermanagement durchaus sinnvoll und wichtig.
Hauptanlaufpunkt für den iOS-Developer ist sicherlich die iOS-Reference-Library. Dies ist das absolute Standardwerk von Apple und sehr sauber strukturiert. Neben der kompletten Klassenreferenz finden sich hier allgemeine Themen zur Struktur von Apps, Sample-Code für verschiedene Anwendungen sowie die kompletten Richtlinien zum Design eines User-Interface’. Für Neueinsteiger lohnen sich als erstes folgende Themen: Einführung in Objective-C, Einstieg in die Entwicklung mit XCode und Wir schreiben unser erstes iOS-App.
Wie schon beschrieben, bekommen wir eine ganze Menge an Werkzeugen mitgeliefert, von den 3 absolut unersetzlich sind: Xcode, die Entwicklungsugebung an sich, InterfaceBuilder, ein graphisches Werkzeug zum Bau von Oberflächen und zur Verwaltung der entsprechenden Objekte inkl. Anbindung an den Sourcecode, sowie der iPhone-Simulator. Der Simulator kann derzeit sowohl das iPhone 3GS/4, als auch das iPad simulieren.