keskiasteen tietojenkäsittelytieteen (core computer science, cs) käsitteitä ja käytäntöjä opetetaan kursseilla, jotka ovat tyypillisesti tietotekniikan uraklusterissa uraklusterin (career and technical education, CTE) alaisuudessa. CS-käsitteitä ja-käytäntöjä sisällytetään kuitenkin yhä enemmän akateemisiin ja myös valinnaisiin käsitteisiin (ja niihin vaikuttavat taide ja muotoilu).
riippumatta tieteenalasta, laskennallisten esineiden luominen on yksi keskeisistä CS-käytännöistä, joita opiskelijoiden tulisi johdonmukaisesti kokea tullakseen paremmiksi ongelmanratkaisijoiksi. Laskennalliset esineet voivat sisältää kuvia, videoita, esityksiä, äänitiedostoja ja tietokoneohjelmia.
tarkka ja johdonmukainen käytäntö tietokoneohjelmoinnissa (CP) auttaa opiskelijoita rakentamaan oppiaineiden välistä tietoa yhdessä akateemisten ja CS-käsitteiden ja käytäntöjen kanssa. Koska CP on prosessi kirjoittaa ohjelman alusta loppuun, opiskelijat saavat altistumisen amalgamation käytäntöjä 3-6 löytyy K-12 Computer Science Framework.
Joten, miten voimme menestyksekkäästi sitouttaa opiskelijoita CP: hen? Näin voimme tehdä sen neljässä suuressa vaiheessa.
Vaihe 1: tunnista ongelma
kun oppilaat ovat uusia CP: ssä, alamme tyypillisesti opettaa heitä ohjelmoimaan ja koodaamaan tutorialeilla. Vaikka siinä ei ole mitään vikaa, emme halua pitää heitä siellä.
yleensä opetusohjelman kirjoittaja on jo tunnistanut sekä ohjelman ongelman että ratkaisun. Parhaiten lapset oppivat kirjoittamalla omia ongelmiaan ja ratkaisujaan sekä luomalla omia ohjelmia. Muuten ne keskittyvät enemmän tietyn kielen tiettyjen toimintojen koodaamisen opetteluun, mikä ei yleensä eroa rote-muistamisesta, joka tulisi korvata työmuistin kehittämisellä.
ongelman tunnistaminen (tai määrittely) on kriittisin osa CP-prosessia, koska opiskelijoiden tulee kehittää konkreettinen suunnitelma siitä, mitä heidän koko ohjelmansa tekee. Tässä prosessissa tunnistetaan sekä tunnetut panokset (tai annetut tiedot) että se, mitä tuotoksilla saadaan (tulos). Vaikka CP ei ole yksinkertainen prosessi, johdonmukainen ja tarkka käytäntö rakentaa opiskelija luottamusta ajan artikulointi yksityiskohtia siitä, millaista tulo, käsittely ja Lähtö haluttu ohjelmiaan. Jos haluat saada opiskelijat aloittamaan ohjelmoinnin, lue tämä loistava johdatus opetukseen sovellusten rakentamiseen ja jakamiseen Code.org.
Vaihe 2: Etsi ratkaisu
löytääksesi tai suunnitellaksesi ratkaisun vaiheessa 1 havaittuun ongelmaan opiskelija voi joko luoda vuokaavion tai kirjoittaa pseudokoodin. Kokeneet ohjelmoijat voivat ja käyttävät jompaakumpaa näistä menetelmistä välittääkseen ohjelmakehityksen asiakkaille, opettajille jne.
vuokaavio on vaiheittainen ratkaisu ongelmaan, joka käyttää kuvallista esitystä ohjelman suunnasta ja koostuu nuolista, laatikoista ja muista symboleista, jotka esittävät toimintoja (eli input/output, process, jne.). Pseudokoodi on samankaltainen englannin kielen kanssa ja sitä käytetään välittämään ratkaisu täsmällisemmin kuin selkokielisessä englannin kielessä — mutta vähemmän pikkutarkasti, jota muodollinen ohjelmointikieli vaatii.
ratkaisuprosessin avulla ohjelmoija voi keskittyä ohjelman loogiseen virtaukseen ilman, että hänen tarvitsee noudattaa ohjelmointikielen projektissa käyttämää todellista syntaksia. Tutustu tämä hauska Technovation oppitunti auttaa oppilaita suunnittelemaan koodin.
Vaihe 3: koodi se
usein koodaus sekoitetaan ohjelmointiin, mutta koodaus on vain yksi osa ohjelmointiprosessia. Hyvät koodarit voivat luoda ohjeita ratkaisuista (käsitellään vaiheessa 2) ja kirjoittaa ne koodiksi tietokoneen ymmärrettäväksi. Tässä tulevat mukaan laskennallisen ajattelun algoritmiset suunnittelutaidot.
auttaa, kun ajattelee ongelmaansa matematiikan ongelmana, ei siksi, että ohjelmoinnin aikana tehdään aina paljon matematiikkaa, vaan siksi, että ajatusprosessi on sama. Matematiikassa käytämme usein algoritmisia ohjejoukkoja, joita seuraamme askelsarjassa tavoitteen saavuttamiseksi. Tätä prosessia verrataan sekä hyvin yksityiskohtaiseen vuokaavioon että koodiin (tietyllä ohjelmointikielellä).
koodaamisen harjoittelu auttaa oppilaita ymmärtämään, että koodaaminen ei ole monimutkaista, kun he oppivat ajattelemaan loogisesti ja vaiheittain. Oppilaiden saaminen alkuun kirjoittamalla yksinkertaisia ohjelmia opettaa heille, miten tietokoneille annetaan ohjeita, miten tietokoneet todella toimivat ja että hyvät koodarit eivät ole epämääräisiä eivätkä ohita askelia. He ymmärtävät myös, että heidän kirjoittamansa koodi käsitellään (käännetään) kääntäjällä konekielelle suoritettavaksi.
lapsille, jotka ovat uusia koodaamisessa, suosittelen aloittamaan visual programming language (VPL) – ohjelmalla, jonka avulla lapset voivat kuvata algoritmejaan kuvitusten avulla ja jonka avulla koodaajat voivat kuvata prosessia heille järkevin termein.
Tässä muutamia suosittuja VPL: Itä:
- Scratch, ScratchJr
- Blockly
- Ardublock (block programming language for Arduino)
- ROBOLAB (programming language for LEGO Robotics)
- ROBOTC (graphic for VEX Robotics)
- LabVIEW (National Instruments)
vaikka on olemassa useita tapoja saada opiskelijat alkuun koodaus, suosittelen koko koulun osallistua tunnin koodin ja myös opettaa lapsille koodin yhteydessä STEM / STEAM design challenge.
Vaihe 4: Test it
testaus CP: ssä on kriittinen prosessi, jota käytetään ohjelman laadun määrittämiseen ja vikojen (ongelmien) etsimiseen. Opiskelijana tutustuin Visual Basic-ohjelmointikielen ActiveX-Ohjainten testaamiseen ja virheenkorjaukseen. Vaikka testaus on eri tasoilla ja määrittää, jos ohjelmat toimivat tai eivät — työskentely löytää vikoja ohjelmistokehittäjien korjata oli erittäin tehokas auttaa minua ymmärtämään laatua ohjelmien käytin päivittäin ja myös tärkeää päivittää niitä säännöllisesti.
opiskelijoiden vaatiminen esittämään työnsä julkisesti on erinomainen tekniikka, jolla sitoudutaan ja juurrutetaan heihin testausprosessin merkitys korkealaatuisen CS-työn keskustelemisessa ja esillepanossa. Jälleen, App Lab (vaiheessa 1) on hyvä oppitunti ja projekti auttaa lapsia oppimaan CP alusta testaukseen.
CP eri asteilla
tietokoneohjelmointia voidaan opettaa kaikilla asteilla. Tässä muutamia työkaluja, joita voit käyttää eri-ikäisten ja-tasoisten oppijoiden kanssa.
arvosanat 3-8: littleBits Code Kit. Koodipaketti on varustettu elektronisilla rakennuspalikoilla ja koodausohjeita sisältävällä sovelluksella, ja se on erinomainen tukirakenne, jolla opetetaan oppilaille koodauksen, valon, äänen ja liikkeen käsitteitä suunnitteluhaasteen tai keksinnön yhteydessä.
mitä pidän voimakkaimpana koodipaketissa on sovellus, koska se auttaa käyttäjiä juurtumaan koodauksen perusperiaatteisiin. Hyvä koodaaja, olipa kieli tai koodaus kokemus, täytyy ymmärtää perusasiat-kuten tulo/lähtö, silmukoita, toimintoja, muuttujia ja myös logiikkaa. Onnistuminen liittyy aina perusasioiden sisäisen hallinnan kehittämiseen. Kuten tohtori Stephen R. Covey, kirjailija 7 tottumukset erittäin tehokas ihmisiä, sanoi kerran, ” laita tärkeimmät asiat ensin.”
koodipaketti toimii myös yhdessä kaikkien kouluttajan tarvitsemien opetusresurssien kanssa, mukaan lukien tuntisuunnitelmat, opiskelijamenot ja mukautuminen seuraavan sukupolven tieteen standardeihin. LittleBits Lead Educator Cohort of 2017 testasi ja kehitti monia resursseja ja ylpeänä jäsenenä olin erittäin onnekas saadessani työskennellä ja oppia näin lahjakkaan kasvattajaryhmän kanssa!
asteet 6-8: robotiikka. Lasten saaminen ohjelmoinnin pariin on melko helppoa. Edellisessä tehtävässäni opetussuunnitelman asiantuntijana käytimme Lego Mindstorms-robottia introna. Nämä olivat askeleet otimme auttaa lapsia ymmärtämään keskeisiä käsitteitä, sekä ohjelmointi:
- rakentakaa heidän robottinsa. Käytännössä jokainen lapsi rakasti tätä osaa.
- Opettele perusasiat. Tutustumalla opetusohjelmiin he oppivat moottoreista, antureista, vaihteista ja muista komponenteista.
- Opettele ohjelmoimaan. Tiilellä oli kuusi sisäänrakennettua tehtävää, joiden avulla oppilaat pystyivät näkemään, miten robotti saadaan liikkumaan moottoreilla ja reagoimaan kosketukseen tai liikkeeseen sensoreilla. Kun he tottuivat sisäänrakennettuihin ohjelmiin, he alkoivat tehdä omia ohjelmiaan käyttäen ROBOLAB – ohjelmointilohkoja.
- Yhdistä CS: ään ja varteen. Huomasimme, että tämä auttoi suuresti valaista käsitteitä ja käytännön sekä kuvion tunnistamista ja algoritmista suunnittelua. Ja sitten tietysti cs-ja STEM-tunnit, jotka sisälsivät koodausta, voimaa ja liikettä sekä suunnittelua ja teknologiaa. Huomasimme myös, että VEX IQ Kit oli loistava vastaaviin tarkoituksiin ja käytimme sekä VEXIÄ että Legoa, perustuen erilaisiin kilpailutapahtumiin, joihin oppilaamme osallistuivat.
arvosanat 8-12: kehittynyt robotiikka. Lukiolaisille, jotka ovat jo harjoitelleet koodausta VPL: llä ja joko omaavat tai hallitsevat perustavat ohjelmointiperiaatteet, seuraava askel on saada heidät koodaamaan alan halutulla ohjelmointikielellä, kuten JavaScript, Python, Pearl tai C++. Onneksi Vex EDR-robotin ohjelmointi antaa lukiolaisille intron tähän arvokkaaseen oppimiskokemukseen. Vex EDR: ää ohjelmoivat opiskelijat oppivat käyttämään ROBOTC C-pohjaista ohjelmointikieltä ja näkevät kirjoittamansa koodin vaikutukset reaaliaikaisesti ratkaisemalla ongelmia teknisen suunnitteluprosessin avulla.
aloitin hiljattain VEX EDR-ohjelman opiskelun osallistuessani kansainvälisen tekniikan ja Insinööritieteiden Kasvattajain liiton (International Technology and Engineering Educator ’ s Association) Suunnittelukurssille. Siellä tapasin Tim Oltmanin-vuoden Martha Layne Collins high schoolin opettajan. Hän ja toinen opettaja Shane Ware on huomattava kokemus opettaa lapsille ohjelmoida robotteja eri VEX robotics kilpailutapahtumissa ja ovat voittaneet lukuisia palkintoja Kentucky.
kysyin Timiltä hänen ajatuksiaan siitä, miten opettajien tulisi edetä siirrettäessä lapsia VPL: n ohjelmoinnista C-pohjaiseen ohjelmaan, kuten VEXILLE, ja hän sanoi: ”rakenna ensin suhteita oppilaisiisi ja opi sitten heidän kanssaan. Anna heidän nähdä sinun yrittävän ja epäonnistuvan, ja he nauttivat kamppailusta prosessin läpi kanssasi. Lopulta he ylittävät sinut ja heistä tulee opettajia.”
Jorge Valenzuela on Kasvatusvalmentaja ja jatko-opetusassistentti Old Dominion Universityssä. Hän toimii myös Lifelong Learning Defined, Inc: n päävalmentajana., Kansallinen tiedekunta Buck Institute for Education, National teacher effectiveness coach International Technology and Engineering Educators Association (ITEEA) ja osa Lead Educator program for littleBits. Voit ottaa yhteyttä Jorge Twitterissä @JorgeDoesPBL jatkaa keskustelua.