Het iOS-ecosysteem begrijpen

Voordat u begint met het bouwen van iOS-applicaties, is het cruciaal dat u eerst het ecosysteem begrijpt. In dit artikel worden de fundamenten van het iOS-besturingssysteem, de verschillende beschikbare iOS-apparaten en de App Store van Apple onderzocht.


Waarom iOS?

Vóór de komst van Android en Windows Phone was Apple de dominante speler in de mobiele ruimte, die alleen wedijvert met Nokia en BlackBerry. Met de opkomst van nieuwe mobiele platforms, is het steeds belangrijker geworden om jezelf af te vragen welk platform het meest geschikt voor je is. Ondanks de voorsprong van Apple in 2007, heeft Android het marktaandeel van iOS overtroffen. Wat betekent dat voor iOS? Is het nog steeds een platform dat het waard is om te ontwikkelen? Het is zeker. Er zijn veel goede redenen om aan de slag te gaan met de ontwikkeling van iOS.

  • Sterke financiële prikkels: Mensen geven meer geld uit aan de Apple App Store dan op elk ander mobiel platform. Ondanks het feit dat Android de dominante speler in de mobiele ruimte is geworden, blijft het iOS-platform lucratiever voor ontwikkelaars.
  • Ommuurde tuin: Hoewel Apple's App Store veel kritiek heeft ontvangen van ontwikkelaars en klanten, met name het beoordelingsproces van Apple, is het duidelijk dat dit beleid heeft geleid tot een App Store waarin de kwaliteit van de gemiddelde applicatie hoger is dan in andere mobiele winkels. Klanten voelen zich ook veel veiliger bij het kopen van applicaties uit de App Store dan bij andere Open platforms, zoals Google Play.
  • Gemeenschap en ondersteuning: De iOS-ontwikkelaarsgemeenschap is een geweldige community om deel van uit te maken. Er is een bijna onbeperkt aanbod van artikelen, tutorials en documentatie om u te helpen wanneer u merkt dat u vastzit met een probleem. Bovendien is Apple's documentatie over de iOS SDK fantastisch, om nog maar te zwijgen van de honderden WWDC (World Wide Developer Conference) -video's die beschikbaar zijn voor elke geregistreerde iOS-ontwikkelaar.

Mensen vergeten vaak of weten niet dat Android en iOS heel verschillende platforms zijn. Hoewel beide platforms zijn ontworpen voor de mobiele ruimte, verschilt het ecosysteem van iOS in veel opzichten van het Android-ecosysteem van Google. Vanuit ontwikkelingsperspectief lijken de meeste mensen het gemakkelijker te vinden om zich voor het iOS-platform te ontwikkelen dan voor het Android-platform. Begrijp me niet verkeerd, ik verwijs niet naar de technologiestack die elk platform gebruikt, noch verwijs ik naar de beschikbare tools voor elk platform. Twee redenen liggen aan de basis van de kloof tussen iOS en Android, fragmentatie en acceptatiegraad.

fragmentatie

Een van de sterke punten van Android is tegelijkertijd een van zijn belangrijkste zwakke punten. Zoals de meesten van jullie weten, wordt het Android-besturingssysteem vrijgegeven als een open source-project en kan het daarom worden gebruikt en aangepast. Talrijke hardwarefabrikanten zagen het potentieel van Android, vooral omdat het werd ondersteund door Google. Android is daardoor snel populair geworden. Het probleem is dat elke hardwarefabrikant Android heeft aangepast aan hun behoeften en dat er sinds de introductie van Android een grote verscheidenheid aan vormfactoren is ontstaan.

Hoewel Android's marktaandeel een grote pot honing lijkt, is het lastig om software te maken die wordt uitgevoerd op elke Android-versie die momenteel beschikbaar is. Vanwege de duizenden verschillende apparaten die Android draaien, is het testen van software op hardware ook geen sinecure. Zoals u zich kunt voorstellen, worden ondersteuning en compatibiliteit een echte uitdaging.

Adoptiepercentage

Traditioneel wordt de draadloze markt in veel landen onder strikte controle gehouden door mobiele carriers. Vanaf het begin wist Apple dat het controle moest hebben over zijn mobiele apparaten om de best mogelijke gebruikerservaring te bieden. Het resultaat is dat klanten hun iOS-apparaten kunnen upgraden naar de nieuwste versie van iOS op dezelfde dag dat deze wordt vrijgegeven voor het publiek. Dit is een groot voordeel van het iOS-platform en het resultaat is aanzienlijk. Minder dan drie maanden na de release van iOS 7 was meer dan 74% van de iOS-apparaten geüpgraded naar iOS 7.

Laten we dit vergelijken met Android. In december 2013 had minder dan 55% van de Android-gebruikers hun apparaten geüpgraded naar Jelly Bean (uitgebracht in juli 2012) en had 1,1% een upgrade naar KitKat (uitgebracht in oktober 2013).

De reden om deze nummers te verzamelen is niet om het Android-platform of een ander mobiel platform te bagatelliseren. Wat ik wil benadrukken, is de impact die adoptiegraad heeft op het applicatie-ecosysteem van deze platforms. De langzamere gebruikers adopteren een nieuwe versie van een besturingssysteem, de langere ontwikkelaars worden gedwongen oudere versies van het besturingssysteem te ondersteunen en het wordt minder aantrekkelijk om nieuwe technologieën te gebruiken, die alleen op een fractie van de Android-apparaten kunnen worden gebruikt.

monetization

Hoewel Android aan het inhalen is, is iOS nog steeds verreweg het beste platform voor het genereren van inkomsten. Tijdens Apples meest recente evenement kondigde Tim Cook aan dat klanten meer dan 60 miljard applicaties hadden gedownload en dat Apple meer dan $ 13 miljard aan iOS-ontwikkelaars had betaald. In september 2013 kondigde Tim Cook tijdens Apple's jaarlijkse iPhone-evenement aan dat het bedrijf meer dan 700 miljoen iOS-apparaten had verkocht. Als u overweegt te ontwikkelen voor een mobiel platform, dan is iOS een uitstekende keuze en is de financiële stimulans om dit te doen waarschijnlijk niet snel te veranderen.


Waarom Native?

Als u een frequente lezer bent van Envato Tuts +, dan heeft u misschien wel gehoord van platformonafhankelijke frameworks zoals PhoneGap of Titanium Mobile. U vraagt ​​zich misschien af ​​waarom u moeite moet doen om Objective-C te leren wanneer u iOS-applicaties kunt maken met JavaScript. Ik zal u een kort overzicht geven van uw opties als u besluit iOS-apps te ontwikkelen.

  • Web applicaties: Een webapplicatie is uw eerste optie en dit was in feite de enige optie voorafgaand aan de introductie van de native iOS SDK in 2008. Het voordeel van webapplicaties is dat zij niet te maken hebben met de App Store of het beoordelingsproces van Apple. Waarom is dat? Een webapplicatie is een mooie naam voor een website die werkt en zich gedraagt ​​als een applicatie. Het enige dat u nodig hebt, is een browser, zoals Mobile Safari of Google Chrome.
    Webapplicaties hebben duidelijke voordelen. Ze zijn standaard per platform, omdat de toepassing in een browser wordt uitgevoerd. Een ander voordeel is de leercurve om webapplicaties te maken. Als u bekend bent met webontwikkeling, bent u binnen de kortste keren weer online.
    Natuurlijk kunnen ook de nadelen van webapplicaties niet worden genegeerd. Een webtoepassing heeft beperkte toegang tot de mogelijkheden van de apparaten waarop ze worden uitgevoerd. Mobiele webapps zijn behoorlijk krachtig dankzij HTML5 en JavaScript. Er zijn echter verschillende beperkingen in termen van wat ze kunnen doen. Je zult niet in staat zijn om alle coole functies van de iPad en iPhone te gebruiken. Bovendien vereisen webtoepassingen meestal dat een netwerkverbinding werkt, hoewel er uitzonderingen zijn op deze regel. Misschien is het grootste nadeel van het uitsluitend bouwen van webapplicaties dat ze zich in het algemeen aanzienlijk langzamer voelen dan native applicaties. De responsiviteit van web-apps wordt voortdurend verbeterd, maar de overgeërfde vertraging toegevoegd door de browser mag niet over het hoofd worden gezien of genegeerd.
  • Mobiele platformonafhankelijke frameworks: De belofte van een platformonafhankelijk raamwerk is dat ontwikkelaars een applicatie kunnen schrijven die vanuit meerdere codes op meerdere mobiele apparaten kan worden geïmplementeerd. Dit wordt bereikt met een aantal verschillende benaderingen. Sommige frameworks, zoals PhoneGap, gebruiken de native SDK van het platform om een ​​webweergave te maken waarin de toepassing is ingesloten. Net als bij webapplicaties, legt dit beperkingen op in termen van functionaliteit. Het belangrijkste voordeel is dat de applicatie als een native applicatie voelt in termen van gebruikerservaring en dat deze kan worden gedistribueerd via de winkel van het platform.
    Hoewel kaders voor mobiele ontwikkeling misschien de heilige graal voor mobiele ontwikkeling lijken, zijn er een aantal nadelen die moeten worden overwogen. Het belangrijkste nadeel is dat uw toepassing afhankelijk is van een extern raamwerk. Met andere woorden, uw volledige codebasis wordt afhankelijk van het bedrijf dat de platformonafhankelijke oplossing biedt. Als dat bedrijf failliet gaat of traag is met het implementeren van wijzigingen die zijn aangebracht in de oorspronkelijke SDK, kan je worden gedwongen helemaal opnieuw te beginnen. Dat is een risico dat niet mag worden genegeerd.
  • iOS SDK: Kiezen om te ontwikkelen met de native SDK is de beste keuze als u applicaties wilt maken die eruit springen en optimaal gebruikmaken van de mogelijkheden van het apparaat. Kiezen voor een native applicatie betekent ook dat u in een robuuste ontwikkelomgeving werkt en dat u kunt vertrouwen op de ontwikkeltools, hulpprogramma's en ondersteuning van Apple.

iOS ecosysteem

Een van de meest aansprekende aspecten van het iOS-ecosysteem is de eenvoud ervan. De lijst met apparaten die iOS kunnen uitvoeren is verrassend kort in vergelijking met Android of Windows Phone. Dit betekent dat het testen van iOS-applicaties veel minder omslachtig is in vergelijking met andere platforms.

Zoals eerder vermeld, heeft Android iOS qua marktaandeel overtroffen, maar dit is slechts een deel van het verhaal. Het iOS-platform is goed voor meer dan 50% van het internetgebruik op mobiele apparaten. Wat zegt dit over de mobiele ruimte? Het vertelt ons dat iOS nog steeds het meest gebruikte besturingssysteem in de mobiele ruimte is, althans online, en dit ondanks het hogere marktaandeel van Android.

apparaten

Er zijn in wezen twee apparaatfamilies binnen het iOS-ecosysteem: de iPhone-apparaatfamilie, die ook de iPod Touch en de iPad-apparaatfamilie omvat. Voor een volledig overzicht, raad ik aan om deze lijst te bekijken.

De primaire verschillen in de iPhone-apparaatfamilie zijn hardwaremogelijkheden en schermgrootte. De iPhone 5, 5S, 5C en de iPod Touch van de 5e generatie hebben allemaal een groter 4 "scherm, terwijl de vorige modellen worden geleverd met het bekendere 3,5" -scherm. Het verschil in schermgrootte is van invloed op de ontwikkeling, maar het voegt niet veel overhead toe voor de meeste toepassingen. Ik zal hier in de loop van de serie meer over praten.

In 2012 werd de iPad-familie uitgebreid met de introductie van de iPad Mini. Hoewel de introductie van de iPad Mini voor een golfbeweging zorgde in de technologie-industrie, heeft het weinig impact op iOS-ontwikkelaars. Het scherm van de iPad Mini is aanzienlijk kleiner dan dat van de 10 "iPad en iPad Air, maar de resolutie is identiek aan de resolutie van de 10" iPads. Vanwege het kleinere scherm van de iPad Mini is de gemiddelde grootte van de aanraakdoelen kleiner en kan dit een probleem vormen voor sommige bestaande toepassingen.

iOS

Apple brengt elk jaar traditioneel een nieuwe versie van zijn mobiele besturingssysteem uit. Tot op heden heeft Apple zeven belangrijke versies van zijn mobiele besturingssysteem uitgebracht, waarvan de meest recente versie iOS 7 is. Apparaatondersteuning is een aspect van iOS dat mensen vaak over het hoofd zien. Neem de iPhone 4 bijvoorbeeld. De iPhone 4 werd uitgebracht in 2010 en is nog steeds in staat iOS 7 uit te voeren. Er is geen mobiel platform dat hier zelfs maar in de buurt komt qua apparaatondersteuning.

App Winkel

Een van de belangrijkste redenen om te ontwikkelen voor het iOS-platform is het ongelooflijke succes van de App Store. Software verkopen was nog nooit zo eenvoudig dankzij zowel de App Store als de Mac App Store. Apple heeft onlangs aangekondigd dat de App Store de mijlpaal van 1 miljoen applicaties heeft overschreden. Het wordt een beetje druk in de App Store, maar houd er rekening mee dat het aantal iOS-apparaten ook exponentieel blijft groeien.

De mobiele ruimte staat nog in de kinderschoenen en er is nog zoveel potentieel dat wacht om ontdekt te worden. Net zoals bij het web in de late jaren negentig, blijft de mobiele ruimte in snel tempo groeien en neemt de hoeveelheid geld die kan worden gemaakt toe met elke nieuwe smartphone of tablet die wordt verkocht.


Conclusie

U hebt nu een duidelijk beeld van het iOS-ecosysteem en ik hoop dat ik u heb kunnen overtuigen om aan de slag te gaan met de ontwikkeling van iOS. In het volgende bericht zal ik je laten zien hoe je aan de slag kunt gaan met de native SDK door de ontwikkelomgeving in te stellen. Je zult verrast zijn hoe gemakkelijk dit is.

Extra hulpbronnen

Als je nieuw bent bij iOS-ontwikkeling of mobiele ontwikkeling in het algemeen, dan ben je misschien geïnteresseerd in het bekijken van onze App Development-pagina in Envato Studio.