- Intro
- Vereisten
- Stap 0: Begrijp jezelf
- Stap 1: Kies een idee
- Stap 2: Definieer de kernfunctionaliteiten
- Stap 3: Schets uw app
- Stap 4: Plan de UI Flow van je app
- Stap 5: Het ontwerpen van de Database
- Geavanceerd
- Stap 6: UX Wireframes
- Stap 6.5 (Optioneel): Ontwerp de UI
- Stap 7: Onderzoek naar oplossingen
- Kijken naar oplossingen
- Tools kiezen om mee te beginnen
- Stap 8: De app bouwen
- Checklist
- Write Tests First
- Gebruik Git
- Als je vastloopt…
- Vraag op StackOverflow
- Alternatief: Zoek een Mentor
- Eindtip
- Author Bio
- Andere artikelen waarin je geïnteresseerd zou kunnen zijn:
Intro
“Wat is de beste manier om te leren coderen?”
“Hoe word ik een programmeur”
“Hoe bouw ik een app”
Dit zijn veel voorkomende vragen die elke dag worden gesteld door beginners die staan te popelen om te leren coderen. Ongetwijfeld heb je al gegoogled op iets in die richting en genoeg artikelen/antwoorden gelezen tot het punt waarop je het “standaard” advies zat bent.
Als dat niet zo is, of als je op de een of andere manier denkt dat ik iets nieuws te zeggen heb en het toch wilt horen (dat is niet zo), dan is hier een kort en tamelijk zinloos antwoord (ik zal het een SEO-vriendelijke click-bait naam geven: “3 stappen om programmeur te worden”):
Stap 1: kies een taal
Stap 2: leer de taal
Stap 3: bouw dingen en blijf leren
Hey, gooi niet met schoenen naar me. Hoe graag ik ook zou willen zeggen dat er een standaardmethode is om te leren coderen, die is er echt niet. (Laat me een stap 0 toevoegen: accepteer dat iedereen anders leert).
Ontelbare meer gedetailleerde antwoorden die stap 1 & 2 uitwerken bestaan al op het web, maar het algemene antwoord op stap 1 is om Python of Ruby te leren als je eerste taal (raak niet te veel opgehangen aan de taal, je zult nooit aan de slag komen). Als je leermiddelen nodig hebt, hebben we verschillende gidsen samengesteld die je kunt bekijken:
- Leer Python
- Leer Ruby on Rails
- Leer JavaScript (Leer altijd JavaScript voordat je frameworks zoals AngularJS of React leert )
- Leer iOS Development
- Leer Android Development
Een aantal van jullie zou op dit punt komen:
Als je dat moment hebt dat je een verloren schaap bent geworden, schrik dan niet want je bent niet de enige.
Nagenoeg elke keer als je vraagt “hoe word ik een programmeur”, zullen ontwikkelaars je vertellen dat je dingen moet bouwen, omdat je door dingen te bouwen beter kunt worden als programmeur en het de beste manier is om te leren, enzovoort, enzovoort.
Maar hoe bouw je je eigen app?
Je kunt altijd bestaande tutorials volgen over hoe je een Twitter/Pinterest/Instagram/etc-kloon kunt bouwen met welke taal &-technologie je ook gebruikt, maar bedenk wel dat de auteurs van die tutorials eigenlijk het meeste werk al voor je hebben gedaan, en dat het enige wat jij doet is de code en hun logica begrijpen.
Dit artikel zal proberen je een overzicht te geven dat je kunt volgen als je je eigen app vanaf nul bouwt.
Vereisten
De meeste apps hebben een database nodig, dus als je je eigen app zelf gaat bouwen (ergo de front en back end), zul je waarschijnlijk een database query taal moeten kennen (meestal SQL). Tenzij je iets bouwt dat geen interactie met een database nodig heeft, zoals Flappy Bird, bijvoorbeeld.
Wat meer is, als je op zoek bent om een web-app te bouwen, moet je wat basis DevOps kennen om in staat te zijn om je ontwikkelomgeving / server op te zetten, en om de app daadwerkelijk te kunnen lanceren.
Als je alleen een front-end webontwikkelaar wilt zijn, kun je je HTML-, CSS- en JavaScript-vaardigheden aanscherpen bij Codepen of JSfiddle. Als je alleen JavaScript kent en geen andere taal wilt leren, dan kun je Node.js proberen, omdat het een JavaScript-platform is voor back-end ontwikkeling (Je kunt ook MongoDB gebruiken als je database, omdat het ook is gebaseerd op JavaScript.)
Daarnaast zou je ook een van de volgende talen moeten kennen (en meestal een web framework) als je van plan bent een complete web app te bouwen:
- Ruby
- Python
- PHP
- Java
- Go
- C#
Als je van plan bent om games te bouwen, dan kun je overwegen om Lua te leren, hoewel C# ook een zeer goede keuze is dankzij de Unity 3D-game-engine en zijn enorme gemeenschap. Wat betreft native mobiele app-ontwikkeling, moet je Swift/Objective-C kennen voor iOS-ontwikkeling en Java voor Android-ontwikkeling.
Zonder verdere omhaal, laten we beginnen met hoe je een app vanaf nul bouwt.
Stap 0: Begrijp jezelf
Voor alles, bouw iets waar je gepassioneerd over bent. Interesse is de beste manier om jezelf gemotiveerd te houden, dus vraag jezelf af waar je om geeft of wat je graag doet.
Bijvoorbeeld:
- Welke apps vind je het leukst om te gebruiken?
- Welke apps kun je niet zonder?
- Speel je graag spelletjes?
- Vind je het leuk om dingen te ontwerpen?
- Etc.
Stel vast wat je interesses zijn, zodat je aan iets werkt waar je plezier in hebt. Op die manier is de kans kleiner dat je halverwege afhaakt en opgeeft.
Stap 1: Kies een idee
Nu je hopelijk jezelf hebt uitgevogeld, is het tijd om een idee te kiezen om op te bouwen. Begin simpel.
Ja… zelfs als je erover denkt om een spel te bouwen, moet je nu niet denken aan het bouwen van het volgende CounterStrike, maar in plaats daarvan zou je moeten nadenken over hoe je spellen kunt bouwen die zo simpel zijn als het beruchte Flappy Bird. Hé, kijk niet neer op Flappy Bird – het was een sensatie die mensen over de hele wereld hun innerlijke masochist liet ontdekken. Maar ik dwaal af.
Dus, gebaseerd op je interesses, kom met een idee voor een eenvoudige app die iets netjes zal doen. Het maakt niet uit of de app al bestaat (in feite kan het je helpen als soortgelijke projecten al bestaan).
Hier zijn enkele aanwijzingen om je te helpen wat inspiratie op te doen:
- Als je van koken houdt, kun je misschien denken aan het bouwen van een app voor mensen om hun zelfgemaakte recepten te laten zien.
- Als je altijd al wilde weten hoe Twitter werkt, probeer dan een supereenvoudige Twitter-kloon te bouwen.
- Als je een vergeetachtig persoon bent die vertrouwt op taakbeheerders, probeer er dan zelf een te bouwen.
- Als je verslaafd bent aan de League of Legends, kun je proberen de API van Riot te doorzoeken en een site te bouwen die & spelinformatie kan verkrijgen.
- Als je graag kaartspellen speelt, probeer dan een eenvoudige te bouwen (bijv. Black Jack)
- Als je op dieet bent, probeer dan een app te bouwen die je calorie-inname logt.
En ga zo maar door. Hier is een lijst met projectideeën als je meer inspiratie nodig hebt.
Als je eenmaal een richting hebt, schrijf dan in één zin het doel op, en, indien van toepassing, de belangrijkste doelgebruikers voor deze app.
Bijvoorbeeld: Een huisdieradoptie-app voor mensen die zwerfdieren ophalen.
Stap 2: Definieer de kernfunctionaliteiten
Bedenk wat je app moet kunnen en zet ze op een rijtje. Als u uiteindelijk een heleboel dingen opsomt, kijk dan nog eens goed en vraag uzelf af of deze app ECHT, bijvoorbeeld, Facebook login nodig heeft om te werken? Moet het ECHT gegevens uploaden naar een cloud om te werken?
Het is geweldig om een droomproject te hebben met geweldige specs, maar op dit moment gaat het er niet om iets te bouwen dat compleet is met een heleboel coole functies. Houd in gedachten dat geen enkele app ooit compleet is, en dat alles eenvoudig begint.
Probeer nooit een alles-in-één app te bouwen. Ga daar niet heen. Ik heb het zien gebeuren, zelfs in een professionele omgeving, en het resultaat is veel pijn en weinig vooruitgang.
Of je hebt een ijzeren wil of je houdt echt van uitdagingen, je zult gewoon gefrustreerd en ontmoedigd eindigen als je eerste project te moeilijk is om te bouwen. Je bent een beginner… het punt is nu om plezier te hebben. Plezier is de meest efficiënte manier om te leren.
Dus, neem een kijkje op de lijst van functies die je hebt gemaakt, en als het te lang is, begin dan met het doorstrepen van functionaliteiten waar je app zonder kan.
Houd in gedachten, dit is je versie 1 en je moet het gewoon simpel houden. Focus op dingen die de app in staat stellen om uit te voeren wat het moet doen – al het andere kan worden overgelaten voor een ander project.
Voor een voorbeeld kern functionaliteit lijst voor een Reddit kloon:
- gebruikers kunnen een account aanmaken
- gebruikers kunnen verloren wachtwoorden opvragen
- gebruikers kunnen hun wachtwoorden wijzigen
- gebruikers kunnen nieuwe links plaatsen
- gebruikers kunnen commentaar geven op links
- gebruikers kunnen links upvote/downvote
- gebruikers hebben een profiel dat hun geschiedenis/activiteit laat zien
De bovenstaande functies zijn de kernfunctionaliteiten waar u zich eerst op moet richten. Andere functies zoals:
- gebruikers kunnen delen naar sociale media
- gebruikers kunnen opmerkingen verwijderen
- gebruikers kunnen opmerkingen bewerken
- gebruikers kunnen hun eigen account verwijderen
Zijn secundair en kunnen worden bewaard voor versie 1.Werk hier pas aan nadat u versie 1.0 daadwerkelijk kunt lanceren
Stap 3: Schets uw app
CC Licentie
Niets is sneller dan een pen & papier. Je zou nu een vrij goed idee moeten hebben van wat je app moet doen, dus schets het wireframe van de UI (gebruikersinterface) van je app. Waar knoppen moeten komen, wat het doel van die knop is, enzovoort.
Schrijf aantekeningen en geef invulling aan hoe de app moet werken. Je bent nog steeds in de brainstormfase, dus verander dingen totdat je er enigszins tevreden mee bent.
Bedenk dat je de dingen eenvoudig moet houden. Als je je lijst bij stap 2 hebt ingekort, blijf dan bij de schetsfuncties die daar op staan – laat je niet meeslepen. Als je jezelf niet kunt helpen, schets dan 2 versies: een basisversie en de uiteindelijke versie in je dromen.
Al met al is dit niet het uiteindelijke uiterlijk, maar slechts een stap om je te helpen een steviger greep op je app te krijgen.
Stap 4: Plan de UI Flow van je app
Al goed. U hebt een goed idee van hoe uw app eruit komt te zien, wat elk element moet doen, en hoe gebruikers met uw app kunnen interageren. Nu is het tijd om de UI flow van je app uit te zoeken. Dat wil zeggen, hoe een gebruiker je app van begin tot eind moet gebruiken. Breng elke stap in kaart die ze moeten nemen, en elk scenario dat ze kunnen tegenkomen. Probeer met elke gebruikssituatie rekening te houden.
(CC License)
Neem alle acties die de gebruiker kan ondernemen op in het stroomschema. Als uw app bijvoorbeeld vereist dat gebruikers inloggen, hoe maken ze dan een account aan? Wat als gebruikers hun wachtwoord zijn vergeten? Wat als ze het verkeerde wachtwoord hebben ingevoerd? Wat moet een gebruiker kunnen doen op elke interface (nieuw lijstitem toevoegen > opslaan; bewerken > opslaan/verwijderen)? Enzovoort, enzovoort. Dit gaat het snelst met pen en papier.
Opnieuw, omdat uw app vrij eenvoudig moet zijn, moet uw diagram niet te groot zijn.
Stap 5: Het ontwerpen van de Database
Okee! Nadat u alle mogelijke scenario’s hebt gepland, bekijkt u deze om te bepalen welke gegevens u zou moeten bewaren. Als uw app bijvoorbeeld vereist dat gebruikers een account aanmaken, moet u dingen bijhouden zoals de gebruikersnaam, de gebruikers-ID, de e-mail van de gebruiker, het wachtwoord, of de e-mail van de gebruiker is bevestigd, wanneer de account is gemaakt en elke keer dat de gebruiker op uw app heeft ingelogd.
Als je een Twitter-kloon bouwt, moet je de ID van de tweet weten, de inhoud van de tweet, wanneer de tweet is gepubliceerd/geretweet, hoeveel retweets het heeft en hoeveel sterren het heeft. Je moet ook bijhouden hoeveel retweets en sterren een gebruiker heeft.
Je kunt een ERM-diagram (Entity-Relationship Model) tekenen om de gegevensrelatie in kaart te brengen.
Een voorbeeld van een Entity-Relationship Diagram van een cursusselectiesite CC License
Als je bovendien toekomstige functies hebt gepland, is dit het moment om ze in je database te plannen. Hier is een leuk artikel om te bekijken terwijl je een database ontwerpt.
Geavanceerd
Als de app die je plant gaat interageren met een server (bijv. als je een fullstack web app bouwt) of als je app gaat interageren met een API (bijv. u probeert informatie te krijgen van Yahoo! Weather ), dan is het waarschijnlijk een goed idee om een sequentiediagram te tekenen om een beter idee te krijgen van hoe de processen moeten werken.
Van Wikipedia
Stap 6: UX Wireframes
Oké, u hebt de back-end gepland. Nu is het tijd om de voorkant te plannen.
Hopelijk ben je nog steeds even enthousiast als de minions hierboven. Je weet wat je nodig hebt – nu heb je een veel beter idee van hoe je app eruit moet zien.
CC License
Omdat mensen meestal visuele wezens zijn, kun je beter begrijpen wat je moet doen als je een visuele weergave hebt van elke weergave die je gaat coderen. Echter, als je bent zoals ik en je tekening is zo rommelig dat je het obscure stukje…hoestmeesterwerk…dat je hebt gemaakt nauwelijks kunt begrijpen, dan is het natuurlijk onverstandig om met deze stap door te gaan door je arme artistieke hersencellen te misbruiken.
Gelukkig bestaan er online veel wireframing- en mockuptools om je te helpen bij het plannen van je UX/UI flow (bijv. Gliffy, Mockflow, Framebox, Wireframe.cc, Invisionapp).
Stap 6.5 (Optioneel): Ontwerp de UI
Dit is een optionele stap, maar als je van plan bent om je te specialiseren in front-end ontwikkeling of als je veel geeft om hoe je app eruit gaat zien tot het punt waar een mooiere app je zou motiveren om te coderen, ga dan zeker door en ontwerp de app zodat al die wireframe UI-elementen kunnen worden vervangen door mooier uitziende exemplaren.
Als je van ontwerpen houdt, ga je de app waarschijnlijk toch al ontwerpen voordat je begint – misschien heb je hem al ontworpen tijdens stap 2.
Als je niet aan ontwerpen doet, maar er wel om geeft hoe je app eruit komt te zien, overweeg dan om elementen uit UI-kits te gebruiken. Hier zijn een paar bronnen voor UI-elementen:
(Opmerking: Photoshop vereist)
UI Cloud
Graphicburger
UI Dock
Voor games:
Spriters Resource
Ga echter niet te veel op in het uiterlijk van de app. Op dit moment moet je je concentreren op het bouwen van de functies van een app.
Stap 7: Onderzoek naar oplossingen
Geweldig! Je bent klaar met de planningsfase… maar hoe moet je al die dingen coderen?
Een belangrijke vaardigheid die je als programmeur zult moeten leren, is beoordelen wanneer je iets moet gebruiken dat een andere ontwikkelaar al heeft geschreven, en wanneer je de functie zelf moet bouwen.
Omdat iedereen een unieke app bouwt, is niet elke use-case hetzelfde. Je moet dus inschatten wanneer je een bestaande oplossing moet gebruiken en wanneer je je eigen oplossing moet bouwen, en met de ervaring zul je daar steeds beter in worden.
Als je voelt als een stuurloos bootje dat verdwaald is op een uitgestrekte oceaan, haal dan diep adem en raak niet in paniek. Je kunt dit.
Naarmate je meer ervaring opdoet met onderzoek doen, je “Google-fu” aanscherpen en dingen bouwen, zul je dit proces uiteindelijk onder de knie krijgen.
Kijken naar oplossingen
Bekijk alle diagrammen die je hebt getekend, evenals de lijst met functionaliteiten die je in stap 2 hebt gemaakt.
Wat zijn sommige dingen waarvan je absoluut geen idee hebt hoe je ze moet bouwen?
Moeten gebruikers bijvoorbeeld een account aanmaken? Is uw app afhankelijk van real-time updates? Welke functies heb je nodig?
In de meeste gevallen is het een goed idee om gewoon een bestaande oplossing te gebruiken voor grote functies, zoals het afhandelen van real-time synchronisatie (bijv. Firebase), netwerken/routing (bijv. AFNetworking voor iOS apps), authenticatie, en UI-gerelateerde componenten (bijv.
Er bestaan veel online databases waarin je kunt zoeken naar backend-gerelateerde componenten/pakketten/gems/etc, maar je moet voorzichtig zijn met je evaluatie van wat andere mensen hebben geschreven – gebruik ze niet zomaar blindelings. Je gaat nu hopelijk niet iets te complex bouwen, dus op dit moment heb je waarschijnlijk geen componenten nodig die andere mensen hebben geschreven.
In ieder geval, de beste manier om te beginnen is om te bestuderen wat andere ontwikkelaars voor jou hebben gedaan en de logica achter hun beslissingen te leren. GitHub is je beste vriend.
Voor een levensecht voorbeeld van het onderzoeksproces van een ervaren ontwikkelaar voor een bepaalde functie, kun je deze post bekijken over hoe de maker van Angular-Plunker de drag-and-drop-richtlijnen van Plunker heeft gebouwd.
Tools kiezen om mee te beginnen
Als je een webapp aan het bouwen bent, kun je misschien Yeoman bekijken, omdat het bedoeld is om je te helpen snel nieuwe projecten op te starten door je te helpen de structuur van je project op te zetten.
Als je een React-app aan het bouwen bent, kun je ook kijken naar starterkits en bestaande Flux-implementaties. HTML5Boilerplate en Bootstrap zijn populaire front-end templates voor je app. Meestal gebruiken boilerplates Gulp of Grunt voor taakbeheer.
Omdat je waarschijnlijk een aantal bestaande componenten of oplossingen gaat gebruiken, moet je ook bower installeren voor afhankelijkheidsbeheer (npm voor degenen die Node.js gebruiken en CocoaPods voor iOS-ontwikkelaars). Maak je geen zorgen – deze tools worden meestal geleverd met tutorials die je leren hoe je ze moet installeren.
Stap 8: De app bouwen
Ja! Je bent nu klaar om de app te bouwen! Hier volgen enkele tips die u in gedachten moet houden bij het bouwen van uw app.
Checklist
U moet zich richten op het functie voor functie bouwen van de app. Dus, als je nog niet klaar bent met één taak, zoals een reactiesysteem, begin dan niet ineens met het bouwen van een gebruikersprofielweergave. Met andere woorden, als je bijvoorbeeld een formulier aan het bouwen bent, moet je zowel aan de front- als de back-end code werken totdat de functie compleet is.
Al met al, om je voortgang bij te houden, kun je een to-do lijst van functies opschrijven en deze als checklist gebruiken.
Write Tests First
Niet als je een game app aan het bouwen bent, is het een goed idee om eerst een test voor je functie te schrijven voordat je daadwerkelijk begint met het coderen van de functie. Bugs zijn onvermijdelijk, maar testen zal uw fouten sterk verminderen en uw kansen om buggy code vrij te geven aan productie.
Getwijfeld, het schrijven van unit tests kost tijd en je kunt je soms afvragen of het de moeite waard is. Maar als je in de toekomst grotere projecten wilt bouwen waarin je nieuwe functies blijft toevoegen, kan dit met je app gebeuren:
Dan kan dit (is een overdrijving van wat) gebeuren:
Of god verhoede:
En dit zou jij zijn, die probeert de app te repareren:
…Meer of minder.
Dus, het is een goed idee om klein te beginnen en er een gewoonte van te maken om Test-Driven Development (TDD) te doen, vooral omdat je fris begint en iets eenvoudigs bouwt.
Je zit nu niet op een deadline met de hooivork van een projectmanager achter je rug, toch?
Voor tips over unit testing patronen, kun je dit artikel bekijken. Een andere tip om in gedachten te houden is om te voorkomen dat asserting te veel trivialiteiten.
Vele testtools zijn beschikbaar voor u om uit te kiezen, zoals Jasmine of Karma voor JavaScript, Rspec voor Ruby, PyTest voor Python, PHPUnit voor PHP, Quick als alternatief voor xCTest voor iOS-ontwikkeling, of welke tool je voelt dat zou werken voor jou.
Bovendien, als je een iOS of Android app bouwt, is het een goed idee om Crashlytics te bekijken.
7 Stappen om efficiënt en effectief te Debuggen
Gebruik Git
Git is een versiebeheersysteem en een volwaardige repository met complete geschiedenis en volledige versie-tracking mogelijkheden. Het is een goed idee om Git te leren gebruiken tijdens het bouwen van je eerste app. Op deze manier kun je gemakkelijk je fouten ongedaan maken, verloren gegevens herstellen, en meer. Bovendien, als je van plan bent om in de toekomst met een team van ontwikkelaars te werken, zul je Git sowieso moeten gebruiken. GitHub is de meest populaire Git repository hosting service voor open source projecten, terwijl Bitbucket voor privé repositories is.
Als je uiteindelijk tegen problemen aanloopt bij het gebruik van git, kan dit bericht over de 10 meest voorkomende Git problemen en hoe ze op te lossen je helpen.
Als je vastloopt…
Als beginner zul je je wel vaker als die hamster voelen.
Je bent niet alleen. Soms hoef je alleen maar een pauze te nemen en het probleem te laten sudderen, zodat je je hoofd leeg kunt maken.
Als dit nog steeds niet werkt, zijn hier enkele manieren om jezelf los te maken:
Ik noemde Google-fu al in stap 7, maar ik wil nogmaals benadrukken dat leren googelen een belangrijke vaardigheid is die alle programmeurs zich eigen moeten maken. Als je vastloopt op een bug of je weet niet waarom je code niet werkt, is het een goed idee om te Googlen.
Vraag op StackOverflow
Je zult waarschijnlijk merken dat je google-resultaten meestal zullen verwijzen naar vragen en antwoorden op StackOverflow. Als u nog steeds geen oplossing voor uw probleem kunt vinden na het googlen, dan kunt u proberen een vraag op StackOverflow te plaatsen.
Denk eraan om in uw vraag te laten zien dat u uw onderzoek hebt gedaan – u hebt meer kans om op die manier een antwoord te krijgen.
Alternatief: Zoek een Mentor
Sommigen zullen zeggen dat StackOverflow niet beginnersvriendelijk is omdat beginners niet weten hoe ze hun vragen moeten formuleren. Maar wat als je niet eens weet wat je probleem is?
Als je op het randje van headdesking komt (of als je al aan het headdesken bent…), hoef je je voorhoofd niet te mishandelen (als je je hoofd maar hard genoeg stoot, verlies je gewoon hersencellen).
Een geweldig alternatief om je ontwikkeling en je leerproces te vergemakkelijken, is om hulp te krijgen van een ervaren programmeur. Je hoeft niet het gevoel te hebben dat je op de een of andere manier dom bent omdat Persoon X een beroemde expert is en een autodidact programmeur. Mensen leren gewoon anders, en alle beginners hebben baat bij persoonlijke begeleiding, omdat je misschien fouten maakt die nu niet erg zijn, maar eigenlijk een slechte praktijk is.
Houd in gedachten dat veel autodidactische ontwikkelaars destijds niet de diensten hadden die nu voor u beschikbaar zijn.
Daarom kunt u hulp krijgen van ervaren programmeurs via live 1:1-sessies op Codementor, waar de tarieven van mentoren beginnen vanaf $ 15/minuten. Tijdens deze sessies kunt u videochatten met een ervaren ontwikkelaar en uw scherm/code met hem delen, en de mentor zal u leren hoe u uw code kunt repareren en u vertellen wat u verkeerd hebt gedaan, zodat u de fout in de toekomst kunt vermijden. U kunt ook de code van de sessie bekijken of de sessie opnemen op uw lokale schijf via de videochat tool. Meld je nu aan en probeer de eerste 15 minuten gratis met mentoren die de deal aanbieden.
Eindtip
Programmeurs maken de hele tijd fouten, dus voel je niet ontmoedigd als je een test die je hebt geschreven niet eens kunt halen of als je voortdurend over jezelf struikelt. Ik bedoel, denk aan iOS9, Android Lollipop, of een app die je graag gebruikt. Zeker, zelfs de meest volwassen apps die er zijn hebben nog steeds bugs, dus ga er niet van uit dat je de meest perfecte, bug-vrije app kunt bouwen die er is (natuurlijk betekent dit niet dat je lage normen voor jezelf moet stellen-je moet er altijd naar streven om apps van hoge kwaliteit te bouwen).
Daarnaast is het heel gebruikelijk dat je uren of zelfs dagen aan één ding besteedt en nog steeds moeite hebt om het te laten werken zoals je wilt. Als het makkelijk was om snel nieuwe functies te programmeren, zou de wereld geen nieuwe programmeurs nodig hebben. Hel, we zouden nu waarschijnlijk op een vlekkeloze iOS100 zitten en we zouden een gedigitaliseerde wereld gebouwd hebben zoals die in de Matrix.
Dus, heel vaak hoor je de term “fouten maken” wanneer mensen je aanmoedigen om dingen te gaan bouwen. Ze menen het. Een ding dat je als programmeur zult moeten accepteren, is dat je niet een supercodeermachine zult zijn die in een handomdraai functies tevoorschijn kan toveren. Je zult veel falen en dat is ok.
Ook hier geldt, vergeet niet dat je een beginner bent, dus veel dingen zullen in het begin onvermijdelijk moeilijk zijn. Je gaat veel tijd besteden aan iets waarvan je denkt dat het eenvoudig zou moeten zijn en het zal lijken als een moeizame bergopwaartse strijd, maar naarmate je meer ervaring opdoet, zullen de dingen gemakkelijker worden. Verheug je op dat gevoel van vervulling wanneer je er eindelijk in slaagt om je eerste app te bouwen, en je kunt zelfs overwegen om je app te verkopen als je dat nodig acht.
Happy Coding!
Author Bio
Yi-Jirr Chen || Content Maketing & Operations
Je typische enorme nerd die games speelt en van wetenschap/technologie houdt. Publiceert ook fictie onder een pseudoniem dat niet voor niets een pseudoniem is
Andere artikelen waarin je geïnteresseerd zou kunnen zijn:
- Hoe krijg je je eerste baan als ontwikkelaar (zelfs als je geen CS-diploma hebt)
- Developer Community’s 9 tips voor beginnende codeerders
- 40 ideeën voor nevenprojecten voor software-engineers
- Hoe lanceer je je carrière en haal je je eerste klant binnen als freelance ontwikkelaar