Koulutusohjelmointikieli on ohjelmointikieli , joka on tarkoitettu oppimiseen. Sellaisenaan kehitettiin kieliä, kuten BASIC [1] ja Pascal [2] . Python [3] kasvoi kielestä ABC kehitettiin oppimista varten . Suosittu erityisesti koulutukseen suunniteltu kieli on LOGO [4] . KuMir -kieliympäristö [5] on kehitetty erityisesti venäläisiä kouluja varten . Massachusetts Institute of Technologyssa luotu visuaalinen ohjelmointikieli Scratch ja vastaavat ohjelmointiympäristöt ovat yleistymässä [6] .
Opetuskielen tulee tarjota rakenteiden yksinkertaisuutta, selkeyttä ja luettavuutta. Liiallinen joustavuus, "salliva" syntaksi voivat tehdä ohjelmista vaikeasti ymmärrettäviä. Erilaisten "ohjelmointitemppujen" käyttöön kannustavat kielet eivät sovellu kovin hyvin oppimiseen [7] . Tämä liittyy Pascal -perhekielten käytön etuihin koulutusprosessissa C - kaltaisiin kieliin verrattuna [8] [9] .
Ohjelmointikieltä valittaessa tekijät, kuten sen uutuus, toteutuksen tehokkuus ( kääntäjän tai tulkin muodossa ) eivät näytä merkitystä. Esiintymistekijällä on sekä psykologinen merkitys (vaikuttaa opiskelijoiden motivaatioon) että käytännöllinen (ilman uudelleenkoulutusta hankitun tiedon kysyntä) [10] .
Koulutusohjelmointikielen tulisi tarjota sujuva siirtyminen pseudokoodista varsinaiseen ohjelmointiin. Kyky käyttää kansallista sanastoa avainsanoja ja tunnisteita varten voi olla hyödyllistä oppimisessa [8] .
Vaihtoehto monimutkaisille yleiskäyttöisille ohjelmointikielille, joiden oppiminen on suhteellisen aikaa vievää, voivat olla yksinkertaiset minikielet, joissa selvyyden vuoksi on graafinen esiintyjä , kuten kilpikonna Logossa - ensimmäinen ja yksi niistä. tunnetuimmat tällaiset kielet [11] .
BASIC , eng. Aloittelijan monikäyttöinen symbolinen ohjekoodi - 60-luvun alussa siitä tuli ensimmäinen ohjelmointikieli, joka tuli laajalle levinneeksi aloittelijoille. Se on kuitenkin saanut ankaraa kritiikkiä strukturoidun ohjelmoinnin periaatteiden noudattamatta jättämisestä ja siitä, että spagettikoodin luominen on helppoa. Edsger Dijkstra on sanonut: "Aiemmin BASIC:in opiskelleiden opiskelijoiden on lähes mahdotonta opettaa hyvää ohjelmointia. Mahdollisina ohjelmoijana he ovat kokeneet peruuttamattoman henkisen rappeutumisen .Tämän kritiikin vaikutuksesta Basicin luojat John Kemeny ja Thomas Kurtz laajensivat kieltä rakenteellisesti vuonna 1975 ja luopuivat GOTO :n käytöstä . 1980-luvulla he loivat päivitetyn version kielestä nimeltä True BASIC [12] . Nykyaikaiset laajalle levinneet BASIC-murteet ( QBasic , Visual Basic ) eroavat tästä muunnoksesta ja ovat Microsoft - alkuperää, mutta niillä on vähän yhteistä progenitorin kanssa, koska ne ovat melko moderneja rakenneohjelmointikieliä [13] . Seuraavat BASIC-murteet on luotu erityisesti koulutustarkoituksiin.
Gambasin "Visual Basic for Linux " [18] otetaan myös käyttöön kouluopetuksessa . Visual Basic .NET:stä on saatavilla ilmainen opetuksellinen pikaversio [19] .
BASICin ja Pascalin välillä syntynyt Logo - kieli oli ensimmäinen ohjelmointikieli, joka oli alun perin tarkoitettu lasten opettamiseen . Tämä kieli voidaan nähdä Lispin murteena , kielenä, joka aloitti toiminnallisen ohjelmoinnin [20] . Vaikka tämä kieli tunnetaan paremmin kilpikonnagrafiikasta ja sitä pidetään ensimmäisenä graafisista suorittimista , Lisp-ominaisuudet, kuten sekvenssiohjaus rekursion avulla ja luettelot päätietorakenteena , ovat myös tämän ( luonnollisesti moniparadigman ) kielen ominaisuuksia.
Vaikka Prologia , logiikkaohjelmoinnin aloittanutta kieltä , pidetään harvoin ensisijaisena oppimiskielenä, ohjelmointia vasta aloittavat ottavat sen helposti. Tätä helpottaa sen keskittyminen ihmisen ajatteluun , yksinkertainen, yhtenäinen syntaksi ja rakenteiden, kuten haarojen tai silmukoiden , puuttuminen [21] . Oppimisen helppous oli yksi kielen suunnittelutavoitteista, vaikka kieli on edelleen väärinymmärretty. Yksi syy Prologin vähäisyyteen perusopetuksessa on kätevien työkalujen puute interaktiivisen grafiikan kanssa työskentelyyn, mikä ei sovi kovin sujuvasti puhtaaseen deklaratiiviseen ohjelmointiin [22] .
Lispin moderni "akateeminen" murre - Scheme-kieli - keskittyi alun perin koulutukseen [23] . Sitä käytetään sellaisella kuuluisalla tietokoneohjelmointikurssilla kuin " Tietokoneohjelmien rakenne ja tulkinta ". Tämän kirjan julkaiseminen ei ainoastaan tehnyt Schemestä suositun kielen yliopistoympäristössä, vaan myös muutti lähestymistapaa ohjelmoinnin oppimiseen [24] . Tätä kieltä käytetään myös useissa oppikirjoissa, kuten Ohjelmien suunnittelussa» [25] , « Ohjelmointikielet: sovellus ja tulkinta» [26] , « Ohjelmointikielten perustiedot» [27] yms. Ohjelmoinnin oppiminen alusta alkaen Schemen avulla on myös Daniel Friedmanin kirjan aiheenaThe Little Schemer [28] , joka julkaistiin ensimmäisen kerran nimellä The Little Lisper vuonna 1974, oli alku eräänlaiselle trilogialle. Ensimmäinen Racket -kielelle omistettu kirja (Schemen suora jälkeläinen), Realm of Racket [29] , on myös oppikirja lapsille (tämä kirja on kuitenkin myös tarkistettu versio Lispin maa-oppikirjasta [30] , joka perustuu Common Lispissä ).
Haskell -kielestä on tullut vakava kilpailija Lispin eri versioille yliopiston toiminnallisen ohjelmoinnin kursseilla . Tämän kielen kirjoittajat tarkoittivat sen yhtä lailla opetukseen, tieteelliseen tutkimukseen ja käytännön sovelluksiin [31] . Se erottuu siitä, että se on puhtaasti toiminnallinen ohjelmointikieli, joka toteuttaa kirjoitetun lambda-laskennan , ja sen syntaksi on lähellä perinteistä matemaattista merkintää [32] [33] .
Vuonna 1991 Geert Smolka , Belgian Louvainin katolisen yliopiston professori, aloitti moniparadigman Oz -kielen kehittämisen . Kielen avulla voit kirjoittaa ohjelmia minkä tahansa yleisen ohjelmointiparadigman tyyliin : sekä deklaratiivisia, kuten looginen ja toiminnallinen ohjelmointi , että pakottavia. Tätä kieltä käytetään tietokoneohjelmoinnin käsitteiden, tekniikoiden ja mallien opetusohjelman perustana.» [34] .
Pascal -ohjelmointikieltä, jonka Niklaus Wirth kehitti Algol-60- linjan kehityksenä, kirjailija käytti alusta alkaen ohjelmoinnin johdantokurssilla opiskelijoille [2] . Tämä kieli alkoi nopeasti saada suosiota tässä ominaisuudessa.
Turbo Pascal , Delphi ja Free Pascal ovat olleet laajalti käytössä ja ovat edelleen käytössä opiskelijoiden ja koululaisten opetuksessa. Moskovan valtionyliopiston fysiikan tiedekunnasta vuonna 2002 alkanut kansainvälinen tieteellinen ja koulutusprojekti "Informatiikka-21" [35] asetti tavoitteekseen BlackBox Component Builder -ohjelmointijärjestelmän [36] käyttöönoton venäläisessä koulutuksessa . Component Pascal , Oberon-2 : n murre - Wirthin kehittämä oliopohjainen Pascal-kieli -perhe. Kuten muutkin Niklaus Wirthin kielet, se eroaa (mukaan lukien Borland-tyylisestä Object Pascalista) minimalismilla.
Ohjelmointielementtien opettamiseksi tietojenkäsittelytieteen kurssien puitteissa kehitettiin useita koulutusohjelmointikieliä venäläisillä avainsanoilla [37] . Akateemikko A.P. Ershovin ryhmässä kehitettiin lähestymistapa, jossa tutkittiin kahta ohjelmointikieltä - yksinkertaisempaa, joka on tarkoitettu pääasiassa graafisen suorittajan ohjaamiseen, ja edistyneempää yleismaailmallista. Kielet Robik ja RAPIRA [13] kehitettiin sellaiseksi pariksi . Venäjän tärkeimmät opetuskielet ovat:
Ohjelmoinnin alkukoulutuksessa voidaan käyttää myös yksinkertaisia kieliä graafisten suorittajien ohjaamiseen, kuten Cucaracha Robotland- järjestelmässä tai Kengurenok Ru [13] .
Valko-Venäjällä koulun algoritmisen kielen murre nimeltä IntAl on yleistynyt . [39]