Miért tanítsunk programozást blokkokkal?

A blokkalapú programozási környezetek egyre inkább az első kódolási tapasztalatokká válnak sok diák számára1, ahogy egyre több iskola kezdi meg számítástechnikai kurzusok és tantervek bevezetését és bővítését. Az egyik legnépszerűbb blokk alapú programozási nyelv a Scratch2(scratch.mit.edu). Naponta több mint 1500 új programozási projekt kerül feltöltésre a Scratch webhelyre3. A VEXcode magát a Scratch blokkokból táplálja.

Grafikon, amely az oktatási trendekkel kapcsolatos kutatási eredményeket szemlélteti, adatpontokkal és egyértelmű értelmezési jelmagyarázattal, az oktatás kategóriájával kapcsolatban.

A Scratch létrehozásának egyik elsődleges motivációja az, hogy sok fiatal diák túl nehéznek találja a szöveges programozási nyelvekkel való programozást4, mivel ezek a tanulók mind a gépelést, mind a szintaxist nehezen tudják elsajátítani. Ennek eredményeként a blokkalapú programozási nyelveket már óvodás korú diákok számára tervezték, de a legtöbbet 8 és 16 év közötti diákok számára tervezték. A blokk alapú programozás, beleértve a VEXcode-ot is, számos előnnyel jár a kezdő programozók számára5.

  1. Olvashatóság:A blokk alapú programozási nyelvek olyan parancsokkal rendelkeznek, amelyek sokkal könnyebben olvashatók, mint a szöveges parancsok.
  2. Memorizálás:A blokk alapú programozási nyelvek összes parancsa látható a felhasználó számára. Szövegalapú programozási nyelvek esetén a parancsokat gyakran meg kell jegyezni. Ezenkívül a felhasználóknak meg kell jegyezniük a szöveges parancsokhoz társított szintaxist. A blokkalapú parancsokhoz nincs szintaxis társítva.
  3. Gépelés/Helyesírás:Fiatalabb tanulók küszködnek a billentyűzet használatával. A helyesírási hibák szöveges programozási nyelv esetén fordítóhibákká válnak. A blokk alapú programozási nyelvek a drag and drop funkciót használják. Ezért nincs szükség gépelésre és helyesírási ismeretekre.

Annak ellenére, hogy bebizonyosodott, hogy a kezdő felhasználók könnyebben elkezdhetnek programozni egy blokk alapú programozási nyelvvel, mégis fontos megkérdezni, hogy a blokkalapú nyelvek hatékonyak-e a számítástechnikai fogalmak tanításában. A rövid válasz: igen. A kutatások kimutatták, hogy a blokkalapú programozási nyelvek hatékonyak voltak az olyan számítástechnikai fogalmak tanításában, mint az algoritmusok, változók, feltételes logika és kódértés6.

A blokk alapú programozási nyelvek használatának természetesen vannak hátrányai is. Például a tanulók néha úgy érzik, hogy a blokkok használata nem „hiteles” tanulási élmény7. Más szóval, az igazi programozók nem használnak blokkokat. Ez egy fontos szempont, amelyet szem előtt kell tartani, de fontos szem előtt tartani azokat a jól dokumentált kihívásokat is, amelyeket a szöveges programozási nyelvek jelentenek a kezdő programozóknak.

Pedagógusként tudjuk, hogy a fogalmak tanítására használt eszközök a tanulók változásával változnak. A matematikát K - College-ban tanítják. Az első osztályos tanulók tanítására használt eszközök sokban különböznek azoktól az eszközöktől, amelyeket a főiskolai alsó tagozaton tanítanak. A kutatások kimutatták, hogy a blokkalapú programozási nyelveket a kezdők könnyebben használhatják, és hatékony eszközt jelentenek a fontos számítástechnikai témák oktatására. Ez azonban nem jelenti azt, hogy a hallgatóknak mindig blokk alapú programozási környezetben kell maradniuk. Ehelyett jobb következtetést levonni az, hogy az egyik programozási mód, a blokkok vagy a szöveg, eredendően nem jobb, mint a másik8. Az, hogy melyik felel meg az Ön osztálytermének, mind az Ön oktatói kényelmi szintjétől, mind a tanulói felkészültségétől függ. Ahogy a tanulók különböző sebességgel sajátítják el a szorzási tényeket, egyes tanulók gyorsabban sajátítják el a blokkokkal történő programozást, mint mások. Az a lehetőség, hogy szöveges programozással kezdjenek, leköti őket és kihívást jelent. Az olyan eszközök, mint a VEXcode és a Text, lehetővé teszik, hogy minden tanulóval az egyéni oktatási szinten találkozzon.


1Weintrop, David. "Block alapú programozás a számítástechnikai oktatásban." ACM. 2019. augusztus 01. 2019. szeptember 10. / https://cacm.acm.org/magazines/2019/8/238340-block-based-programming-in-computer-science-education/fulltext

2Resnick, Mitchel, Brian Silverman, Yasmin Kafai, John Maloney, Andrés Monroy-Hernández, Natalie Rusk, Evelyn Eastmond, Karen Brennan, Amon Millner, Eric Rosenbaum és Jay Silver. "Karcolás." Az ACM 52 (2009): 60 közleményei.

3Resnick, Mitchel, Brian Silverman, Yasmin Kafai, John Maloney, Andrés Monroy-Hernández, Natalie Rusk, Evelyn Eastmond, Karen Brennan, Amon Millner, Eric Rosenbaum és Jay Silver. "Karcolás." Az ACM 52 (2009): 60 közleményei.

4Kölling, Michael, Neil CC Brown és Amjad Altadmri. "Frame-Based Editing." Az alap- és középfokú számítástechnikai oktatás műhelymunka anyaga - WiPSCE '15 (2015).

5Kölling, Michael, Neil CC Brown és Amjad Altadmri. "Frame-Based Editing." Az alap- és középfokú számítástechnikai oktatás műhelymunka anyaga - WiPSCE '15 (2015).

6Weintrop, David és Uri Wilensky. "A blokkalapú és szövegalapú programozás összehasonlítása középiskolai számítástechnikai tantermekben." ACM Transactions on Computing Education 18 (2017): 1-25.

7Weintrop, David. "Block alapú programozás a számítástechnikai oktatásban." ACM. 2019. augusztus 01. 2019. szeptember 10. / https://cacm.acm.org/magazines/2019/8/238340-block-based-programming-in-computer-science-education/fulltext

8Weintrop, David és Uri Wilensky. "Hogyan alakítják a blokkalapú, szöveges és hibrid blokk/szöveg modalitások a kezdő programozási gyakorlatokat." International Journal of Child-Computer Interaction 17 (2018): 83-92.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: