Wieso iOS als primäre Entwicklungsumgebung


Um effizient Apps für Smartphones zu entwickeln, ist eine schnelle Entwicklungszeit und ein möglichst grosse Abdeckung der zu unterstützenden Devices essentiell. Erst seit kurzem hat Android Apple in der Schweiz überholt und ist massiv auf dem Vormarsch. International spricht man schon von 75%. Dennoch wird noch immer von den Entwickler die iOS Version vorgezogen. Warum?

1. Entwicklungsumgebung

Apple liefert mit xCode ein Tool, mit dem man äusserst schnell und effizient arbeiten kann. Kennt man erst mal die wichtigsten Shortcuts und Features, kann man in äusserst kurzer Zeit viel erreichen. Auch der Interface Builder ist eine ganz nette Sache. Mit diesem kann ich meine Buttons und Texte pixelgenau platzieren und Abhängigkeiten und Autoresizing mit einfachen Klicks definieren. Man kämpft ausserdem bei iOS nicht gross mit den verschiedenen Systeme (z.B. Auflösungen der Bildschirme), da ich lediglich auf die Palette der Apple Produkte beschränkt bin.

2. Sprache

Die bevorzugte Programmiersprache ist immer eine Frage der Gewohnheit. Als Einsteiger empfehle ich nicht unbedingt Apple's Objektive-C, da die Sprache doch näher am "richtigen" Programmieren (wie C++) dran ist. Wer von Javascript kommt fragt sich zunächst wieso eine Klasse zwei Dateien benötigt, wieso ich eine Methode auf zwei verschiedene Schreibweisen aufrufen kann? Sowieso muss man viel "genauer" arbeiten als dies bei anderen Sprachen wie JS oder C# der Fall ist.

Wenn man jedoch den Dreh nach einigen Tagen raus hat, sieht man die Vorteile von Objective-C schnell. Ich muss nicht viel Nachschlagen und der Code erscheint schlussendlich logischer/selbsterklärender.

3. Distribution

Um in Apple's Appstore zu gelangen, muss der Entwickler diverse Kriterien erfüllen und demnach ein gewisses Qualitätsminimum erreichen. Dies ist bei Andoid nicht der Fall. Dementsprechend wird Android's Google Play zunehmends zugemüllt.  Schade. Natürlich ist die geschlossene Plattform von Apple eigentlich eine ganz böse Sache, doch dies birgt für den Entwickler auch diverse Vorteile: Ohne Jailbreak können keine Kopien der Software gemacht werden da die Installation nur durch den Appstore erfolgen kann. Somit können Statistiken besser erfasst werden und der Entwickler kann am Ende des Tages mehr von seiner App profitieren.

image android vs. ios

4. Serielle Produktion bei multiplen Plattformen

Der Kunde möchte sowohl Android, wie auch iOS - wenn demnächst nicht sogar noch Windows Phone 8 - bedienen. Mehrere Plattformen gleichzeitig zu entwickeln macht keinen Sinn, da das Nachbauen einer Software extrem viel schneller ist, als eine Neuentwicklung. Codes und die Logik der Codes können an vielen Stellen weiterverwendet werden (vor allem im Backend) . Da eine iOS App einer mindestens zwei-wöchigen Prüfung durch Apple unterzogen wird, kann der Entwickler währenddessen nicht viel machen. Deshalb kann diese Zeit idealerweise für die Android Version genutzt werden um dann beide Versionen zum gleichen Zeitpunkt zu lancieren.

(http://techland.time.com/2013/04/16/ios-vs-android/)