Ultieme handleiding voor het bouwen en publiceren van uw eerste iPhone-app
Overweeg je om je eigen app te maken? Dit is wat je moet weten. Meer informatie over het ecosysteem van de app, programmeertalen, toolsets en de benodigde tijd en moeite. Laten we u niet vertellen wat u moeten weet, maar leg liever uit hoe je vandaag daadwerkelijk kunt beginnen om een app in de App Store te laten publiceren.
Voor uw snelle referentie, hier zijn de snelkoppelingen:
- Bouwstenen van een app: de basisprincipes
- Het app-maakproces
- Op Swift en Objective-C
- Middleware: eenmaal bouwen, meerdere keren uitvoeren
- Ontwerp: hoe uw app wordt gebruikt
- Hoe een app voor internet in te schakelen
- Van bèta naar live gaan
- Veelgestelde vragen over uw eerste app maken
- Leermiddelen om aan de slag te gaan
- Volledige referentielijst
1. Bouwstenen van een app: de basisprincipes
Een app is gewoon een stukje computersoftware op een smartphone. Het is geschreven door een programmeur en samengesteld met grafische elementen die door een ontwerper zijn gemaakt.
Apps voor iPhone zijn gemaakt met een Mac-applicatie genaamd Xcode, en geprogrammeerd in Swift of Objective-C. Veel apps zijn verbonden met internet, wat betekent dat ze een backend waarmee opslag van gegevens in de cloud of functionaliteit die gebruikers onderling verbindt.
Xcode is de applicatie die je kunt gebruiken voor het maken van native iPhone-apps, en het is alleen beschikbaar voor Mac OS X. Het bevat Interface Builder, een hulpmiddel om visueel de grafische basis van je app te creëren. Het is een steiger gereedschap: je kunt er geen functionele app mee maken, maar dat kan leg de basis voor de GUI's van uw app.
Xcode heeft veel handige functies, zoals Auto Layout om uw interface te laten werken op meerdere schermresoluties en een iPhone Simulator om uw app te testen zonder een echte iPhone.
Om apps te publiceren in de App Store, hebt u een ontwikkelaarsaccount van Apple nodig. Het is beschikbaar voor $ 99 USD per jaar en moet elk jaar worden vernieuwd. Apple heeft een uitgebreide online toolset beschikbaar voor het beheer van nieuwe en gepubliceerde apps, genaamd iTunes Connect, evenals een uitgebreide set documentatie.
Bovendien heeft iTunes Connect nu een beta-distributieprogramma met de naam TestFlight. Het kan worden gebruikt om distribueer je app naar bètatesters.
2. Het proces voor het maken van de app
Elk app-ontwikkelingsproces volgt ruwweg deze stappen:
- Ontwerp. Maak een mockup van je app en ontwerp alle componenten op het scherm.
- Ontwikkelen. Deze stap omvat het coderen van de app, het verbinden van interfaces met zo-die-dan-die acties.
- Test. Stuur de app naar bètatesters en verzamel feedback over de prestaties. Los vervolgens eventuele fouten op die zich voordoen.
- Publiceren. Haal je app na het beoordelingsproces door en push hem naar productie in de App Store.
Modern procesbeheer werkt vaak met iteraties op micro- en macroniveau.
Wanneer u een nieuwe functie maakt, moet u deze altijd eerst ontwerpen en vervolgens coderen, testen en vervolgens live duwen. Of het nu gaat om een klein onderdeel of een heel nieuw onderdeel van de app, volg dit proces.
3. Op Swift en Objective-C
iPhone-apps zijn allemaal geschreven in Swift of Objective-C. Snel is de nieuwe programmeertaal uitgevonden door Apple, aangekondigd op 2 juni 2014, en vervolgens uitgebracht als een stabiele 1.0-versie op 9 september 2014. Het is een vrij nieuwe taal en apps die volledig in Swift zijn geschreven, raken nu net de App Store.
Swift wint snel aan populariteit en zijn functies worden zeer geprezen door zowel beginnende als gevorderde programmeurs. Het mooie van Swift is dat het uitwisselbaar is met Objective-C. Dit helpt de adoptie van Swift door programmeurs, omdat zij hoef niet hun volledige codebase te herschrijven om compatibel te zijn met de nieuwe taal.
Mensen die al een gemiddeld niveau in een programmeertaal hebben, hebben minder tijd nodig om Objective-C of Swift op te halen. Vooral degenen die hebben gewerkt met talen die vergelijkbaar zijn met Swift, zoals Java, PHP of Ruby, zouden het geen enkel probleem moeten hebben om Swift te leren.
Maar wat is beter, Snel of Objectief-C?
Objective-C is een beetje moeilijker aan te pakken omdat het een unieke syntaxis gebruikt. Voor beginners is Swift duidelijk de betere optie. Het is eenvoudiger in vergelijking met Objective-C en verwijdert overheadkosten uit het ontwikkelingsproces, waardoor de toetredingsdrempel voor beginners aanzienlijk lager wordt.
Desondanks is Objective-C nog steeds de standaard in veel bedrijven over de hele wereld, dus de legacode is de komende jaren Objective-C. Als werkende iOS-ontwikkelaar, zie je meer Objective-C dan Swift.
4. Middleware: eenmaal bouwen, meerdere keren uitvoeren
Middleware (of cross-platform) zoals Cordova of PhoneGap, is een populaire keuze voor app-ontwikkelaars, omdat het hen in staat stelt om code één keer te schrijven en zet het op zowel Android als iOS.
Apps voor Android zijn geschreven in Java en ze zijn niet compatibel met iOS-apps. Als u een app wilt maken voor beide platforms, maar niet dezelfde app twee keer wilt programmeren, middleware is een tijdbesparende optie.
Veel van deze platformonafhankelijke hulpprogramma's zijn gebaseerd op webtechnologie, zoals HTML5, CSS en JavaScript.
PhoneGap wordt het meest gebruikt: het wordt gebruikt door 400.000 app-ontwikkelaars. PhoneGap heeft zijn eigen bouwtools en technisch gezien exporteert een app dat kan worden uitgevoerd en gebouwd in Xcode, het maken van een “hybride app” - native componenten gecombineerd met HTML5.
PhoneGap is nu beschikbaar PhoneGap Build, die de Xcode-compiler vervangt door een cloud-gebaseerde oplossing. PhoneGap is gratis en vrijgegeven onder de open-source Apache Public License v2.
Alternatieven voor PhoneGap zijn onder andere:
- Cordova (open-source)
- Sencha Touch (open-source en commercieel)
- RhoMobile Suite (open-source)
PhoneGap overtreft deze alternatieven met ondersteunde apparaten (iOS, Android, Windows Phone, BlackBerry OS, Ubuntu en Firefox OS) en ondersteunde hardware (versnellingsmeter, camera, etc.).
Nadelen aan middleware
Het gebruik van middleware zoals PhoneGap heeft twee belangrijke nadelen.
Omdat dergelijke tools allemaal gebaseerd zijn op webtechnologie, kunnen ze geen gebruik maken van hardware-versnelde native componenten. Animaties, overgangen en afbeeldingen met een hoge resolutie werken niet zo goed als in een native app, wat dit maakt onmogelijk om te gebruiken voor games of visueel intense apps.
Ook vereist het gebruik van middleware goede kennis van compilers en build-tools, waardoor het een ongemakkelijke optie voor beginnende ontwikkelaars.
5. Ontwerp: hoe uw app wordt gebruikt
Niet alles is apps is programmeren. Grafisch ontwerp is groot in de app-industrie; het is een vereiste voor elke app die serieus genomen wil worden. Overweeg je om je eigen apps te programmeren? Als uw budget het toelaat, huur dan een grafisch ontwerper in. Er zijn genoeg mensen op outsourcing-sites zoals Elance of oDesk.
Dat gezegd hebbende, je hebt geen grafisch ontwerper nodig als je net begint. Op iOS kunt u werken met de vele pre-fab componenten die Apple gebruikt in hun eigen apps en in de gebruikersinterface van het besturingssysteem. De standaard componenten van de iPhone-gebruikersinterface zien er niet uitzonderlijk uit, maar ze zijn ook niet slecht. Het is een geweldige manier om te beginnen zonder al te veel tijd te besteden aan het grafische uiterlijk van uw app.
Hulpmiddelen en bronnen
Human Interface Guidelines geeft u een goed overzicht van de beschikbare componenten en hoe u ze kunt gebruiken.
Icons: Overweeg een pictogramkit te gebruiken zoals Glyphish (commercieel). Ze hebben honderden pictogrammen samengesteld, geoptimaliseerd voor iPhone-apps, waaronder pictogrammen voor sociale media, knoppen voor afspelen / stoppen en symbolen voor app-gerelateerde taken, zoals nieuw, bewerken en verzenden.
mockups: Een andere tool die u beslist moet gebruiken, is Balsamiq Mockups (gratis proefversie, commercieel). Het is een aanwijzen-en-klik-editor voor het maken van mockups van uw apps. Een mockup is een ruwe schets en toont en verklaart hoe uw app werkt en wat deze doet. Begin nooit met programmeren: doe een stapje terug en bedenk opnieuw de gebruikersinterface van uw apps en lay-out door een mockup te maken.
Heb je een geschetste mockup gemaakt, maar heb je geen idee hoe de app eruit zal zien? Werk met de ontwerp-PSD's van Teehan + Lax (gratis). Ze hebben alle GUI-componenten uit iOS gehaald en beschikbaar gemaakt als vectorafbeeldingen. Perfect voor het maken van een grafische mockup!
6. Hoe een app voor internet in te schakelen
Is uw app verbonden met internet? Het creëren van een aangepaste back-end met server-side talen zoals NodeJS, Ruby of PHP kan veel tijd, geld en moeite kosten. Het is gemakkelijker om een Platform-as-a-Service-tool te gebruiken, zoals Parse.
Ontleden is een cloudgebaseerde oplossing voor het offline en online opslaan van gegevens in uw app. Stel dat u een sociale app maakt met een stroom afbeeldingen en statusupdates. U kunt Parse gebruiken om die gegevens op te slaan in de cloud en gebruik hun SDK om deze van en naar uw gebruikers te krijgen.
Gebruik een tool zoals Parse volledig verwijdert de noodzaak om een aangepaste back-end te bouwen. De basisgebruikslaag van Parse is gratis, daaropvolgende niveaus beginnen bij USD100 / maand.
Alternatieven voor Parse zijn Appcelerator (middleware + PaaS, commercial) en App42 (PaaS + analytics, free tier).
7. Van bèta naar live gaan
Voordat een app in de App Store wordt gepubliceerd, moet je deze uploaden met iTunes Connect. U voert de basisinformatie van uw app in zoals een beschrijving, app-categorieën en welk app-pictogram moet worden gebruikt.
Uw app komt dan in het beoordelingsproces, een vereiste van Apple. Een recensent van Apple controleert of uw app zich houdt aan de Beoordelingsrichtlijnen en of deze fouten bevat. Het is een kwaliteitscontrole om ervoor te zorgen dat alleen goede apps de App Store binnenkomen en vanaf het moment dat deze wordt geüpload duurt ongeveer 2 weken om uw app beoordeeld te krijgen.
Meer over Hongkiat:
- Genereer eenvoudig iOS-app-pictogrammen met MakeAppIcon
- Promoot uw iOS-app met de metatag van de iTunes-app
- 8 tips om downloads voor je app te vergroten
- 20 advertentienetwerken om inkomsten te genereren met uw mobiele app
10 veelgestelde vragen over het maken van uw eerste app
Natuurlijk heb je op dit moment nog steeds een aantal brandende vragen met betrekking tot het maken van je allereerste iOS-apps. We gaan een kijkje nemen bij de top 10 van vragen waar nieuwe app-ontwikkelaars zich zorgen over maken.
1. Hoeveel kost een app??
De kosten van de ontwikkeling van een app kunnen erg verschillen van het ene contracterende bedrijf naar het andere. Outsourcing freelancers kunnen een eenvoudige app maken voor ongeveer USD3000. Grotere bedrijven kunnen vragen van USD25.000 tot USD100.000 voor een complexe applicatie, waaronder grafisch ontwerp en back-end programmeren. Bedrijven zoals Tinder, Pinterest, Facebook, enz. Kunnen honderdduizenden tot miljoenen uitgeven aan ontwikkeling en marketing een app. Net als overal elders: je krijgt waar je voor betaalt.
2. Ik zit vast met een programmeerfout. Hoe krijg ik hulp?
Veel programmeervragen voor beginners zijn al gesteld op sites zoals StackOverflow. Zoek naar het foutbericht of de bug die je hebt gevonden en je zult waarschijnlijk een oplossing vinden. Wanneer je zelf een vraag stelt, zoek altijd eerst, en zorg ervoor dat je je probleem grondig uitlegt en vertel de stappen die je al hebt genomen om het op te lossen. Quora is een goed medium voor het stellen van niet-technische vragen, bijvoorbeeld over zakelijke en UX / UI-onderwerpen.
3. Ik heb een briljant idee voor een app. Waar moet ik beginnen?
Als je serieus bezig bent met het maken van een bedrijf op basis van een app, begin dan niet meteen met programmeren. Eerste, valideer uw bedrijfsidee door pitching voor uw doelgroep.
Neem contact op met potentiële klanten en bekijk ze, om feedback vragen.
Onthoud dat de meeste succesvolle apps lossen een onmiddellijk probleem op, op een zodanige manier dat klanten ervoor willen betalen. Wanneer u uw idee hebt gevalideerd en een relatie met uw eerste klanten hebt opgebouwd, gaat u verder met het ontwerpen en ontwikkelen van de daadwerkelijke app.
4. Heb ik een iPhone nodig om apps te maken??
Nee, maar het wordt aanbevolen. Xcode heeft een iPhone-simulator, die je apps uitvoert, net zoals een fysieke iPhone dat zou doen. Het vasthouden van een echte iPhone met uw app in uw handen verschilt van het zien op uw computerscherm, dus het testen van uw app op een echt apparaat wordt aanbevolen.
Houd er rekening mee dat Xcode alleen op Mac OS X werkt.
5. Ik ben niet goed in wiskunde, heb ik het nodig voor het programmeren?
Ja en nee. Het is een stedelijke mythe dat om te kunnen coderen, je goed moet zijn in wiskunde. Veel programmeerprincipes vinden hun oorsprong in de wiskunde, maar ze zijn niet nodig voor een basiskennis van hoe apps maken. Als je dieper duikt en meer vaardigheid hebt in programmeren, zul je merken dat je onderweg wat rekenvaardigheden hebt opgedaan.
6. Ik werk voor een bedrijf. Volg ik mijn app-idee met het bedrijf of in mijn eigen tijd?
Het hangt af van het bedrijf en uw positie. Ben jij een ingenieur en is de kernactiviteit van je bedrijf online, digitaal of nauw gerelateerd aan apps? Dan wilt u misschien een prototype bouwen en uw leidinggevende of werkgever overtuigen om het idee na te streven.
Als u denkt dat uw werkgever de waarde niet zal zien, kunt u het app-idee in uw eigen tijd volgen. Houd rekening met je contract met je werkgever. Uitvindingen die tijdens uw tijd met het bedrijf zijn gedaan, kunnen worden beschouwd als het intellectuele eigendom van het bedrijf, niet het uwe.
7. Mijn app-idee bestaat al in de App Store. Wat moet ik nu doen?
Het feit dat het bestaat wil niet zeggen dat het een goede app is. U kunt altijd een concurrerende app en maken Maak het beter dan wat er al is.
Evenzo is het feit dat een app niet bestaat nog geen goed idee om het te maken. Het kan heel goed zijn dat een app meerdere keren is gepubliceerd, maar uit de App Store is gehaald omdat het niet nodig was.
Bevestig altijd uw app-idee met het probleem dat het oplost en de waarde die het heeft voor zijn gebruikers.
8. Waarom wordt de iPhone soms iOS genoemd??
Er is een klein verschil: iPhone is de naam voor de eigenlijke hardwaresmartphone en iOS staat voor “i Besturingssysteem”. Teruggaand in de geschiedenis van Apple was de iMac-computer het eerste product met het voorvoegsel “ik”. Later hebben ze deze stijl gevolgd en meer producten gemaakt: iTunes, iPod, iPad en iPhone. Het is normaal dat u het besturingssysteem oproept dat op de iPhone, iOS, draait.
9. Hoe breng je effectief een iPhone-app op de markt??
Er zijn hele boeken over deze vraag geschreven! Het is moeilijk, maar niet onmogelijk om te beantwoorden. Alle succesvolle apps lossen één probleem op, op zo'n manier dat mensen ervoor willen betalen.
Je kan of kom met een probleem en vind mensen die jouw oplossing nodig hebben, of vind een publiek en onderzoek ze voor problemen waar je een oplossing voor zou kunnen maken. Houd contact met deze klantengroep en geef ze een manier om anderen over uw product te vertellen. Verwijzingen en mond-tot-mondreclame is een effectieve en goedkope marketingmachine.
10. Wat is de slechtste manier om programmeren te leren?
Opgeven is een van de slechtste manieren om programmeren te leren. Het leren van een nieuwe vaardigheid heeft ups en downs, en je kunt alleen maar blijven gaan door de ups te vieren en door de downs te kijken. Opgeven maakt geen deel uit van de vergelijking.
Ontdek ook wat je leerstijl is. Het heeft geen zin om video's te bekijken, terwijl het schrijven van code en trial-and-error beter bij u past.
Kies ten slotte niet willekeurig een boek over programmeren uit de bibliotheek, maar vind een bewezen leermethode of pad. Als je Spaans leert, begin je niet met het lezen van een woordenboek, toch??
Leermiddelen om aan de slag te gaan
Als je nog steeds wilt doorgaan met het maken van je eerste iOS-app, is dit gedeelte waar je al je leermiddelen vindt om aan de slag te gaan.
App-ontwikkeling omvat veel componenten en als je nieuw bent, kan het een hele uitdaging zijn om kennis te maken met alle tools. Wees niet bang! Je kunt je eerste app in een dag op max maken, zonder voorafgaande programmeerervaring. Het enige dat u nodig hebt, is een goede hulpbron die u de weg wijst en op één toolset tegelijk focust. Er zijn tal van tutorials voor beginners op internet, evenals premiumcursussen.
Het leerproces: kort gezegd
Wat is jouw leerstijl? Overweeg dat voordat u een hulpbron kiest.
- Video's kijken: CS 193P iPhone Application Development van Stanford University, beschikbaar voor iTunes U (gratis).
- Een boek lezen: Sams Teach Yourself Swift In 24 Hours ($ 25- $ 35) en The Swift Programming Language Book door Apple (gratis)
- Codeer jezelf: programmeren van tutorials door We Heart Swift, JamesonQuave en AppCoda (allemaal gratis).
Wanneer je je eerste app hebt gebouwd, is het een geweldig plan om het kort te houden duik in een aantal componenten na elkaar. Leren over:
- Gebruik makend van navigatie controllers, zoals tabbladen en hamburger-menu's
- Gebruik makend van hardware, zoals de camera en de versnellingsmeter
- Gebruik makend van lay-outs, zoals de tabelweergavecontroller en de paginaweergavecontroller
- Werken met animaties en overgangen bekijken
- De levenscyclus van apps
- Compilers en build-tools
De meeste van deze onderwerpen vereisen een paar dagen (24 tot 32 uur) van sleutelen, vallen en opstaan en middelen opzoeken.
Zodra je de basis hebt doorgenomen, kun je meteen beginnen werken met internetbronnen en cloud-gebaseerde oplossingen zoals Parse. Alle apps zijn op de een of andere manier met internet verbonden.
Hoe dan ook, degenen die gewend zijn om nieuwe dingen te leren, kunnen vaak hun eigen leerplan beschrijven en hoeven niet noodzakelijk een programma te volgen, zoals een cursus of een boek.
Afronden
Zou het niet geweldig zijn om je eigen app in de App Store te hebben? U hebt nu een basisoverzicht van de hulpprogramma's voor het maken van apps en wat u nodig heeft om te leren hoe u uw eigen apps kunt maken. Ga aan de slag met Swift door een boek te lezen of een zelfstudie te volgen, een geweldige interface met Balsamiq te maken, een ontwikkelaaraccount aan te vragen en die app te publiceren!
Volledige referentielijst:
- Xcode
- Interface Builder
- Apple Developer Program
- iTunes Connect
- Test vlucht
- Snel
- Apache Cordova
- PhoneGap
- Sencha Touch
- RhoMobile Suite
- Elance
- oDesk
- Human Interface Guidelines
- Glyphish
- Balsamiq-modellen
- Teehan + Lax iPhone-PSD's
- ontleden
- Appcelerator
- App42
- Stanford CS 193P iPhone Applicatie Ontwikkeling
- Sams Teach Yourself Swift In 24 uur
- We Heart Swift
- JamesonQuave
- AppCoda
- Het Swift programmeertaalboek
Opmerking van de uitgever: Dit is geschreven door Reinder de Vries voor Hongkiat.com. Reinder is een ondernemer en app-ontwikkelaar, die gelooft dat er niet genoeg app-makers in de wereld zijn. Hij heeft meer dan 50 apps ontwikkeld en zijn code wordt gebruikt door honderdduizenden gebruikers over de hele wereld. Wanneer hij niet codeert, leert hij aspirant-ontwikkelaars hoe ze hun eigen apps kunnen maken op LearnAppMaking.com.
Lees nu: Hoe jQuery Mobile te integreren in Phonegap / Cordova