-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathproject.tex
69 lines (50 loc) · 4.45 KB
/
project.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
\chapter{Project}
In de afgelopen hoofdstukken heb je drie apps gemaakt in \ai. Je hebt \ai nu behoorlijk in de vingers, het is dus hoog tijd om zelf op ontdekkingsreis te gaan! In dit hoofdstuk ga je zelf een app verzinnen en ontwikkelen.
Het is voor dit project aan te raden om \emph{tweetallen} te vormen. Samen weet en kun je immers meer dan alleen!
\section{Brainstorm}
Het verzinnen van een app kan best lastig zijn, je begint daarom met een brainstorm sessie. Allereerst bepalen jullie samen het soort app dat je wilt ontwikkelen: een game, een hulpmiddel, een educatieve app? Neem daarna samen met je partner een vel papier en schrijf hier elk idee binnen deze categorie op wat in je opkomt. Houd hierbij de volgende regels in gedachten:
\begin{derivation}{Brainstorm regels}
\begin{itemize}
\item Geen enkel idee is te gek
\item Slechte idee\"en bestaan niet
\item Kwantiteit is belangrijk, schrijf dus vooral \emph{veel} op
\item Idee\"en combineren leidt tot betere idee\"en (tip: dit gaat makkelijker als je de idee\"en categoriseert)
\end{itemize}
\end{derivation}
Nu je een hoop idee\"en op papier hebt staan ga je samen een idee uitzoeken om te ontwikkelen. Bedenk hierbij of het haalbaar is (je docent kan je hierin adviseren!) en of het niet te eenvoudig is. Overleg met een ander tweetal over jullie idee\"en, wie weet kun je het nog verder aanscherpen!
\begin{opgave}
\opgVraag
Beschrijf jullie idee in een projectvoorstel van een half A4tje. Vermeld hierin tenminste het doel van de applicatie en hoe je dit doel denkt te bereiken. Geef aan welke functies van de telefoon (bijvoorbeeld de orientation sensor) je zult gebruiken. Voeg ook tenminste \'e\'en schets toe van de gebruikersinterface.
Leg dit voorstel voor aan je docent. De docent zal aangeven of het voorstel haalbaar en voldoende is. Na goedkeuring kun je verder naar de volgende fase.
\end{opgave}
\section{Ontwerpen}
Voordat jullie daadwerkelijk aan de slag gaan ga je nadenken over het ontwerp. Het is een goede gewoonte om voor je begint met programmeren eerst een ontwerp te maken. Door dit te doen voorkom je dat je tijdens het programmeren tegen onverwachte zaken aanloopt. Ook zal uiteindelijk de structuur van je programma duidelijker worden, wat de code makkelijker te begrijpen maakt voor jullie zelf en voor de docent.
\begin{opgave}
\opgVraag
Werk de schets(en) van de gebruikersinterface verder uit. Zorg ervoor dat je alle toestanden of situaties in de app kunt laten zien.
\end{opgave}
\begin{opgave}
\opgVraag
Schrijf op welke acties er plaatsvinden bij de verschillende handelingen die een gebruiker kan verrichten. Wees hierbij zo precies mogelijk.
\end{opgave}
\begin{opgave}
\opgVraag
Bedenk of je, door gebruik te maken van procedures, je ontwerp kunt verbeteren. Zijn er stukjes code die meerdere keren worden uitgevoerd? Heb je te maken met ingewikkelde code die je kunt opdelen? Denk ook na over de naamgeving.
\end{opgave}
\section{Ontwikkelen}
Nu jullie een ontwerp hebben gemaakt is het tijd om de app te ontwikkelen! Dit doe je net als in de voorgaande hoofdstukken \emph{iteratief}. Dat wil zeggen dat je steeds een klein stukje ontwikkelt (bijvoorbeeld een scherm, of de implementatie van een knop) en vervolgens uittest. Zo blijven de problemen die je tegenkomt zo klein mogelijk.
Jullie gaan programmeren via het zogenaamde \emph{pair-programming}. E\'en van de twee zit hierbij achter de knoppen (de \emph{driver}), de ander kijkt over de schouder mee (de \emph{observer}). De \emph{driver} programmeert dus en de \emph{observer} controleert of er geen fouten gemaakt worden. Jullie moeten beiden kunnen programmeren, wissel dus regelmatig van rol!
\begin{opgave}
\opgVraag
Ontwikkel de app volgens de hierboven beschreven methode.
\end{opgave}
\section{Testen en verbeteren}
\runOpTelefoon{}
Gefeliciteerd, jullie hebben jullie eerst app volledig zelf gemaakt! Het is hoogste tijd om ook anderen met jullie app te laten spelen/werken. Jij weet exact hoe jouw app werkt, de ander echter niet. Door deze testen zul je dus waarschijnlijk bugs en andere verbeterpunten vinden.
\begin{opgave}
\opgVraag
Laat de app testen door twee andere groepjes (en test natuurlijk ook hun app!) en noteer de verbeterpunten. Verbeter jullie applicatie en herhaal dit proces een paar keer.
\end{opgave}
\section{Presenteren}
Tot slot presenteren jullie de ontwikkelde applicatie aan de rest van de klas. Bereid hiervoor een korte presentatie en een demo voor.
\emph{Welk tweetal heeft de mooiste app gemaakt?}