PDF download Pdf downloaden PDF download Pdf downloaden

Computerprogramma's worden tegenwoordig overal toegepast, van onze auto's tot onze smartphones, en in bijna elke baan. Naarmate de wereld steeds digitaler wordt, zal de behoefte aan nieuwe programma's steeds groter worden. Als je het volgende grote idee hebt, waarom maakt je het dan niet zelf? Zie Stap 1 hieronder om uit te vinden hoe je aan de slag kunt gaan met het leren van een programmeertaal, het ontwikkelen van je idee tot een testbaar product, en het vervolgens te reviseren tot het klaar is voor publicatie.

Deel 1
Deel 1 van 6:

Een idee krijgen

PDF download Pdf downloaden
  1. Brainstorm ideeën . Een goed programma zal een taak uitvoeren die het leven van de gebruiker gemakkelijker maakt. Kijk naar de software die momenteel beschikbaar is voor de taak die je wilt uitvoeren, en kijk of er manieren zijn waarop het proces eenvoudiger of soepeler zou kunnen. Een succesvol programma is er een waar gebruikers veel nut van zullen ondervinden.
    • Onderzoek je dagelijkse taken op je computer. Is er een manier waarop je een deel van die taken zou kunnen automatiseren met een programma?
    • Schrijf elk idee op. Zelfs als het op het moment onnozel of bizar lijkt, kan het veranderen in iets nuttigs of zelfs briljants.
  2. Wat doen die? Hoe kunnen ze het beter doen? Wat missen ze? Het beantwoorden van deze vragen kan je helpen om ideeën op te doen voor je eigen kijk erop.
  3. Dit document beschrijft de functies en wat je met het project wilt bereiken. Door naar het ontwerpdocument te verwijzen tijdens het ontwikkelingsproces, kun je je project op het juiste spoor en gefocust houden. Zie dit artikel voor meer informatie over het schrijven van het document. Het schrijven van het ontwerpdocument zal je ook helpen om te beslissen welke programmeertaal het meest geschikt is voor je project.
  4. Als je net begint met programmeren, is het verstandig om klein te beginnen en in de loop van de tijd hierin te groeien. Je zult veel meer leren als je tastbare doelen stelt die je kunt bereiken met een basisprogramma.
    Advertentie
Deel 2
Deel 2 van 6:

Een taal leren

PDF download Pdf downloaden
  1. Bijna alle programma's worden geschreven in tekst editors en dan gecompileerd om op computers te draaien. Hoewel je programma's als Kladblok of TextEdit kunt gebruiken, valt het sterk aan te bevelen om een syntax-highlighting editor te downloaden, zoals Notepad++ JEdit, of Sublime Text. Dit zal je code ook visueel veel gemakkelijker maken om te begrijpen.
    • Sommige talen, zoals Visual Basic, bevatten een editor en compiler in één pakket.
  2. Alle programma's worden gemaakt door te coderen. Als je je eigen programma's wilt maken, moet je bekend zijn met ten minste één programmeertaal. De talen die je zult moeten leren zullen variëren afhankelijk van het type programma dat je wilt maken. Enkele van de nuttigste en belangrijkste zijn:
    • C - C is een taal op laag niveau die zeer nauw samenwerkt met de hardware van de computer. Het is een van de oudere programmeertalen die nog steeds op grote schaal wordt gebruikt.
    • C++ - Het grootste nadeel van C is dat het niet object-georiënteerd is. Dit is waar C++ om de hoek komt kijken. C++ is momenteel de meest populaire programmeertaal ter wereld. Programma's zoals Chrome, Firefox, Photoshop, en vele anderen zijn allemaal gebouwd met C++. Het is ook een zeer populaire taal voor het maken van videospelletjes.
    • Java - Java is een evolutie van de C++ taal, en is zeer portable. De meeste computers, ongeacht het besturingssysteem, kunnen een Java Virtual Machine draaien, waardoor het programma bijna universeel gebruikt kan worden. Het wordt veel gebruikt in videospelletjes en bedrijfssoftware, en wordt vaak aanbevolen als een essentiële taal.
    • C# - C# is een op Windows gebaseerde taal en is een van de belangrijkste talen die gebruikt wordt bij het maken van Windows-programma's. Het is nauw verwant aan Java en C++, en zou makkelijk te leren moeten zijn als je al bekend bent met Java. Als je een programma wilt maken voor Windows of de Windows Phone, zou je deze taal eens moeten bekijken.
    • Objective-C - Dit is een andere neef van de C-taal die speciaal is ontworpen voor Apple-systemen. Als je apps wilt maken voor de iPhone of iPad, dan is dit de taal voor jou.
  3. Voor elke taal op hoog niveau, zoals C++, Java, en vele andere, heb je een compiler nodig om je code om te zetten in een format dat de computer kan gebruiken. Er zijn verschillende compilers waaruit je kunt kiezen, afhankelijk van de taal die je gebruikt. [1]
    • Sommige talen zijn geïnterpreteerde talen, wat betekent dat ze geen compiler nodig hebben. In plaats daarvan hebben ze alleen een interpreter nodig voor die specifieke programmeertaal die eerst op de computer dient te worden geïnstalleerd, waarna de programma's direct kunnen worden uitgevoerd. Enkele voorbeelden van geïnterpreteerde talen zijn Perl en Python.
  4. Welke taal je ook kiest, je zult waarschijnlijk een aantal algemene basisconcepten moeten begrijpen. Als je weet hoe je met de syntax van de taal om moet gaan, kun je veel krachtigere programma's maken. Algemene concepten zijn:
    • Het declareren van variabelen - Variabelen zijn de manier waarop je gegevens tijdelijk worden opgeslagen in je programma. Deze gegevens kunnen dan later in het programma worden opgeslagen, gewijzigd, gemanipuleerd en opgeroepen.
    • Het toepassen van conditional statements (if, else, when, etc.) - Deze behoren tot de basisfuncties van programma's, en dicteren hoe de logica werkt. Conditional statements draaien om verklaringen die 'waar' of 'niet waar' kunnen zijn.
    • Het gebruik van lussen (for, goto, do, etc.) - Lussen stellen je in staat om processen steeds te herhalen totdat een commando wordt gegeven om te stoppen.
    • Het gebruik van escape-sequenties - Deze commando's voeren functies uit zoals het maken van nieuwe regels, inspringen, aanhalingstekens, etc.
    • Commentaar op code - Commentaar is essentieel om te onthouden wat je code doet, om andere programmeurs te helpen je code te begrijpen, en om delen van code tijdelijk uit te schakelen.
    • Reguliere expressies begrijpen.
  5. Er zijn boeken voor elke programmeertaal en voor elk niveau. Je kunt programmeerboeken vinden bij je plaatselijke boekhandel of online. Een boek kan van onschatbare waarde zijn omdat je het bij de hand kunt houden terwijl je werkt.
    • Naast boeken is het internet een eindeloze schat aan gidsen en handleidingen. Zoek naar gidsen over de taal van je keuze op sites als Codecademy, Code.org, Bento, Udacity, Udemy, Khan Academy en W3Schools, om er maar een paar te noemen.
  6. Iedereen kan zichzelf leren om een computerprogramma te schrijven, met een beetje goede wil, maar soms kan een leraar en een klassikale omgeving echt helpen. Eén-op-één tijd met een expert kan de tijd die je nodig hebt om de basisprincipes van programmeren en concepten te begrijpen aanzienlijk verkorten. Klassen zijn ook een goede plaats om geavanceerde wiskunde en logica te leren die nodig zullen zijn voor complexere programma's.
    • Lessen kosten geld, dus zorg ervoor dat je je inschrijft voor lessen die je helpen te leren wat je wilt weten.
  7. Het internet is een fantastische manier om in contact te komen met andere ontwikkelaars. Als je vastloopt in een van je projecten, vraag dan om hulp op sites als StackOverflow. Zorg ervoor dat je op een intelligente manier je vragen stelt en kunt aantonen dat je al verschillende mogelijke oplossingen hebt geprobeerd.
    Advertentie
Deel 3
Deel 3 van 6:

Een prototype bouwen

PDF download Pdf downloaden
  1. Dit wordt het prototype dat de functionaliteit laat zien die je wilt bereiken. Een prototype is een snel programma, en moet worden aangepast totdat je een ontwerp vindt dat werkt. Bijvoorbeeld: als je een kalenderprogramma maakt, zou je prototype een basiskalender zijn (met correcte data!) en een manier om gebeurtenissen toe te voegen.
    • Bij het maken van je prototype, gebruik je een top-down benadering. Laat in het begin zoveel mogelijk details weg. Voeg dan langzaam steeds fijnere details toe. Dit zal het prototypeproces versnellen en zal ook voorkomen dat je code te complex en onhandelbaar wordt. Als je code te moeilijk wordt om te volgen, zou het kunnen dat je uiteindelijk helemaal opnieuw moet beginnen.
    • Je prototype zal vaak veranderen tijdens de ontwikkelcyclus, wanneer je nieuwe manieren bedenkt om problemen aan te pakken, of als je later een idee bedenkt dat je wilt integreren.
    • Als je een spel maakt, moet je prototype leuk zijn! Als het prototype niet leuk is, dan is de kans groot dat het volledige spel ook niet leuk zal zijn.
    • Als de gewenste mechanica gewoon niet werkt in het prototype, dan is het misschien tijd om terug te gaan naar de tekentafel.
  2. Als je je programma in je eentje ontwikkelt, kun je een prototype gebruiken om een team samen te stellen. Met een team kun je sneller bugs opsporen, functies testen en de visuele aspecten van het programma ontwerpen.
    • Een team is zeker niet noodzakelijk voor kleine projecten, maar zal de ontwikkelingstijd aanzienlijk verkorten.
    • Een team leiden is een complex en moeilijk proces, en vereist goede managementvaardigheden samen met een goede structuur voor het team. Zie dit artikel voor meer details over het leiden van een groep.
  3. Als je eenmaal vertrouwd bent met de programmeertaal, dan kun je prototypes in slechts een paar dagen aan de praat krijgen. Omdat het zo snel gaat, moet je niet bang zijn om een idee te schrappen en opnieuw te beginnen als je niet tevreden bent met hoe het uitpakt. Het is veel gemakkelijker om in dit stadium grote veranderingen aan te brengen dan later, wanneer de functies een vaste plek hebben gekregen.
  4. Gebruik de documentatiesyntaxis in je programmeertaal om opmerkingen achter te laten bij alle, behalve de meest elementaire, regels code. Dit zal je helpen herinneren wat je aan het doen was als je het project een tijdje moet laten liggen, en zal andere ontwikkelaars helpen je code te begrijpen. Dit is vooral essentieel als je in een programmeerteam werkt.
    • Je kunt commentaar gebruiken om delen van je code tijdelijk uit te schakelen tijdens het testen. Omsluit de code die je wilt uitschakelen in documentatiesyntax en hij zal niet gecompileerd worden. Je kunt vervolgens de opmerkingen verwijderen om de code weer uit te laten voeren.
    Advertentie
Deel 4
Deel 4 van 6:

De alfa-testfase

PDF download Pdf downloaden
  1. In de alfa-fase kan en moet het testteam klein zijn. Een kleine groep zal je helpen om gerichte feedback te krijgen en geeft je de mogelijkheid om één op één met de testers te communiceren. Elke keer dat je het prototype bijwerkt, worden nieuwe builds naar de alfa-testers gestuurd. De testers proberen dan alle functies uit en proberen ook het programma te laten stranden, waarbij ze hun resultaten documenteren.
    • Als je een commercieel product ontwikkelt, moet je er zeker van zijn dat al je testers een geheimhoudingsverklaring ondertekenen. Hiermee wordt voorkomen dat ze anderen over je programma vertellen, en dat er wordt gelekt naar de pers en andere gebruikers.
    • Neem de tijd om een degelijk testplan op te stellen. Zorg ervoor dat je testers een manier hebben om gemakkelijk bugs in het programma te rapporteren, alsook gemakkelijk toegang hebben tot nieuwe versies van de alfa-versie. GitHub en andere code-archieven zijn een geweldige manier om dit aspect gemakkelijk te beheren.
  2. Bugs zijn de vloek van elke ontwikkelaar. Fouten in de code en onverwacht gebruik kunnen allerlei problemen veroorzaken in een eindproduct. Terwijl je verder werkt aan je prototype, test je het zo veel mogelijk. Doe alles wat je kunt om fouten op te sporen, en probeer dan te voorkomen dat die fouten zich in de toekomst weer voordoen.
    • Probeer vreemde datums in te voeren als je programma met datums te maken heeft. Echt oude datums of ver in de toekomst liggende datums kunnen vreemde reacties veroorzaken in een programma.
    • Voer de verkeerde soort variabelen in. Bijvoorbeeld: als je een formulier hebt dat vraagt naar de leeftijd van de gebruiker, voer dan een woord in en kijk wat er gebeurt met het programma.
    • Als je programma een grafische interface heeft, klik dan op alles. Wat gebeurt er als je teruggaat naar een vorig scherm, of op knoppen in de verkeerde volgorde klikt?
  3. Bij het reviseren van het programma in de alfa-versie, zal je veel tijd besteden aan het repareren van functies die niet correct werken. Bij het organiseren van de bugs-rapporten van je alfa-testers, zullen ze gesorteerd moeten worden op basis van twee criteria: Ernst en Prioriteit .
    • De ernst van een bug is een maat voor hoeveel schade de bug veroorzaakt. Bugs die het programma laten crashen, gegevens beschadigen of het programma laten stoppen met draaien worden 'blockers' genoemd. Functies die niet werken of onjuiste resultaten geven worden aangeduid als 'critical', terwijl moeilijk te gebruiken of slecht gecodeerde functies worden aangeduid als 'major'. Er zijn ook 'normal', 'minor' en 'trivial' bugs die kleinere secties of minder-cruciale functies beïnvloeden.
    • De prioriteit van een bug bepaalt in welke volgorde je ze aanpakt wanneer je bugs probeert te repareren. Het oplossen van bugs in software is een tijdrovend proces en vermindert de tijd die je hebt om functies toe te voegen en te polijsten. Als zodanig moet je rekening houden met de prioriteit van een bug om ervoor te zorgen dat je deadlines haalt. Alle 'blocker' en 'critical'-bugs hebben de hoogste prioriteit, soms aangeduid als P1. P2-bugs zijn gewoonlijk 'major'-bugs die gepland zijn om hersteld te worden, maar zullen niet tegenhouden dat een product gepubliceerd gaat worden. P3 en P4-bugs zijn meestal geen geplande verbeteringen, en vallen in de categorie 'mooi meegenomen'.
  4. Tijdens de alfa-fase, zal je meer eigenschappen aan je programma toevoegen om het dichter bij het programma te brengen dat in je ontwerpdocument is geschetst. De alfa-fase is waar het prototype evolueert naar de basis voor het volledige programma. Tegen het einde van de alfa-fase, zouden alle functies in je programma geïmplementeerd moeten zijn.
    • Dwaal niet te ver af van je originele ontwerpdocument. Een veel voorkomend probleem bij softwareontwikkeling is 'feature-creep', waarbij steeds nieuwe ideeën worden toegevoegd, waardoor de oorspronkelijke focus verloren gaat en de ontwikkelingstijd wordt verdeeld over te veel verschillende functies. Je wilt dat je programma het beste is in wat het moet doen, niet een manusje-van-alles.
  5. Stuur na het toevoegen van functies aan je programma tijdens de alfa-fase, de nieuwe build naar je testers. De regelmaat van nieuwe builds zal volledig afhangen van de grootte van je team en hoeveel vooruitgang je boekt met de functies.
  6. Als je alle mogelijkheden en functionaliteit in je programma hebt geïmplementeerd, kun je uit de alfa-fase stappen. Op dit punt mogen geen verdere functies meer worden toegevoegd, en de erin opgenomen functies moeten in wezen werken. Nu kun je overgaan tot breder testen en polijsten, bekend als de bèta-fase.
    Advertentie
Deel 5
Deel 5 van 6:

Bèta-testen

PDF download Pdf downloaden
  1. In de bètafase wordt het programma beschikbaar gesteld aan een veel grotere groep testers. Sommige ontwikkelaars maken de bètafase openbaar, wat een open bèta wordt genoemd. Hierdoor kan iedereen zich aanmelden en deelnemen aan het testen van het product.
    • Afhankelijk van de behoeften van je product, kun je wel of niet een open bèta doen.
  2. Naarmate programma's meer en meer onderling verbonden raken, is de kans groot dat je programma afhankelijk zal zijn van verbindingen met andere producten of verbindingen met servers. Bèta-testen stelt je in staat om ervoor te zorgen dat deze verbindingen werken onder een grotere belasting, wat ervoor zorgt dat je programma bruikbaar is voor het publiek wanneer het wordt uitgegeven.
  3. In de bètafase worden geen features meer toegevoegd, dus kan de focus worden gericht op het verbeteren van de esthetiek en bruikbaarheid van het programma. In deze fase wordt het UI-ontwerp een prioriteit, om ervoor te zorgen dat de gebruikers geen problemen hebben om door het programma te navigeren en gebruik te maken van de functies.
    • UI-ontwerp en functionaliteit kunnen zeer moeilijk en complex zijn. Er zijn complete hogere opleidingen voor het ontwerpen van gebruikersinterfaces. Zorg er gewoon voor dat je eigen project gemakkelijk te gebruiken is en gemakkelijk voor het oog. Een professionele UI is misschien niet mogelijk zonder een budget en een team.
    • Als je het budget hebt, zijn er veel freelance grafische ontwerpers die mogelijk een UI op contract voor je kunnen ontwerpen. Als je een solide project hebt waarvan je hoopt dat dit het volgende grote project wordt, zoek dan een goede UI ontwerper en maak hem deel van je team.
  4. Gedurende de bètafase, zou je nog steeds bug-rapporten van je gebruikers moeten catalogiseren en prioritiseren. Aangezien meer testers toegang tot het product zullen hebben, zijn er altijd kansen dat nieuwe bugs worden ontdekt. Elimineer bugs op basis van hun prioriteit, zonder je definitieve deadlines uit het oog te verliezen. [2]
    Advertentie
Deel 6
Deel 6 van 6:

Het programma uitbrengen

PDF download Pdf downloaden
  1. Als je gebruikers wilt krijgen, moet je ervoor zorgen dat ze weten dat je programma bestaat. Net als bij elk product, moet je een beetje reclame maken om mensen op de hoogte te brengen. De omvang en diepte van je marketingcampagne zal worden gedicteerd door de functie van je programma, alsmede je beschikbare budget. Enkele eenvoudige manieren om bekendheid te geven aan je programma zijn:
    • Plaats berichten over je programma op gerelateerde prikborden. Zorg ervoor dat je de regels volgt van het forum dat je kiest, zodat je berichten niet als spam worden gezien.
    • Verstuur persberichten naar tech-sites. Zoek een aantal tech-blogs en sites die passen bij het genre van je programma. Stuur de redacteuren een persbericht met details over je programma en wat het doet. Voeg een paar screenshots toe.
    • Maak enkele YouTube video's. Als je programma ontworpen is om een specifieke taak uit te voeren, maak dan enkele YouTube-video's die je programma in actie tonen. Structureer ze als 'How-To' video's.
    • Maak sociale media-pagina's. Je kunt gratis Facebook en Google+ pagina's maken voor je programma, en je kunt Twitter gebruiken voor zowel bedrijfs- als programmaspecifiek nieuws.
  2. Voor kleine programma's, kun je waarschijnlijk het bestand wel hosten op je eigen website. Misschien wil je een betalingssysteem opnemen als je geld gaat vragen voor je software. Als je programma erg populair wordt, moet je misschien het bestand hosten op een server die meer downloads aankan.
  3. Zodra je programma in het wild wordt uitgegeven, zal je steevast gebruikers hebben met technische problemen of die niet begrijpen hoe het programma werkt. Je website hoort grondige documentatie beschikbaar te hebben, evenals een soort van ondersteuningsdienst. Dit kan een technisch ondersteuningsforum zijn, een e-mailadres voor ondersteuning, live hulp, of een combinatie van deze. Wat je kunt bieden zal afhangen van je beschikbare budget.
  4. Bijna alle programma's worden tegenwoordig gepatcht en bijgewerkt, lang nadat ze voor het eerst zijn uitgebracht. Deze patches kunnen kritieke of niet-kritieke bugs oplossen, beveiligingsprotocollen bijwerken, de stabiliteit verbeteren, of zelfs functionaliteit toevoegen of de esthetiek wijzigen. Door je programma up-to-date te houden, blijf je concurrerend.
    Advertentie

Over dit artikel

Deze pagina is 5.466 keer bekeken.

Was dit artikel nuttig?

Advertentie