Programmeren met Alice

Slides:



Advertisements
Verwante presentaties
Praten met kinderen over de wereld !
Advertisements

Sudoku puzzels: hoe los je ze op en hoe maak je ze?
Bij een herhaald experiment, met telkens dezelfde kans op succes gebruiken we de binomiale kansverdeling Een binomiale kansverdeling wordt gekenmerkt door.
Doublet deel 1 – de basis.
PSD Basisstructuren programmeren.
PSD Basisstructuren programmeren.
Vervolgbijeenkomst 2 Procesfasering bij Leren Leren.
Goethals Frederik Vakdidactiek 17 – Goethals Frederik
Discipelschap.
Hoofdstuk 8: Recursie.
9 Ik heb jullie liefgehad, zoals de Vader mij heeft liefgehad
Woorden Groep 6.
Practica Computerlinguistiek Tekst en uitleg:
Aan de slag met Evernote Documenteer je leven, overal en altijd 1.
GESPRG Les 14 Gestructureerd programmeren in C. 174 Details! The devil is in the details.
TIBETAANSE PERSOONLIJKHEIDSTEST
‘Inleiding programmeren in Java’ SWI cursus: ‘Inleiding programmeren in Java’ 4e college Woe 19 januari 2000 drs. F. de Vries.
Leer de namen van de noten 2
Les voor groep 8 Pak je stoel en kom aan de instructietafel
Hoofdstuk 6: Controle structuren
1 Datastructuren Sorteren: alleen of niet alleen vergelijkingen College 5.
1 Datastructuren Sorteren: alleen of niet alleen vergelijkingen (II) College 6.
Vrienden zijn er om je te steunen
Parallelle Algoritmen String matching. 1 Beter algoritme patroonanalyse Bottleneck in eenvoudig algoritme: WITNESS(j) (j = kandidaat in eerste i-blok)
Stijn Van Wonterghem1 ALICE Een animatie opbouwen.
Kunnen we leren kiezen? Jan Bransen Alumnidag 2006.
De fundamenten van de organisatiestructuur
Werken aan Intergenerationele Samenwerking en Expertise.
Presentatie over Tijgers.
Ruimtevaartquiz De Maan De.
Al doende leren training docenten
Klik ergens op het witte deel van deze pagina om verder te gaan
Object georiënteerd programmeren in Alice
Herhaalde uitvoering Bepaalde en onbepaalde lussen.
A H M F K EB C x 91 Van hand veranderen voor de X splitsen en Rechangeren. Met de nieuwe partner op.
Voorrangsregels bij rekenen (1)
Scriptieseminarie 3 Methode – Experimenteel onderzoek
Workshop “Begrijpend kijken”
PHP & MYSQL LES 02 PHP & FORMULIEREN. PHP & MYSQL 01 PHP BASICS 02 PHP & FORMULIEREN 03 PHP & DATABASES 04 CMS: BEST PRACTICE.
6,50 euro In dit vakje zie je hoeveel je moet betalen.
‘t Is tijd voor een quiz!.
Programmeren met If This Then That (IFTTT)
Kirti Zeijlmans MSc Rijksuniversiteit Groningen Voor meer informatie:
H3. Communicatie Gesprekstechnieken.
Intensief lezen Lees de tekst grondig door en duid kernwoorden en/of –zinnen aan. Doe dit zo. Hoe doe je dit? Volg de pijl en dan zie je het symbooltje.
Proeftoets periode 1 4 havo.
Les 3 Basisbouwstenen (deel 2) Programmeren met Visual Basic Karl Moens.
Heel interessant !.
CONTROLESTRUCTUREN (DEEL 1)
Functioneel programmeren Een snelle herhaling…. Functie-definitie static int kwad (int x) { return x*x ; } kwad x = x * x Haskell kwad :: Int  Int.
Dirigeren Wat doet een dirigent?. inhoudsopgave Wie laat ik spelen? Ga ik aftellen? Welke opdrachten kan ik geven? Hoe laat ik ze stoppen?
Briant College Fictie h4 Tijd. Briant College ­ Op welke manier een schrijver ‘tijd’ gebruikt in een verhaal. 2 Wat ga je deze les leren.
De voorbereiding De planning
Plancyclus, les 4  Actualiteit  Vragen naar aanleiding van vorige les  Vragen over hoofdstuk 4 en 5  Observeren met een plan; het verschil tussen observeren.
Welkom! maandag 16 November 2015 Les B-2.
Hoe maak ik een PowerPoint presentatie?
Codetuts Academy Les 6 Module 2a Php Fundamentals 1.
Minimum Opspannende Bomen Algoritmiek. 2 Inhoud Het minimum opspannende bomen probleem Een principe om een minimum opspannende boom te laten groeien Twee.
IF() ELSE() LES 4: VOORWAARDEN. BOOL Een variabele die slechts 2 mogelijke waarden kan hebben: true(waar) of false(niet waar) duid je aan met bool bool.
Rob Goossens De Werkomschrijving.
1. Wat gaan we vandaag doen ?
Denken als een computer
Gameprogrammeren: Keuzeopdrachten
Programmeren woensdag 4 oktober 2017.
Small Basic Console deel 2
Methodes op klasseniveau
Leren programmeren met Scratch
Raden, regels en redeneren Groep 7 en 8
Software Development fundamentals
Python – For loop + strings
Transcript van de presentatie:

Programmeren met Alice LES 1

DOEL Op een gestructureerde manier een programma maken dat een animatie uitbeeldt Gestructureerd = in 4 fasen Vorige les: eerder intuïtief Lukt echter niet voor groot programma 4 fasen Scenario Ontwerp Implementatie Testen

Programma Programma = verzameling acties die de computer vertellen wat hij moet doen Voorbeeld: Word Acties: woord onderlijnen, blad uitprinten, ... Analoog: een script in de filmwereld (=programma) beschrijft wat elke acteur moet doen (=actie) Actie = instructie Voorbeeld: verzend mail Filmwereld: steek vijand neer met mes

FASE 1: scenario Scenario: beschrijft het probleem In termen van animatie: probleem = verhaal Geeft alle noodzakelijke details om Initiële scène op te stellen Sequentie van instructies op te stellen die animatie beschrijven Maw: moet aanleiding geven tot antwoord op: Welk verhaal wordt verteld? Welke objecten zijn nodig? Welke acties treden op?

Voorbeeld Zie tekst Vragen Waarover gaat het verhaal? Welke objecten zijn nodig? Welke acties zijn nodig?

FASE 2: Ontwerp Beschrijft oplossing voor het probleem mbv ‘verhaalbord’ (zie verder) In termen van animatie: beschrijft op een gestructureerde manier de acties die nodig zijn Gestructureerd = gemakkelijk om te zetten naar Alice-instructies Acties => volgen uit scenario Typisch: groot scenario wordt opgesplitst in kleinere scenario’s met elk eigen verhaalbord Of nog: groot (complex) probleem wordt opgesplitst in kleinere problemen Voorbeeld: maken van een auto Verhaalbord Visueel Tekstueel

Visueel verhaalbord Scenario wordt opsplitst in verschillende scènes Elke scène is een momentopname, een snapshot Bij elke scène hoort Scènenummer Actie die in scène gebeurt Ev. geluid en tekst

Voorbeeld Beginscène Sneeuwman probeert de aandacht te trekken Sneeuwvrouw draait zich om

Tekstueel verhaalbord Is een soort ‘to do’-lijst = een geordende lijst met acties Voorziet een structuur die later gemakkelijk naar programmacode kan omgezet worden <-> visueel verhaalbord: voorziet visuele representatie Voorbeeld: Ik wil een vriend begroeten die met zijn rug naar mij gedraaid staat (hij kijkt bv. naar een etalage )

Voorbeeld Tekstueel verhaalbord: Tekstueel verhaalbord = algoritme Doe in volgorde (do in order) Ik stap op de persoon af Ik zeg ‘hallo’ De persoon draait zich om Doe tegelijk (do together) Ik geef de persoon een hand De persoon geeft mij een hand Tekstueel verhaalbord = algoritme = lijst van acties om probleem op te lossen

Verhaal sneeuwman en sneeuwvrouw Beginscène

FASE 3 en 4: implementatie en testen = omzetten van het ontwerp naar programma Testen = controleren of het programma doet wat we willen dat het doet Door het programma eens uit te voeren en te kijken of het overeenstemt met ons scenario en ontwerp Kan op om het even welk moment gebeuren Zowel tijdens als na implementatie

Commentaar Commentaar In Alice: met instructie ‘//’ Bevindt zich bij een instructie of groep instructies in programma Erbij gezet door de schrijver van het programma Verduidelijkt die instructie of groep instructies voor iemand die programma-instructies leest Enkel waar nodig In Alice: met instructie ‘//’

Programmeren met Alice Les 2

DOEL Functie Expressie Conditionele uitvoering Vraagt informatie op over bepaalde eigenschappen van een object Voorbeeld: hoe groot is de sneeuwman? Expressie Voert een bewerking uit Voorbeeld: verschil berekenen tussen de lengte van de sneeuwman en sneeuwvrouw Conditionele uitvoering Een bepaalde instructie wordt maar uitgevoerd wanneer een bepaalde voorwaarde vervuld is Voorbeeld: ALS de sneeuwman groter is dan de sneeuwvrouw DOE INSTRUCTIE: sneeuwman bukt zich en kust sneeuwvrouw

Functies Vragen informatie op over eigenschappen van een object Want enkel de meest voorkomende eigenschappen (bv. kleur) staan onder ‘properties’

Controlestructuren Bepaalt de volgorde waarin instructies worden uitgevoerd Do in order: voer instructies de een na de ander uit Do together: voer instructies tegelijk uit Conditionele uitvoering: een bepaalde instructie wordt maar uitgevoerd wanneer een bepaalde voorwaarde vervuld is. Wanneer dit niet zo is, wordt (eventueel) een andere instructie uitgevoerd Voorbeeld: ALS het mooi weer is ga ik voetballen, ANDERS ga ik zwemmen

Conditionele uitvoering Voorbeeld: ALS het mooi weer is ga ik voetballen, ANDERS ga ik zwemmen Alice: ALS => IF ANDERS => ELSE ‘Het mooi weer is’ = conditie Is conditie geldig is => ‘het mooi weer is’ = true =>actie ‘ik ga voetballen’ wordt uitgevoerd Is conditie ongeldig is => ‘het mooi weer is’ = false =>actie ‘ik ga zwemmen’ wordt uitgevoerd

Conditionele uitvoering