So ein Buch ist schon eine spannende Sache. Es ist ein Großprojekt, das von der ersten Idee über ein Grobkonzept hin zu ersten Entwürfen über Korrekten und Ausarbeitungen wahnsinnig viel Zeit und Arbeit in Anspruch nimmt, bis dann ganz am Ende ein mehrere hundert Seiten starkes Werk daraus entsteht, welches Sie und ich in Händen halten können. So war es auch bei meinem ersten Fachbuch Apps für iOS 8 professionell entwickeln. Und heute möchte ich einmal nicht über die fachlichen Inhalte sprechen oder über den Prozess des Schreibens als solchen philosophieren, sondern da anfangen, wo dieses Buch entstanden ist: Ganz am Anfang, als die Idee zum Buch überhaupt erst reifte und sich langsam zur Grundlage für dieses Werk ausbreitete.
Alles in allem hat mich mein Buch Apps für iOS 8 professionell entwickeln bis zum heutigen Tag fast ein ganzes Jahr begleitet. Der Grundstein wurde – sofern ich mich noch richtig daran erinnere – im November 2013 gelegt. Zu diesem Zeitpunkt begannen die Gespräche mit dem Carl Hanser Verlag über ein Fachbuch mit dem Thema iOS-Entwicklung. Was unspektakulär klingen mag, ist aber zu Beginn eines solchen Projekts mitunter wahnsinnig viel Arbeit. Denn, iOS-Entwicklung, nun ja, da lässt sich ziemlich viel darüber schreiben. Allein andere Fachbücher mit einzelnen Themenschwerpunkten wie beispielsweise Core Data zeigen, mit welchen Inhalten man ein solches Buch füllen kann. Was also sollte ich tun? Wo war mein Platz? Wie sollte mein eigenes iOS-Buch in diesem Markt aussehen?
Bis dieser Grundstein gelegt war und ein erstes Grobkonzept stand, verging etwa eine Woche. Eine Woche, in der ich mich ausschließlich mit der Frage Worüber? beschäftigte; worüber genau soll ich schreiben? Was ist mein persönlicher Schwerpunkt, mein Ding, das, was ich anderen mitteilen möchte? Glauben Sie mir, dieser Punkt war einer der schwierigsten und natürlich auch entscheidendsten im gesamten Projekt, schließlich legt diese Entscheidung den kompletten weiteren Weg. Und verdammt, ich wollte einen richtig guten Weg gehen!
Ausschlaggebend war letzten Endes eine Überlegung für mich. Ich dachte daran zurück, wie ich 2009 mit der Entwicklung für iOS begann. Ich habe Unmengen an Fachbüchern verschlungen und mich mithilfe von Code-Beispielen von Apple nach und nach in die Materie hineingearbeitet und dadurch extrem viel experimentiert. Auf diese Art und Weise entstand nach knapp zwei Monaten auch meine erste App, die ich im App Store veröffentlichte. Und danach ging es mit der Entwicklung von Updates und neuen Apps weiter.
Allerdings hatte dieses Vorgehen ein extremes Problem: Zwar habe ich viel gelesen, viel Beispiel-Code gesehen und dadurch viel zusammengebastelt. Doch was mir an vielen Stellen in der Entwicklung fehlte, war ein grundlegendes Verständnis der Materie. Ich tat die Dinge eben so, weil ich es genau so in Fachbüchern gelesen oder in Code-Beispielen gesehen habe, doch warum das so ist, warum ich ein Problem eben genau so löse und wie es möglicherweise anders geht, das blieb an vielen Stellen im Dunkeln. Das fing bei der Programmiersprache Objective-C selbst an, ging weiter über die Arbeit mit der Entwicklungsumgebung Xcode und typischen Design Patterns und endete mit der grundlegenden Funktionalität von Views, Controllern und Modeln. Und – da stimmt mir jeder erfahrene Entwickler zu – ein solches Unverständnis ist tödlich!
Klar, irgendwann fiel der Groschen. Irgendwann, wenn plötzlich etwas nicht mehr so funktionierte wie erwartet und ich viel Zeit und Hirnschmalz in eine Lösung investieren musste, kam ich nach und nach dahinter, wie bestimmte Dinge in der iOS-Entwicklung funktionierten. Aber nicht nur das; ich lernte, wie die Dinge in der iOS-Entwicklung richtig funktionierten und wie ich sie professionell anwende. Das war der Punkt, an dem ich mich mit einem Schlag vollkommen wohl und heimisch in der App-Entwicklung für iOS fühlte und in der mir der gesamte Entwicklungsprozess mit all seinen Bestandteilen wie Schuppen von den Augen fiel. Seitdem ist die Apple-Dokumentation mit ihrer allwissenden API fast das einzige Hilfswerkzeug, was ich noch für meine tägliche Entwicklerarbeit benötige, und genau so sollte es sein.
Ich dachte an diese Erfahrung zurück, und ohne groß weiter darüber nachdenken zu müssen hatte ich sie: Die Idee für mein eigenes iOS-Buch! Genau diese Problematik, genau diese Schwierigkeiten, mit denen ich zu kämpfen hatte, wollte ich in meinem iOS-Buch angehen und behandeln. Ab diesem Moment wusste ich ganz genau, worüber ich schreiben wollte. Ich wollte nicht der nächste sein, der alle APIs und Frameworks von Apple im Detail vorstellt und ausführlich erläutert, nein, ich wollte den angehenden und interessierten Entwicklern zeigen, worauf es in der iOS-Entwicklung ankommt, worauf sie achten müssen und wie sie es richtig machen. Sie sollen die Programmiersprache Objective-C verstehen und lernen, sie nach dem MVC-Pattern perfekt in iOS anzuwenden. Sie sollen genau wissen, was Model, View und Controller sind und was diese drei Teile in der iOS-Entwicklung ausmacht. Sie sollen einfach verstehen, wie der iOS-Entwicklungskosmos zusammenhängt und wie die einzelnen Zahnrädchen ineinander greifen.
Genau das war die Idee und meine Ambition für Apps für iOS 8 professionell entwickeln. Ich wollte kein Kompendium aller Funktionen; dazu gibt es schließlich die immer aktuelle und mehr als umfangreiche Dokumentation von Apple. Nein, ich wollte das grundlegende Wissen, das Grundrüstzeug für jeden iOS-Entwickler, im Detail vorstellen und erklären. Und damit nicht nur Anfängern zeigen, wie die iOS-Entwicklung funktioniert, sondern auch fortgeschrittenen Entwicklern ein Werk an die Hand geben, durch das sie ihr bisheriges Know-How weiter vertiefen und ausbauen können.
Hätte ich ein solches Buch während meiner Anfänge in der iOS-Entwicklung gehabt, es hätte mir viel Probiererei, Fragezeichen im Kopf und noch viel mehr Lehrgeld erspart. Witzigerweise habe ich selbst bereits des Öfteren einen Blick in mein eigenes Buch geworfen, beispielsweise wenn ich mal wieder nicht wusste, wie genau ich ein Singleton in Objective-C umsetze oder mir noch einmal die genaue Syntax für Nebenläufigkeit mit Grand Central Dispatch in Erinnerung rufen musste. 🙂
Ich bin mehr als froh und zufrieden, dass ich diese Ambitionen und Wünsche, die ich von Beginn an an Apps für iOS 8 professionell entwickeln gestellt habe, erfüllen konnte. Es ist das Buch, das ich mir selbst von Beginn an gewünscht habe, und ich hoffe sehr, dass es allen interessierten Lesern Freude bereitet und den ein oder anderen Schleier lichtet. Gerne freue ich mich über jedes Feedback zu diesem Buchprojekt.
Mehr Informationen zum Buch, generische Klassen zum Download, Blog-Beitrage und Ergänzungen finden Sie auf der offiziellen Seite des Buches.
[…] Update veröffentlicht. Nach meinem vorherigen Blog-Beitrag hier auf meiner Website zum Thema Wie die Idee zu meinem iOS-Buch entstand handelt es sich dabei um den zweiten Beitrag einer kleinen Blog-Artikelserie, die ergänzend zu […]