Summary: | Lapsia varten on tehty erilaisia ohjelmointiympäristöjä, jotka auttavat heitä oppimaan kaikille hyödyllistä ohjelmoinnillista ajattelua. Ohjelmoinnilliseen ajatteluun kuuluu erilaisia ohjelmoinnin konsepteja ja sitä voidaan hyödyntää esimerkiksi ongelmanratkaisuun. Lapsille tarkoitettuja ohjelmointiympäristöjä voidaan jakaa erilaisiin luokkiin. Tässä tutkielmassa lapsille tarkoitettuja ohjelmointiympäristöjä on jaettu ensin sen mukaan, onko niiden päätavoitteena opettaa ohjelmointia vai onko ohjelmoinnin oppiminen sivutuote jonkin muun tavoitteen edistämiselle. Näistä päätavoitteelliset eli opettavat järjestelmät jaetaan eteenpäin ohjelmakoodin päämuodon mukaan tekstuaalisiin, visuaalisiin, tekstuaalisgraafisiin, esittäviin, konkreettisiin sekä valikollisiin ja arvollisiin ohjelmointiympäristöihin. Sivutavoitteellisissa eli voimaannuttavissa ohjelmointiympäristöissä sen sijaan hyödynnetään monimuotoisempia tapoja harjoitella ohjelmointiin liittyviä konsepteja joko käyttämällä vaihtoehtoisia tapoja ohjelmoida tai parantelemalla muita aktiviteetteja ohjelmoinnin avulla.
Different kinds of programming environments have been made for children that help them learn computational thinking, which is a useful skill for everyone. Computational thinking consists of different programming concepts and it is used, for example, in problem solving. Programming environments for children can be categorized into different groups. In this paper, programming environments for children have first been separated based on whether learning to program is the main goal or is learning to program a side product of advancing another goal. Those with learning to program as their main goal, which are called teaching systems, are further categorized based on the main form of coding into textual, visual, textual-graphical, tangible, menu-based and value-based programming environments. Those with learning to program as their secondary goal, which are called empowering systems, use more diverse ways to practice programming concepts by either using alternative ways of programming or enhancing other activities with programming.
|