Programozási koncepciók Scratch-ben

Programozási koncepciók Scratch-ben

Sokan ismerik a Scratch-et – egy gyermekprogramozási környezetet, amelyben a tanulás általában arra összpontosul, hogy kreatív projekteket hozzunk létre az "egyszerűtől a bonyolultig" elv szerint. Ugyanakkor a programozás tanulmányozásának "klasszikus megközelítése" (változók → elágazások → ciklusok → függvények → adatszerkezetek → objektumok → …) a Scratch-ben nehézkes.

Azonban a fogalmak (hívjuk őket koncepcióknak) struktúrált, objektum- és eseményorientált programozás tanulmányozásának sorrendjének megváltoztatása, valamint a véletlenszerű, interaktív animációk mögött való eltüntetése nem jelenti azt, hogy ne kellene hangsúlyozni a koncepciókat. Különösen akkor, ha a cél nem csupán a kreatív képességek fejlesztése, hanem a programozás tanítása. Ezt az ötletet próbáltam tükrözni a tanfolyamunkban.

Az első dolog, amivel egy kezdő Scratch felhasználó találkozik, a sprittek. Bár a Scratch-ben ténylegesen nincs objektum-orientált programozás, a sprittek objektumoknak tekinthetők. Ezen a ponton a tanuló látja, hogy a programban sok objektum létezhet, amelyeket külső szkriptek irányítanak. A sprittek parancsokat kapnak, vagy kérésre információt adnak az állapotukról, ezáltal a programozás az objektumok irányítására redukálódik.

A második dolog, amivel a Scratch már az elején találkozik a fiatal programozó, a párhuzamosság fogalma. Minden spritnek lehet több szkriptje, amelyek egyszerre futnak. Több sprit is futtathatja a saját programját egyszerre egymás mellett. Ráadásul nehezebbé válik a soros végrehajtás megszervezése.

Programozási koncepciók Scratch-ben

Programozási koncepciók Scratch-ben

Már az első órán elkerülhetetlen, hogy találkozzunk a ciklusokkal. Különben a macska nem fog elindulni. Ezen a ponton a ciklusokkal való ismerkedés intuitív és felszínes marad. A "mindig ismételni" és az "ismételd ... alkalommal" ciklusokra korlátozódunk, amelyek könnyebben érthetőek. A feltételes ciklust egy speciális órán tanuljuk meg, amely kifejezetten a ciklusokról szól. Ez az óra már logikai kifejezések és változók ismeretét igényli.

Mivel a Scratch eseményorientált környezet, a feltételes blokkok megismerése kényelmesebben történik a változók előtt. Az események szolgálhatnak a feltételként.

Programozási koncepciók Scratch-ben

Szerintem ez a sorrend jobb, mivel minden leckénél a lehető legkevesebb fogalmat vezetünk be. Ráadásul nem elvont fogalmakat, hanem azonnal látjuk a gyakorlati hasznukat.

Ha először a változókat tanulmányozzuk, akkor nehéz bemutatni azok szerepét és hasznát, mivel addig nem tanulmányoztuk a feltételes utasítást, az adatbevitelt és a véletlenszám-generálást.

A Scratch-ben, a listákat leszámítva, a programozó három adat típussal találkozik: számokkal, szövegekkel és logikai típussal. Ebben az esetben a típus az értékhez, nem pedig a változóhoz van kötve. A szövegek számokká alakítása és vissza nem szükséges. A szövegek nem kerülnek idézőjelek közé.

A blokk, amely logikai értéket ad vissza és jellegzetes szögletes formája van, kerek mezőkbe illeszthető. Ennek fordítva nem igaz: ahol logikai kifejezés várható, ott nem lehet egy normál változót elhelyezni.

Programozási koncepciók Scratch-ben

A Scratch úgy van megvalósítva, hogy a végrehajtás során ne forduljanak elő kritikus hibák. Valószínűleg ezért, ha próbálunk egy szöveget matematikai műveletben használni, az nullával helyettesítik (lásd az első képernyőfelvételt).

A programozónak tudnia kell, hogy a programozási nyelvek lehetőségei a könyvtárak révén bővülnek. A Scratch használata közben a tanuló kiegészítőket csatlakoztathat, amelyek új parancsok megjelenését eredményezik a környezetben.

Programozási koncepciók Scratch-ben

A Scratchben a funkciók a „Más blokkok” szakaszban találhatók, ahol egyrészt létrehozhat saját blokkot, amelyet más szkriptekbe beilleszthet. Másrészt meg kell határoznia ennek a blokknak a funkcionalitását, azaz mit fog csinálni.

Programozási koncepciók Scratch-ben

A Scratch-funkcióból nincs visszatérés érték.

Ezek szerint a programozási fogalmak tanulmányozása az eseményorientált környezetben megváltoztatja a megközelítést. Valójában először bonyolultabb és elvontabb fogalmakat tanulunk, és csak a folyamat mélyítésével lépünk át a strukturált programozás elemeire. Hogy ez előny vagy hátrány az első megismerkedés szempontjából – vitatható kérdés.

Forrás: habr.com

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster