la nivel secundar, conceptele și practicile de bază ale informaticii (CS) sunt predate în cursuri de obicei în cadrul clusterului de carieră în tehnologia informației (IT) sub umbrela educației profesionale și tehnice (CTE). Cu toate acestea, conceptele și practicile CS sunt, de asemenea, din ce în ce mai încorporate în mediul academic și, de asemenea, electives (și sunt influențate de artă și design).
indiferent de disciplină, crearea de artefacte computaționale este una dintre practicile CS de bază pe care elevii ar trebui să le experimenteze în mod constant pentru a deveni mai buni rezolvatori de probleme. Artefactele computaționale pot include imagini, videoclipuri, prezentări, fișiere audio și programe de calculator.
practica precisă și consecventă în programarea calculatoarelor (CP) îi va ajuta pe elevi să construiască cunoștințe inter-curriculare în tandem cu conceptele și practicile academice și CS. Deoarece CP este procesul de scriere a unui program de la început până la sfârșit, elevii primesc expunere în amalgamarea practicilor 3-6 găsite în cadrul K-12 Computer Science.
Deci, cum putem angaja cu succes studenții în CP? Iată cum putem face acest lucru în patru pași majori.
Pasul 1: identificați problema
când elevii sunt noi la CP, de obicei începem să-i învățăm cum să programeze și să codifice folosind tutoriale. Deși nu e nimic în neregulă cu asta, nu vrem să-i ținem acolo.
de obicei, scriitorul unui tutorial a identificat deja atât problema, cât și soluția programului. Cel mai bun mod pentru copii de a învăța este prin scrierea propriilor probleme și soluții și crearea propriilor programe. În caz contrar, se vor concentra mai mult pe învățarea codării funcțiilor specifice într-o anumită limbă, care, în general, nu este diferită de memorarea pe de rost, care ar trebui înlocuită cu dezvoltarea memoriei de lucru.
identificarea (sau definirea) problemei este cea mai critică parte a procesului CP, deoarece elevii vor trebui să dezvolte un plan concret pentru ceea ce va face programul lor complet. Acest proces implică identificarea atât a intrărilor cunoscute (sau a datelor Date), cât și a ceea ce trebuie obținut prin ieșiri (rezultatul). Deși CP nu este un proces simplu, practica consecventă și precisă va construi încrederea studenților în timp în articularea detaliilor privind tipul de intrare, procesare și ieșire dorite pentru programele lor. Pentru a obține elevii au început în programare, citiți acest intro mare la o lecție pentru construirea și partajarea de aplicații de Code.org.
Pasul 2: Găsiți o soluție
pentru a găsi sau planifica soluția la problema identificată în pasul 1, Elevii pot crea o diagramă logică sau pot scrie pseudocod. Programatorii experimentați pot și vor folosi oricare dintre aceste metode pentru a transmite dezvoltarea programului clienților, profesorilor etc.
o diagramă de flux este o soluție pas cu pas la o problemă care folosește o reprezentare picturală a direcției programului și constă din săgeți, cutii și alte simboluri care reprezintă acțiuni (adică intrare/ieșire, proces etc.). Pseudocodul este similar cu engleza și este utilizat pentru a transmite soluția cu mai multă precizie decât în engleza simplă — dar cu mai puțină meticulozitate cerută de un limbaj de programare formal.
procesul de soluție permite programatorului să se concentreze asupra fluxului logic al programului fără a fi nevoie să adere la sintaxa reală utilizată de limbajul de programare pentru proiect. Consultați această lecție distractivă de Technovation pentru a vă ajuta elevii să își planifice codul.
Pasul 3: codează-l
adesea codificarea este confundată cu programarea, dar codificarea este doar o parte a procesului de programare. Programatorii buni pot crea instrucțiuni din soluții (discutate la Pasul 2) și le pot scrie în cod pentru ca computerul să le înțeleagă. Aici intră în joc abilitățile de proiectare algoritmică din gândirea computațională.
te ajută când te gândești la problema ta ca la o problemă de matematică, nu pentru că faci mereu multă matematică în timp ce programezi, ci pentru că procesul de gândire este același. În matematică folosim adesea seturi algoritmice de instrucțiuni pe care le urmăm într-o secvență de pași pentru a atinge un obiectiv. Acest proces este asemănat atât cu o diagramă de flux bine detaliată, cât și cu un cod (într-un limbaj de programare specific).
practicarea codării îi va ajuta pe elevi să înțeleagă că codificarea nu este complicată atunci când învață să gândească logic și în pași. Noțiuni de bază elevii au început prin scrierea de programe simple, le va învăța cum să dea instrucțiuni de calculatoare, modul în care computerele funcționează de fapt și că programatori bune nu sunt vagi și nu sări peste pași. De asemenea, vor înțelege că codul pe care îl scriu este procesat (tradus) de un compilator în limbajul mașinii pentru execuție.
pentru copiii noi în codificare, vă recomand să începeți cu un limbaj de programare vizuală (VPL), care permite copiilor să-și descrie algoritmii folosind ilustrații și permite programatorilor să descrie procesul în termeni care au sens pentru ei.
iată câteva VPL-uri populare:
- Scratch, ScratchJr
- Blockly
- Ardublock (limbaj de programare bloc pentru Arduino)
- ROBOLAB (limbaj de programare pentru LEGO Robotics)
- ROBOTC (grafic pentru VEX Robotics)
- LabVIEW (instrumente naționale)
deși există mai multe modalități de a-i face pe elevi să înceapă codificarea, vă recomand cu tărie ca întreaga școală să participe la o oră de cod și, de asemenea, să-i învețe pe copii să codifice în contextul unei provocări de proiectare STEM/STEAM.
Pasul 4: Testați-l
testarea în CP este un proces critic utilizat pentru a determina calitatea unui program și pentru a găsi erori (probleme). Ca stagiar la facultate, am fost introdus pentru prima dată în testarea și depanarea controalelor ActiveX în limbajul de programare Visual Basic. Deși testarea are niveluri diferite și va determina dacă programele funcționează sau nu — de lucru pentru a găsi bug-uri pentru dezvoltatorii de software pentru a corecta a fost foarte puternic în ajutându-mă să înțeleg calitatea programelor am folosit în fiecare zi și, de asemenea, importanța actualizării lor în mod regulat.
solicitarea studenților de a-și prezenta lucrările în mod public este o tehnică excelentă pentru implicarea și insuflarea în ele a importanței procesului de testare pentru discutarea și prezentarea lucrărilor CS de înaltă calitate. Din nou, Laboratorul de aplicații (la Pasul 1) este o lecție și un proiect minunat pentru a ajuta copiii să învețe CP de la început până la testare.
CP pentru diferite niveluri de grad
programarea pe calculator poate fi predată la toate nivelurile de grad. Iată câteva instrumente de utilizat cu diferite vârste și niveluri de cursanți.
gradele 3-8: kit de cod littleBits. Kitul de cod vine echipat cu blocuri electronice de construcție și o aplicație cu tutoriale de codificare și este o schelă excelentă pentru predarea studenților conceptele de codificare, lumină, sunet și mișcare în contextul unei provocări de proiectare sau invenție.
ceea ce mi se pare cel mai puternic despre kitul de cod este aplicația, deoarece ajută utilizatorii să se bazeze pe principiile de bază de codificare. Un coder bun, indiferent de limbă sau de experiența de codificare, va trebui să înțeleagă elementele de bază — cum ar fi intrarea/ieșirea, buclele, funcțiile, variabilele și, de asemenea, logica. Succesul se referă întotdeauna la dezvoltarea stăpânirii interne a fundamentelor. La fel ca Dr.Stephen R. Covey, autorul celor 7 Obiceiuri ale oamenilor extrem de eficienți, a spus odată: „puneți primele lucruri pe primul loc.”
kitul de cod funcționează, de asemenea, împreună cu toate resursele educaționale de care ar avea nevoie un educator, inclusiv planurile de lecție, fișele elevilor și alinierea la standardele științifice de generație următoare. Multe dintre resurse au fost testate și dezvoltate de cohorta littleBits lead Educator din 2017 și, ca membru mândru, am fost foarte norocos că am lucrat și am învățat cu un grup atât de talentat de educatori!
clasele 6-8: robotică. Noțiuni de bază copii a început în programare este destul de ușor. În rolul meu anterior ca specialist în curriculum, am folosit Lego Mindstorms robot ca introducere. Aceștia au fost pașii pe care i-am făcut pentru a ajuta copiii să înțeleagă conceptele cheie, precum și programarea:
- construi roboți lor. Practic, fiecare copil a iubit această parte.
- Aflați elementele de bază. Prin explorarea tutorialelor, au aflat despre motoare, senzori, angrenaje și alte componente.
- învață să programezi. Cărămida avea șase misiuni încorporate, ceea ce le-a permis elevilor să vadă cum să facă robotul să se miște cu motoare și să răspundă la atingere sau mișcare cu senzori. Pe măsură ce s-au obișnuit cu programele încorporate, au început să-și facă propriile programe, folosind blocuri de programare ROBOLAB.
- Conectați-vă la CS și STEM. Am constatat că acest lucru a ajutat foarte mult la elucidarea conceptelor și practicii atât a recunoașterii modelelor, cât și a designului algoritmic. Și apoi, desigur, lecții în CS și STEM, care au inclus codificare, forță și mișcare, design și tehnologie. De asemenea, am constatat că kitul VEX IQ a fost excelent în scopuri similare și am folosit atât Vex, cât și Lego, pe baza diferitelor evenimente competitive la care au participat studenții noștri.
clasele 8-12: robotică avansată. Pentru elevii de liceu care au practicat deja codificarea folosind un VPL și au sau stăpânesc principiile fundamentale de programare, următorul pas este să-i facem să codifice într-un limbaj de programare căutat în industrie, cum ar fi JavaScript, Python, Pearl sau C++. Din fericire, programarea unui robot precum VEX EDR oferă liceenilor o introducere în această experiență valoroasă de învățare. Elevii care programează VEX EDR învață să folosească limbajul de programare bazat pe ROBOTC C și pot vedea efectele codului pe care îl scriu în timp real prin rezolvarea problemelor folosind procesul de proiectare inginerească.
de curând am început să învăț să programez VEX EDR când am participat la un curs de formare în domeniul proiectării ingineriei cu Asociația Internațională de educatori în tehnologie și Inginerie. Acolo m — am întâlnit și am fost partener cu Tim Oltman-profesoara anului din Liceul Martha Layne Collins. El și colegul profesor Shane Ware au o experiență considerabilă în a învăța copiii să programeze roboți pentru diverse evenimente competitive VEX robotics și au câștigat numeroase premii în Kentucky.
I-am cerut lui Tim gândurile sale despre modul în care profesorii ar trebui să procedeze atunci când mută copiii de la programarea într-un VPL la un program bazat pe C, cum ar fi pentru VEX, iar el a spus: „mai întâi, construiește relații cu elevii tăi și apoi învață cu ei. Lasă-i să te vadă încercând și eșuând și se vor bucura să se lupte cu tine prin proces. În cele din urmă, ei te vor depăși și vor deveni profesori.”
Jorge Valenzuela este antrenor educațional și asistent universitar la Universitatea Old Dominion. El este, de asemenea, antrenor principal pentru învățarea pe tot parcursul vieții definit, Inc., o facultate Națională a Institutului Buck pentru Educație, un antrenor național de eficacitate a profesorilor cu Asociația Internațională a educatorilor de tehnologie și Inginerie (ITEEA) și o parte a programului Educator principal pentru littleBits. Vă puteți conecta cu Jorge pe Twitter @ JorgeDoesPBL pentru a continua conversația.