180 likes | 304 Views
Modern programmeeronderwijs. $ a.exe Tik een rij getallen en sluit af met een 0: > 4 8 2 12 5 9 0 Het grootste getal is: 12. Differentieren in voorkennis. Wat is “modern”?. Waar het afnemende veld om vraagt? Wat de studenten ervan verwachten? Wat we zelf belangrijk vinden?. Ruby. C++.
E N D
Modern programmeeronderwijs $ a.exe Tik een rij getallen en sluit af met een 0: > 4 8 2 12 5 9 0 Het grootste getal is: 12
Wat is “modern”? • Waar het afnemende veld om vraagt? • Wat de studenten ervan verwachten? • Wat we zelf belangrijk vinden? Ruby C++ C# Java Haskell PHP Pascal
Taal, tools, en technieken... • Compiler? • Geintegreerde ontwikkelomgeving? • User-interface builder? • Framework wizard? • Debugger?
Wat hoort er bij? • Programmeertaal (alle constructies?) • Algoritmen? • Libraries? • Theoretische achtergronden? Moet het ook “leuk”zijn?
Groepsproject • Aan het begin van de studie:motivatie, orienterend • Aan het eind van de studie:integratie, evaluerend • Tijdens de studie:groepswerk-vaardigheden ofindividuele programmeervaardigheden?
Feedback (Nakijken van ingeleverd werk) • Plagiaatcontrole? • Alleen werking?Of ook kwaliteit van de code?(en wat is dat dan?) • Automatisch of door docent? • Theorietentamen of praktisch werk?
Dilemma’s: • Wat is modern? Taalkeuze... Leuk? • Taal + tools + technieken... Welke? • Taal / Algoritmen / Libraries / Theorie • Groepswerk? Wanneer? • Feedback: wat en hoe? Discussie – Presentatie - Evaluatie
0 2 1 3 UtrechtsePracticumopgaven
Theretische achtergronden...in een praktische context • Foutmeldingen • variabele niet gedeclareerd • puntkomma vergeten • ... • Waarschuwingen • unreachable code • statement has no effect • while-statement doesn’t terminate deze waarschuwingis theoretischonmogelijk!
Nietes! Deze methode lost het op: bool stopt (string filenaam) { .... } void gemeen (string filenaam) { while ( stopt(filenaam) ) x++; } Ha!En dit dan? wat komt er dan uit: ? stopt( "Gemeen.cs" ) Het Halting-problemis onoplosbaar
void gemeen (string filenaam) { while ( stopt(filenaam) ) x++; } stopt( "Gemeen.cs" ) Het Halting-problemis onoplosbaar Twee mogelijkheden: • “Gemeen” stopt wel ...dus stopt levert true op tegenspraak! ...dus gemeen bijft hangen! • “Gemeen” stopt niet ...dus stopt levert false op ...dus gemeen stopt direct! dus stopt kan helemaal niet bestaan
Eerste jaar Gametechnologie • tweede kwartaal:Gametechnologie introductie-project • maak een retro-game met nieuwe technologie
Retro-games Lemmings - network multiplayer GTA - Woerden 3D Megaman - webcam gesture control Zeeslag - voice control
En de "gewone” informatica? • Informatica introductieproject