Reklame
Alice er et af de fedeste programmer, der lærer computerprogrammering til børn. Hvad er Alice? Det er et vigtigt værktøj, skoler og familier kan bruge til at omdanne programmering af computere til en spillignende oplevelse til at undervise basale objektorienterede programmering til børn.
En af de sejeste minder, jeg har som barn, var da min bror og jeg kopierede BASIC-programmer fra computeren dagens magasiner (1980'erne) i den gamle Franklin 64 desktopcomputer med et diskettedrev og et kæmpe 64k VÆDDER. Jeg vil aldrig glemme, når vi var færdig med at skrive den sidste linje i det første program og derefter indtastede kommandoen til RUN - hvordan skærmen begyndte at blinke tegn, og miniatyrhøjttaleren bippede gennem en patetisk gengivelse af "Dance of the Sugarplum Fairy." Ren magi. Jeg var kun 9 år gammel, men i det øjeblik blev jeg tilsluttet computere for livet.
For alle, der aldrig har oprettet en applikation, er det svært at beskrive følelsen af at skabe noget fra intet. Programmering er meget som enhver anden form for kunst på den måde, bortset fra i stedet for det lærred, vi har computerskærmen, og i stedet for malebørster har vi de forskellige programmeringsplatforme.
Her på MakeUseOf tror vi på vigtigheden af enkle læringsværktøjer, der kan lære komplekse færdigheder, såsom computerprogrammering. For eksempel dækkede Guy, hvordan du kan lære at skriv et program med SmallBasic Lær, hvordan man skriver computerprogram med SmallBasic Læs mere , og han dækkede også en sej applikation kaldet Skrab, der kan lære børnene at programmere Sådan undervises børn i programmering fra bunden! Læs mere . I dag vil jeg gerne dække et andet innovativt softwareapplikation kaldet Alice, der kan lære børnene at programmere på objektorienterede sprog.
Alice 3D-programmering - Hvad det er & hvad det ikke er
Alice 3D er et programmeringsmiljø, der tilbydes af Carnegie Mellon University. Det leveres gratis som en offentlig service gennem finansiering af forskellige programmering og computere giganter, såsom Electronic Arts, Sun Microsystems, National Science Foundation og andre større organisationer.
Alice er ikke et scriptingstudium, hvor studerende lærer om den rigtige syntaks, der bruges i forskellige programmeringssprog. Det handler ikke om at udvikle den bedst strukturerede For Loop. I stedet giver Alice studerende en virtuel verden - et 3D-modelleringsmiljø, hvor studerende kan lære hvordan at sammensætte forskellige komponenter, som hver for sig har deres egne egenskaber, kan skabe en større, fungerende projekt. 3D-miljøet er beregnet til at vise de studerende på en enkel måde hvordan konceptet med objektorienteret programmering fungerer.
Selve softwaren har en indbygget tutorial, hvilket giver mening, fordi det er hovedformålet at tjene som et undervisningsværktøj. Den første skærm giver studerende mulighed for at vælge fra en af tutorials, åbne en nylig verden, de har oprettet, se eksempler eller åbne en verden, de har gemt på computeren. Indstillingen, jeg vil vise i dag, er, hvordan en studerende kan starte fra en af de tilgængelige skabeloner og oprette deres egen 3D-animation. I dette eksempel følger jeg rumscenen.
Hvis du er en programmør, er den første ting, du vil bemærke, ruden på venstre side af skærmen, hvor alle objekter og de tilknyttede egenskaber, metoder og funktioner vises. Grænsefladen er så intuitiv, at studerende ikke engang behøver at forstå, hvad objekter og metoder er, bare ved at tilføje objekter og ved hjælp af grænsefladen til at manipulere dem, lærer de langsomt begrebet objektorienteret programmering. Tilføjelse af et objekt til skærmen er så simpelt som at trykke på det grønne “Tilføj objekter”-Knappen.
I objektgalleriet har studerende snesevis af meget sjove “objekter” at vælge imellem. Disse inkluderer figurer, maskiner, køretøjer og endda specialeffekter som ild og tordenvejr.
I denne scene har jeg tilføjet månens overflade, en månelander og en astronaut. Som du kan se i det øverste venstre vindue består hvert objekt af mange komponenter, hvert individuelle objekter med deres egne egenskaber, metoder og funktioner. Du kan kontrollere en af disse ved at trække og droppe komponenten i programmeringsområdet i bunden af programmeringsgrænsefladen.
Når du trækker objektet ind, viser en pop-up-skærm dig alle de tilgængelige metoder og funktioner, du kan bruge til at programmere opførelsen af det pågældende objekt. Dette ligner, hvordan programmeringsplatformen i de fleste objektorienterede programmeringssprog typisk tilbyder den samme funktion. Når du borer ned gennem de tilgængelige funktioner og vælger den ønskede, indsættes det i programmet.
Selve programmet kan være så enkelt eller så komplekst, som du vil. Som du kan se her, er det muligt at oprette komplicerede og meget funktionelle programmer ved at bruge If / Else udsagn, mens løkker og andre standardbetingede udsagn, der er en del af de fleste programmering sprog i dag. Inden for et par minutter efter at have spillet rundt med dette vanedannende læringsprogram, skabte jeg en 3D-animation, hvor astronauten bevægede sig tættere på hans månelander og bølger ”farvel”. Kameraet panorerer tættere på, og derefter, når månelanderen starter uden ham om bord, siger han, "Åh åh."
Det spændende ved dette fantastiske gratis læringsværktøj fra Carnegie Mellon University er det faktum, at det kan være et meget simpelt læringsværktøj til meget små børn til at lære grundlæggende programmeringsevner, eller det kan være et nyttigt værktøj for endda børn i gymnasiet at generere meget kompliceret og genialt programmeret 3D verdener.
I begge tilfælde er dette et af de bedste programmer, der lærer computerprogrammering til børn, der opfordrer børn til at engagere sig med deres computere på måder, som de har måske aldrig overvejet - med en dybde af forståelse får børn bare aldrig rigtig, når det eneste de gør er at chatte på IM og opdatere deres status på Twitter og Facebook. Alice hjælper børn med at forstå hjertet og sjælen i, hvad der gør computerteknologi og programmering så cool.
Vil du nogensinde overveje at bruge Alice i din egen skole eller som en del af din pensum? Er dette et læringsværktøj, du vil overveje at dele med dine egne børn? Del din indsigt og oplevelser i kommentarfeltet nedenfor.
Ryan har en BSc-grad i elektroteknik. Han har arbejdet 13 år inden for automatisering, 5 år inden for it, og er nu en applikationsingeniør. En tidligere administrerende redaktør for MakeUseOf, han har talt på nationale konferencer om datavisualisering og har været vist på nationalt tv og radio.