Heb je weleens willen proberen applicaties te ontwikkelen voor de iPhone of iPad, dan is het nu de juiste tijd om te beginnen. Langer wachten betekent alleen maar een achterstand oplopen voor wat betreft de toenemende concurrentie op de markt en het creëren van een eigen merk. Bovendien zijn er nu geweldige tools beschikbaar die jou snel op gang kunnen helpen.
De mooie kant van mobiele applicaties ontwikkelen is dat je met een paar ontwikkelaars en zelfs alleen bijna op gelijke voet kan concurreren met de grote ontwikkelingsbedrijven.
Tegenwoordig hoef je van Apple niet op veel hulp te rekenen en de meeste apps in de Apple Store zijn vaak ook het product van grote ontwikkelingsbedrijven. Toch kan iedereen die een geweldig idee heeft gehad een succesvolle app uitgeven omdat applicaties net zo goed verkopen door mond-tot-mond reclame en door goede recensies in de App Store.
Hoe ga je dus te werk als je applicaties wilt ontwikkelen voor iPhone en iPad?
Allereerst, uitproberen
Om te beginnen ga een beetje spelen met de ontwikkeltools. Xcode is het officieel ontwikkelplatform van Apple en gratis te downloaden.
Om je apps te verkopen zal je een ontwikkelaarslicentie nodig hebben, maar je kan al eerder een beetje meespelen met de omgeving om goed op gang te komen en ervaring op te doen. Apple heeft Objective-C, die soms moeilijk was te gebruiken voor ontwikkeling, vervangen met de Swift programmeertaal. De naam zegt het al, Swift is een snel platform, hoewel dit niet over de snelheid van die applicatie gaat.
Daarmee bedoelen we dat Swift niet direct een snel ontwikkelplatform is voor applicaties, maar met Swift kan je veel sneller programmeren dan met de oudere Objective-C.
Let op: om iOS applicaties te ontwikkelen heb je en Mac computer nodig. Deze hoeft echter niet de krachtigste Mac ter wereld te zijn. Een Mac Mini is, bijvoorbeeld, meer dan voldoende, wil je apps bouwen voor iPhone en iPad.
Bekijk ook ontwikkeltools van derden
Inhoudsopgave
Maar wat moet je als je nooit in “C” hebt geprogrammeerd? Of als je applicaties wilt maken voor zowel iOS als Android? Of als je een platform zoekt om games te maken? Er zijn geweldige alternatieven voor Xcode beschikbaar.
Blijven bij een native platform is altijd een goede zaak. Door Xcode te gebruiken om je iOS apps te coderen, heb je altijd toegang tot de nieuwste functies van het besturingssysteem. Maar op het moment dat je je apps op meerdere platforms wilt uitgeven, dan zal het coderen van elke applicatie meer tijd en middelen kosten.
Marmalade
Marmalade heette vroeger Airplay SDK en heeft de filosofie van “write once run anywhere” (eenmaal schrijven overal gebruiken) een stap verder gebracht door de ondersteuning van meerdere talen. In eerste instantie ondersteunt Marmalade de programmeertaal “C”, maar twee varianten vormen een brug naar de basis SDK. De varianten zijn Marmalade Quick, die LUA gebruikt en Marmalade Web, die HTML 5, Javascript en CSS3 gebruikt. Met Marmalade worden vooral 3D en 2D games ontwikkeld.
Corona
De Corona SDK (software development kit – een verzameling hulpmiddelen om programma’s te ontwikkelen) gebruikt de programmeertaal LUA als ontwikkeltaal en compileert daarna opnieuw naar Objective-C. Applicaties bouw je sneller met Corona omdat LUA sneller kan schrijven. Corona is gespecialiseerd in 2D graphics (afbeeldingen) en heeft een eigen fysica engine. Met een enkele code set kan je voor zowel iOS als Android compileren. Verder ondersteunt Corona het maken van native applicaties voor Windows en Mac Os, maar geeft geen ondersteuning voor, bijvoorbeeld, de PlayStation 4 of Xbox One. Voor 2D games en informele games is Corona een prima keuze.
Adobe Air
Adobe Air is vooral interessant als je een beetje thuis bent met Flash. Om applicaties te bouwen gebruikt Adobe Air een combinatie van ActionScript, HTML (Hypertext Markup Language), CSS (Cascading Style Sheets) en Javascript. Met Adobe Air kan je ontwikkelen voor zowel iOS als Android en Blackberry.
Unity
Unity is een 3D grafische engine die een fysica engine bevat. Hoewel het sinds kort ook ondersteuning voor 2D heeft gekregen, wordt Unity vooral gebruikt voor de ontwikkeling van 3D games. Je kan Unity gebruiken voor de ontwikkeling voor zowel iOS als Android, Windows, BlackBerry, OS X, Linux, Playstation 3, Xbox 360 en Wii U. Als je van plan bent om een game op verschillende platforms uit te geven is Unity een geweldige keuze. Unity heeft handige tools die je helpen een spel bouwen, maar is niet zo snel als sommige concurrenten.
Adobe PhoneGap
PhoneGap is vooral interessant voor web ontwikkelaars omdat het Javascript, HTML 5 en CSS3 gebruikt om webapplicaties te maken die een mobiele uitstraling en gevoel hebben. PhoneGap kan ook native apps bouwen door de code van een web object te kapselen binnen het platform. Je kan PhoneGap gebruiken om applicaties te ontwikkelen in iOS, Android, webOS, Symbian, Blackberry, Ubuntu Touch, Windows Phone en Windows 8.
Deze lijst die we jou aanbieden is absoluut niet compleet. Er is veel meer en je hebt zelfs ontwikkelplatvormen zoals GameSalad waarmee je applicaties kan bouwen zonder enige codering. Op Wikipedia vind je een complete lijst.
Verfijn je idee en pas het beste toe van iOS
Om een goed idee te krijgen van hoe de concurrentie met een app zoals je in je hoofd hebt, is omgegaan is het verstandig om vergelijkbare apps te downloaden van de App Store van Apple. Zo kan je goed zien wat werkt (niets veranderen als het goed werkt) en wat niet. Kan je niet precies hetzelfde vinden als je eigen applicatie, download dan iets vergelijkbaars.
Je zal ook potlood en papier moeten pakken. Een grafische gebruikersinterface (GUI) ontwikkelen voor iPhone en iPad gaat anders dan ontwikkelen voor de computer of voor het web. De schermruimte is zeer beperkt, de muis en een fysiek toetsenbord ontbreken en het scherm is een touchscreen (aanraakscherm). Om te zien hoe de app zou kunnen werken, is het een goed idee om een aantal schermen te tekenen en de interface op papier te zetten. Dit komt ook van pas om de app te compartimenteren en dus een overzicht krijgen voor een logische doorstroming in je ontwikkeling.
Voordat je aan de GUI begint, kan je de Human Interface Guidelines (richtlijnen voor gebruikersinterface) van iOS bekijken op developer.apple.com.
Het ontwikkelaarsprogramma van Apple
Zodra je idee verfijnd is en je de weg weet in het ontwikkelplatform, kan je deelnemen aan het ontwikkelaarsprogramma van Apple. Dat moet je doen om je applicaties te kunnen indienen bij de App Store van Apple. Het ontwikkelaarsprogramma kost € 99 per jaar. Je kan enigszins beroep doen op deskundigen, want in dit periode heb je recht op twee ondersteuningsgesprekken voor het geval dat je vast komt te zitten met een programmeerprobleem.
Let op: Je kan inschrijven als individu of als bedrijf. Om als bedrijf te inschrijven moet je een echt bedrijf hebben en beschikken over alle betreffende documentatie zoals statuten en licentie.
Push “Hello, World” op je iPhone of iPad
Ga niet meteen beginnen met ontwikkelen. Je kan beter eerst een standaard “Hello, World” app maken en deze te pushen naar je iPhone of iPad. Hiervoor moet je een ontwikkelaarscertificaat hebben en een “provisioning” profiel aanmaken (provisioning betekent een app voorbereiden en instellen om het op een apparaat te kunnen draaien en om app-services te gebruiken). Doe het nu, dan hoef je het later niet wanner je in de ontwikkelingsfase van Quality Assurance (kwaliteitscontrole) komt.
Begin klein en ga van daaruit verder
Probeer niet je hele project meteen rond te krijgen. Wees bewust dat het maanden en maanden kan duren om de app te coderen die je in je gedachten hebt. Je kan beter klein beginnen, zeker wanneer je nog geen ervaring hebt met het bouwen van applicaties. Je kan enkele functies isoleren die je in je app wilt opnemen en van elke functie een vergelijkbare, kleinere app maken.
Stel dat je, bijvoorbeeld, een scrolbare lijst in je uiteindelijke app nodig hebt, een lijst waar de gebruiker items kan toevoegen, dan kan je een boodschappenlijst applicatie maken. Hiermee kan je experimenteren met het coderen van specifieke functies voordat je aan de grote geheel begint.
Het zal je opvallen dat de tweede keer dat je een functie programmeert altijd sneller gaat dan de eerste keer. Je kan dus beter buiten het grote project experimenteren, in plaats van fouten maken bij het werken aan je grote idee. En soms is een kleine app ook verhandelbaar en je kan er geld mee verdienen en tegelijk leren hoe je je grotere project moet coderen.
En, al zou je geen verhandelbare app kunnen bedenken, het simpelweg spelen met een functie in een geïsoleerd project kan een goede manier zijn om deze functie te leren implementeren in het hoofdproject. Lees ook ons artikel over alle beginners fouten die je kunt maken.
Geef een reactie