Das iOS-Ökosystem verstehen

Bevor Sie mit dem Erstellen von iOS-Anwendungen beginnen, ist es wichtig, dass Sie zuerst das Ökosystem verstehen. In diesem Artikel werden die Grundlagen des iOS-Betriebssystems, der verschiedenen verfügbaren iOS-Geräte und des Apple App Store erläutert.


Warum iOS??

Vor der Markteinführung von Android und Windows Phone war Apple der dominierende Player im mobilen Bereich, der nur von Nokia und BlackBerry übertroffen wurde. Mit dem Aufkommen neuer mobiler Plattformen wird es immer wichtiger, sich zu fragen, welche Plattform für Sie am besten geeignet ist. Trotz Apples Vorsprung im Jahr 2007 hat Android die Marktanteile von iOS übertroffen. Was bedeutet das für iOS? Ist es immer noch eine Plattform, für die es sich zu entwickeln lohnt? Sicher ist es. Es gibt viele gute Gründe, mit der iOS-Entwicklung zu beginnen.

  • Starke finanzielle Anreize: Die Menschen geben mehr Geld für Apples App Store aus als für jede andere mobile Plattform. Trotz der Tatsache, dass Android zu den dominierenden Playern im mobilen Bereich geworden ist, bleibt die iOS-Plattform für Entwickler lukrativer.
  • Ummauerter Garten: Auch wenn Apples App Store von Apple viel Kritik von Entwicklern und Kunden erhalten hat, insbesondere von Apples Überprüfungsprozess, ist klar, dass diese Richtlinie zu einem App Store geführt hat, in dem die Qualität der durchschnittlichen Anwendung höher ist als in jedem anderen mobilen Store. Kunden fühlen sich auch beim Kauf von Anwendungen über den App Store viel sicherer als andere öffnen Plattformen wie Google Play.
  • Community und Unterstützung: Die iOS-Entwicklergemeinde ist eine großartige Gemeinschaft, zu der man gehören kann. Es gibt fast unendlich viele Artikel, Tutorials und Dokumentationen, die Ihnen helfen, wenn Sie ein Problem haben. Darüber hinaus ist Apples Dokumentation des iOS SDK hervorragend, ganz zu schweigen von den Hunderten von WWDC-Videos (World Wide Developer Conference), die jedem registrierten iOS-Entwickler zur Verfügung stehen.

Die Leute vergessen oft oder wissen nicht, dass Android und iOS sehr unterschiedliche Plattformen sind. Obwohl beide Plattformen für den mobilen Raum konzipiert wurden, unterscheidet sich das iOS-Ökosystem in vielerlei Hinsicht von Googles Android-Ökosystem. Aus Sicht der Entwicklung scheint es für die meisten Leute einfacher zu sein, für die iOS-Plattform zu entwickeln, als für die Android-Plattform. Verstehen Sie mich nicht falsch, ich beziehe mich nicht auf den Technologie-Stack, den jede Plattform verwendet, oder auf die verfügbaren Tools für jede Plattform. Für die Kluft zwischen iOS und Android gibt es zwei Gründe, Zersplitterung und Adoptionsrate.

Zersplitterung

Eine der Hauptstärken von Android ist gleichzeitig eine der Hauptschwächen. Wie die meisten von Ihnen wissen, wird das Android-Betriebssystem als Open Source-Projekt veröffentlicht und kann daher verwendet und geändert werden. Zahlreiche Hardware-Hersteller sahen das Potenzial von Android, zumal es von Google unterstützt wurde. Dadurch gewann Android schnell an Popularität. Das Problem ist, dass jeder Hardwarehersteller Android an seine Bedürfnisse angepasst hat und seit der Einführung von Android eine Vielzahl von Formfaktoren entstanden ist.

Auch wenn der Marktanteil von Android wie ein großer Topf mit Honig aussehen mag, ist es ein Kinderspiel, Software zu erstellen, die auf jeder aktuell verfügbaren Android-Version läuft. Aufgrund der tausenden verschiedenen Geräte, auf denen Android ausgeführt wird, ist das Testen von Software auf Hardware auch keine triviale Aufgabe. Wie Sie sich vorstellen können, werden Support und Kompatibilität zu einer echten Herausforderung.

Adoptionsrate

In vielen Ländern wird der Mobilfunkmarkt traditionell von Mobilfunkbetreibern streng kontrolliert. Apple wusste von Anfang an, dass es die Kontrolle über seine mobilen Geräte haben musste, um die bestmögliche Benutzererfahrung zu bieten. Das Ergebnis ist, dass Kunden ihre iOS-Geräte noch am Tag ihrer Veröffentlichung auf die neueste Version von iOS aktualisieren können. Dies ist ein großer Vorteil der iOS-Plattform und das Ergebnis ist erheblich. Weniger als drei Monate nach der Veröffentlichung von iOS 7 wurden über 74% der iOS-Geräte auf iOS 7 aktualisiert.

Vergleichen wir das mit Android. Im Dezember 2013 hatten weniger als 55% der Android-Benutzer ihre Geräte auf Jelly Bean (im Juli 2012 veröffentlicht) und 1,1% auf KitKat (im Oktober 2013 veröffentlicht) aktualisiert..

Der Grund für das Erhöhen dieser Zahlen ist nicht das Herunterspielen der Android-Plattform oder einer anderen mobilen Plattform. Was ich betonen möchte, ist die Auswirkung der Akzeptanzrate auf das Anwendungs-Ökosystem dieser Plattformen. Je langsamer die Benutzer eine neue Version eines Betriebssystems annehmen, desto länger müssen Entwickler ältere Versionen des Betriebssystems unterstützen, und es wird weniger attraktiv, neue Technologien zu übernehmen, die nur auf einem Bruchteil der Android-Geräte verwendet werden können.

Monetarisierung

Auch wenn Android aufholt, ist iOS nach wie vor die beste Plattform für Monetarisierung. Während der letzten Veranstaltung von Apple gab Tim Cook bekannt, dass Kunden mehr als 60 Milliarden Anwendungen heruntergeladen und Apple mehr als 13 Milliarden US-Dollar an iOS-Entwickler gezahlt haben. Im September 2013 gab Tim Cook während des jährlichen iPhone-Events von Apple bekannt, dass das Unternehmen mehr als 700 Millionen iOS-Geräte verkauft hatte. Wenn Sie über die Entwicklung einer mobilen Plattform nachdenken, ist iOS eine ausgezeichnete Wahl, und es ist unwahrscheinlich, dass sich der finanzielle Anreiz dafür bald ändern wird.


Warum nativ??

Wenn Sie regelmäßig Envato Tuts + lesen, haben Sie möglicherweise von plattformübergreifenden Frameworks wie PhoneGap oder Titanium Mobile gehört. Sie fragen sich vielleicht, warum Sie Objective-C lernen sollten, wenn Sie iOS-Anwendungen mit JavaScript erstellen. Lassen Sie mich einen kurzen Überblick über Ihre Optionen geben, wenn Sie sich für die Entwicklung von iOS-Anwendungen entscheiden.

  • Web Applikationen: Eine Webanwendung ist Ihre erste Option, und dies war tatsächlich die einzige Option vor der Einführung des nativen iOS SDK im Jahr 2008. Der Vorteil von Webanwendungen besteht darin, dass sie sich nicht mit dem App Store oder Apples Review-Prozess befassen müssen. Warum das? Eine Webanwendung ist ein fantastischer Name für eine Website, die sich wie eine Anwendung verhält und verhält. Sie benötigen lediglich einen Browser wie Mobile Safari oder Google Chrome.
    Webanwendungen haben klare Vorteile. Sie sind standardmäßig plattformübergreifend, da die Anwendung in einem Browser ausgeführt wird. Ein weiterer Vorteil ist die Lernkurve zum Erstellen von Webanwendungen. Wenn Sie mit der Webentwicklung vertraut sind, sind Sie in kürzester Zeit einsatzbereit.
    Natürlich können auch die Nachteile von Webanwendungen nicht ignoriert werden. Eine Webanwendung hat eingeschränkten Zugriff auf die Funktionen der Geräte, auf denen sie ausgeführt werden. Mobile Webanwendungen sind dank HTML5 und JavaScript sehr leistungsfähig. Es gibt jedoch deutliche Einschränkungen hinsichtlich der Möglichkeiten, die sie tun können. Sie können nicht alle Funktionen des iPad und iPhone nutzen. Für Webanwendungen ist normalerweise auch eine Netzwerkverbindung erforderlich, obwohl es Ausnahmen zu dieser Regel gibt. Der größte Nachteil der ausschließlichen Erstellung von Webanwendungen besteht jedoch möglicherweise darin, dass sie sich im Allgemeinen deutlich langsamer anfühlen als native Anwendungen. Die Reaktionsfähigkeit von Web-Apps verbessert sich ständig, jedoch sollte die vom Browser hinzugefügte Verzögerung nicht übersehen oder ignoriert werden.
  • Mobile plattformübergreifende Frameworks: Das Versprechen eines plattformübergreifenden Frameworks besteht darin, dass Entwickler eine Anwendung schreiben können, die auf mehreren mobilen Geräten aus einer einzigen Codebasis bereitgestellt werden kann. Dies wird durch verschiedene Ansätze erreicht. Einige Frameworks wie PhoneGap verwenden das native SDK der Plattform, um eine Webansicht zu erstellen, in die die Anwendung eingebettet ist. Wie bei Webanwendungen gelten für die Funktionalität Einschränkungen. Der Hauptvorteil besteht darin, dass sich die Anwendung hinsichtlich der Benutzererfahrung wie eine native Anwendung anfühlt und über den Store der Plattform verteilt werden kann.
    Auch wenn mobile Entwicklungsframeworks als das Allerheiligste für mobile Entwicklung erscheinen mögen, gibt es eine Reihe von Nachteilen, die in Betracht gezogen werden müssen. Der wichtigste Nachteil ist, dass Ihre Anwendung von einem Drittanbieter-Framework abhängt. Mit anderen Worten, Ihre gesamte Codebasis wird von dem Unternehmen abhängig, das die plattformübergreifende Lösung bereitstellt. Wenn dieses Unternehmen pleite geht oder nur langsam Änderungen am nativen SDK vornimmt, kann es sein, dass Sie von vorne anfangen müssen. Das ist ein Risiko, das nicht ignoriert werden sollte.
  • iOS SDK: Wenn Sie sich für die Entwicklung mit dem nativen SDK entscheiden, ist dies die beste Wahl, wenn Sie Anwendungen erstellen möchten, die sich abheben und die Funktionen des Geräts voll ausnutzen. Wenn Sie sich für eine native Anwendung entscheiden, bedeutet dies auch, dass Sie in einer robusten Entwicklungsumgebung arbeiten und sich auf die Entwicklungstools, Dienstprogramme und den Support von Apple verlassen können.

iOS-Ökosystem

Einer der attraktivsten Aspekte des iOS-Ökosystems ist seine Einfachheit. Die Liste der iOS-fähigen Geräte ist im Vergleich zu Android oder Windows Phone überraschend kurz. Dies bedeutet, dass das Testen von iOS-Anwendungen im Vergleich zu anderen Plattformen viel weniger umständlich ist.

Wie bereits erwähnt, hat Android iOS in Bezug auf den Marktanteil übertroffen. Dies ist jedoch nur ein Teil der Geschichte. Die iOS-Plattform macht mehr als 50% der Internetnutzung auf mobilen Geräten aus. Was sagt uns das über den mobilen Raum aus? Es sagt uns, dass iOS im mobilen Bereich das meistgenutzte Betriebssystem ist, zumindest online, und dies trotz des höheren Marktanteils von Android.

Geräte

Das iOS-Ökosystem umfasst im Wesentlichen zwei Gerätefamilien: die iPhone-Gerätefamilie, zu der auch der iPod Touch gehört, und die iPad-Gerätefamilie. Für eine vollständige Übersicht empfehle ich Ihnen, sich diese Liste anzusehen.

Die Hauptunterschiede in der iPhone-Gerätefamilie sind die Hardwarefunktionen und die Bildschirmgröße. Das iPhone 5, 5S, 5C und der iPod Touch der 5. Generation verfügen alle über einen größeren 4-Zoll-Bildschirm, während die Vorgängermodelle mit dem bekannteren 3,5-Zoll-Bildschirm ausgestattet sind. Der Unterschied in der Bildschirmgröße wirkt sich zwar auf die Entwicklung aus, verursacht jedoch bei den meisten Anwendungen keinen zusätzlichen Aufwand. Ich werde im Laufe der Serie mehr darüber sprechen.

2012 wurde die iPad-Familie mit der Einführung des iPad Mini erweitert. Auch wenn die Einführung des iPad Mini in der Technologiebranche zu einer Woge geführt hat, hat dies für iOS-Entwickler nur geringe Auswirkungen. Der Bildschirm des iPad Mini ist deutlich kleiner als der des 10 "iPad und iPad Air, die Auflösung ist jedoch identisch mit der Auflösung der 10" iPads. Aufgrund des kleineren Bildschirms des iPad Mini ist die durchschnittliche Größe der Berührungsziele geringer und dies kann für einige vorhandene Anwendungen ein Problem darstellen.

iOS

Apple veröffentlicht traditionell jedes Jahr eine neue Version seines mobilen Betriebssystems. Bis heute hat Apple sieben Hauptversionen seines mobilen Betriebssystems herausgebracht. Die neueste Version ist iOS 7. Die Geräteunterstützung ist ein Aspekt von iOS, den die Leute oft übersehen. Nehmen Sie zum Beispiel das iPhone 4. Das iPhone 4 wurde 2010 veröffentlicht und kann noch immer mit iOS 7 betrieben werden. Es gibt keine mobile Plattform, die der Geräteunterstützung sogar nahe kommt.

Appstore

Einer der Hauptgründe für die Entwicklung der iOS-Plattform ist der unglaubliche Erfolg des App Store. Der Verkauf von Software war dank App Store und Mac App Store noch nie einfacher. Apple hat kürzlich bekannt gegeben, dass der App Store den Meilenstein von 1 Million Anwendungen überschritten hat. Im App Store wird es etwas eng, aber bedenken Sie, dass auch die Anzahl der iOS-Geräte exponentiell zunimmt.

Der mobile Raum steckt noch in den Kinderschuhen und es gibt noch so viel Potenzial, das es zu entdecken gilt. So wie es das Web Ende der neunziger Jahre war, wird der mobile Raum schnell wachsen, und mit jedem verkauften Smartphone oder Tablet steigt der Geldbetrag.


Fazit

Sie haben jetzt ein klares Bild vom iOS-Ökosystem und ich hoffe, ich konnte Sie davon überzeugen, mit der iOS-Entwicklung zu beginnen. Im nächsten Beitrag werde ich Ihnen zeigen, wie Sie mit dem nativen SDK durch Einrichten der Entwicklungsumgebung beginnen. Sie werden überrascht sein, wie einfach das ist.

Zusätzliche Ressourcen

Wenn Sie mit der iOS-Entwicklung oder der mobilen Entwicklung im Allgemeinen noch nicht vertraut sind, können Sie unsere App-Entwicklungsseite in Envato Studio besuchen.