Der nicht ganz einfache Start in die iOS Entwicklung

cubido
von cubido
3 Min. Lesezeit
Donnerstag, 05. Dezember 2019

cubido hat vor einiger Zeit beschlossen, in die spannende Welt der Entwicklung für mobile Apple Geräte einzusteigen. Im Zuge dessen hatten einige unserer Entwickler die ehrenvolle Aufgabe, sich mit diesem Thema zu beschäftigen, verschiedene Technologien zu evaluieren und entsprechendes Know How aufzubauen.

Der nun folgende Beitrag ist der Auftakt zu einer Serie über den Einstieg in die iOS Entwicklung unter Verwendung eben dieser Technologien. Beginnen möchte ich sinnvollerweise mit den Voraussetzungen und einem groben Einblick darin, was einen Softwareentwickler beim Einstieg in die iOS-Welt erwartet.

In den Beiträgen, die noch folgen werden, werde ich näher auf die einzelnen Technologien „Capacitor“, „React Native“, „Xamarin“ und „Swift“ eingehen.

Was man braucht

Um für iPhone, iPad & Co Apps entwickeln zu können, benötigt man neben fundiertem Know How in der einen oder anderen Technologie auch gewisses Equipment. Die beiden wichtigsten Dinge ohne die man nicht auskommt, sind einmal ein Mac, also ein Rechner auf dem macOS läuft sowie zumindest ein mobiles Gerät, also am Besten ein iPhone. Je nachdem welche Geräte man unterstützen möchte, eventuell auch ein iPad oder eine Apple Watch.

Ein Mac ist vor allem deshalb erforderlich, weil die Entwicklungsumgebung XCode, ohne die man nicht für iOS enwickeln kann, auf macOS angewiesen ist und es die Lizenzbedingungen von Apple nicht gestatten, macOS auf einem PC virtualisiert laufen zu lassen, auch wenn das technisch grundsätzlich möglich wäre. Man sollte auch darauf achten, dass man ein Gerät mit guter Leistung erwirbt, denn vor allem der Emulator ist sehr ressourcenhungrig. Ein MacBook Pro sollte es somit schon sein, um flüssig arbeiten zu können.

Weiters benötigt man noch einen Developer Account, also einen Zugang zum Apple Developer Program. Für den Einstieg kann man ohne diesen Zugang loslegen, aber sobald man etwas im App Store anbieten möchte, kommt man um einen kostenpflichtigen Zugang zum Apple Developer Program nicht mehr herum.

Soweit so gut, die Ausrüstung haben wir dann einmal beisammen. Man könnte auch sagen, das war jetzt der teure Teil, nun folgt der schwierige.

Ganz so schlimm wie sich das jetzt vielleicht liest, ist es allerdings nicht oder besser gesagt, es bleibt einem auch selbst überlassen, wie schwer man es sich machen möchte. Wie aufwändig der Einstieg für den einzelnen Entwickler schlußendlich wird, hängt vor allem einerseits von den Vorkenntnissen ab und andererseits in diesem Zusammenhang auch mit der Technologie zusammen, für die man sich entscheidet.

Neben der apple-eigenen Sprache „swift“ gibt es noch eine ganze Menge an plattformübergreifenden Frameworks, von denen einige technologisch an die Webentwicklung angelehnt sind. Beherrscht man zum Beispiel bereits ein clientseitiges Framework wie React oder Angular, so gibt es entsprechende Pendants (React Native, Capacitor) für die mobile Entwicklung. Ist man eher im Dotnet-Bereich und WPF zu Hause, sollte man sich hingegen Xamarin Forms näher ansehen.

Und sonst so?

Eine Sache ist vielleicht auch nicht ganz unwichtig: Wenn man für das iPhone und verwandte Geräte entwickeln möchte, ist es kein Nachteil, selbst iPhone Nutzer zu sein. Das iPhone hat ein ganz eigenes Bedienkonzept und diesem sollte man bei der Entwicklung eigener Apps auf jeden Fall folgen. Ist man damit vertraut, weil man selbst tagtäglich ein iPhone nutzt, geht das definitiv leichter von der Hand.

Weiters ist es durchaus von Vorteil, sich mit einer Disziplin auseinanderzusetzen, um die Entwickler für gewöhnlich gerne einen großen Bogen machen: UX Design

Man braucht sich deshalb nicht gleich für ein entsprechendes Studium einzuschreiben, aber es ist mit Sicherheit kein Fehler, sich hierüber schlau zu machen. Mit einer eher fragwürdigen Benutzerführung bei so mancher Desktop Software hat man zum Teil ja schon zu leben gelernt, aber eine App - noch dazu auf dem iPhone - die kein durchdachtes Bedienkonzept hat, würde sich auf diesem heiss umkämpften Markt niemals durchsetzen.

Einmal auftanken bitte!

Jetzt stellt sich natürlich die Frage, wie man am Besten an das Know How herankommt, das man für die Entwicklung benötigt.

Wenn ich so an meine Anfänge in der Softwareentwicklung zurück denke, war es früher deutlich schwieriger, eine neue Technologie oder Programmiersprache zu erlernen. Man hatte ein oder zwei Fachbücher voller Druck- und Übersetzungsfehler und war mehr oder weniger auf sich alleine gestellt. Das sieht heute zum Glück anders aus.

Meine klare Empfehlung für den Einstieg ist ein Online Video Kurs. Solche Kurse findet man zum Beispiel kostenlos auf YouTube, was für den Anfang auf jeden Fall ausreichend ist. Legt man jedoch Wert auf eine gewisse Qualität und vor allem Aktualität, so lohnt es sich durchaus, in einen kostenpflichtigen Kurs zu investieren. Man braucht dazu nicht gleich eine teure Jahresmitgliedschaft bei einem Lernportal abzuschließen, es reicht durchaus, ein wenig die Augen offen zu halten und temporäre Angebote für einzelne Kurse zu nutzen.

Man findet Kurse für so ziemlich jede geeignete Technologie, egal ob swift, Capacitor, React Native oder Xamarin.

Fazit

„Aller Anfang ist schwer“, könnte man jetzt sagen, aber das halte ich hier für übertrieben. Wenn man es richtig angeht, dann ist der Einstieg in die iOS Entwicklung für einen Entwickler oder auch für ein ganzes Team in vertretbarer Zeit machbar. Man sollte sich nur nicht der Illusion hingeben, dass man das schon „so nebenbei im Laufe des Projektes“ erlernen wird.

Es ist wichtig, das richtige Equipment zu haben, fundiertes Know How und natürlich die Freude an der Entwicklung für mobile Geräte. Dann klappt es auch mit der iPhone App.

Verfasst von Thomas Polaschek