Informaatika mitteinformaatikutele Click to edit Master title style

  • Slides: 16
Download presentation
Informaatika mitteinformaatikutele Click to edit Master title style Informaatikainstituut

Informaatika mitteinformaatikutele Click to edit Master title style Informaatikainstituut

Informaatika õpetamise põhivaldkonnad Infotöö Arendustöö PJS arhitektuur • PJS – programmjuhtimisega süsteemid: arvutid, arvutivõrgud,

Informaatika õpetamise põhivaldkonnad Infotöö Arendustöö PJS arhitektuur • PJS – programmjuhtimisega süsteemid: arvutid, arvutivõrgud, robotid, seadmed, nutitelefonid, … Arhitektuur: riist- ja süsteemitarkvara, töökorraldus, protokollid, failisüsteemid, info (andmete ) esitusviisid, … • Infotöö. Informatsiooni kasutamine, loomine, säilitamine ja edastamine programmjuhtimisega süsteemide (PJS) abil: dokumentide koostamine, arvutused ja andmeanalüüs, arvutigraafika, informatsiooni hankimine ja korrastamine, kommunikatsioon, ≈ Digitaalne kirjaoskus AO – ECDL Info- ja kommunikatsioonitehnoloogia – infotöövahendite kasutamine tööstuses, äris, hariduses, teeninduses, meelelahutuses jm • Arendustöö. Rakenduste, infosüsteemide ja tarkvara loomine ning arendamine: modelleerimine, analüüs, disain, algoritmimine, kodeerimine, . . . Computer Science (CS) viimasel ajal ka Computing. Keskseks mõisteks õpetamisel on Computational Thinking Rakenduste loomise ja programmeerimise alused 2

Suurbritannia (koolid) - Computing alates Sept 2014 põhiaine Rakenduste loomise ja programmeerimise alused 3

Suurbritannia (koolid) - Computing alates Sept 2014 põhiaine Rakenduste loomise ja programmeerimise alused 3

E-õpik Õppematerjalide struktuur modelleerimine dokumentide ja esitluste koostamine, Internet UML Rakendused kasutamisjuhend algoritmimine Google

E-õpik Õppematerjalide struktuur modelleerimine dokumentide ja esitluste koostamine, Internet UML Rakendused kasutamisjuhend algoritmimine Google Drive kodusait Scratch Python objektid Rakendused Excelis Praktikumid VBA, VBAhtm töölehed töövihikud muutujad näited andmed ja avaldised slaidid lindistused loendid visualis. algoritmid loenditega testid skriptid ja käsud joonistamine juhtimine arvuti Rakenduste loomise ja programmeerimise alused

Taust. USA Põhjalikud uuringud, uued standardid, kontseptsioonid ja õppekavad – CSTA, ACM, NSF Rahvuslik

Taust. USA Põhjalikud uuringud, uued standardid, kontseptsioonid ja õppekavad – CSTA, ACM, NSF Rahvuslik standard CSTA K-12 Computer Science Standards (2011). Keskne mõiste on Computational Thinking Õppekava Exploring Computer Science Curriculum 5. 0 (2013) • Human Computer Interaction (arvutite kasutamine) • Problem Solving (algoritmimine) • Web Design (veebirakendused) • Introduction to Programming (Scratch) • Robotics (Lego Mindstorms) • Computing Applications (rakenduste loomine) Computer Science Principles – Advanced Placement (uus kursus) Rakenduste loomise ja programmeerimise alused 5

Computational Thinking Seymour Papert (MIT, Logo, Lego Mind. Storm) – 1996 Jeannette Wing (Carnegie

Computational Thinking Seymour Papert (MIT, Logo, Lego Mind. Storm) – 1996 Jeannette Wing (Carnegie Mellon Univ. , NSF) – 2006 CSTA, Google, … Probleemide formuleerimine ja esitamine viisil, mis võimaldab kasutada nende lahendamiseks programmjuhtimisega süsteeme. • modelleerimine ja abstraktsioon: andmed, tegevused, süsteemide struktuur ja käitumine jm • arvutimudelid ja simulatsioonid • süsteemianalüüs ja disain • algoritmimine ja programmeerimine • objektorienteeritud lähenemisviis: objektid, klassid, omadused, meetodid, sündmused Rakenduste loomise ja programmeerimise alused 6

Taust. Euroopa • Informatics Europe & ACM Europe report Digital literacy and Informatics (aprill

Taust. Euroopa • Informatics Europe & ACM Europe report Digital literacy and Informatics (aprill 2013) • Shut down or restart? UK Royal Society uurimuse aruanne (2012) • Computer Science: A Curriculum for Schools UK koolide arvutiõpetuse kontseptsioon Computing At School dokument (2012) • Computer science part of English Baccalaureate (2013) • Computing in the national curriculum UK(2014) • Venemaa. Informaatika õppekomplekt Н. В. Макарова. Peterburg Rakenduste loomise ja programmeerimise alused 7

Taust. • Eesti Proge. Tiiger: kursused, materjalid jm algkool: programmeerimine (Kodu, Logo, Scratch) põhikool:

Taust. • Eesti Proge. Tiiger: kursused, materjalid jm algkool: programmeerimine (Kodu, Logo, Scratch) põhikool: veebirakendused, robotid, Scratch gümnaasium: RLPA, robootika, veebirakendused • IT Akadeemia ja TTÜ Tehnoloogiakooli kursused õpilastele (eesti ja vene keeles): algajatele –rakenduste loomine ja programmeerimine: Scratch|Byob + Python | VBA edasijõudnutele - programmeerimise põhikursus Pythoni baasil • Ülikoolide kursused õpilastele: TÜ Teaduskool, … • Õpetajate koolitus: TTÜ Inseneripedagoogika Keskuse kursused robootika, majandusmatemaatika ja RLPA; TÜ – Scratch, Python Rakenduste loomise ja programmeerimise alused 8

Programmeerimise õpetamise keeled Educational Programming Languages • lihtsa süntaksiga ja mugava kasutajaliidesega • suur

Programmeerimise õpetamise keeled Educational Programming Languages • lihtsa süntaksiga ja mugava kasutajaliidesega • suur tähelepanu atraktiivsusele ja multimeedia (graafika, heli, videod) kasutamisele • võimaldavad lihtsalt ja kiirelt luua mänge, animatsioone, koomikseid, taieseid, esitlusi jmt • enamik on visuaalsed programmeerimiskeeled Logo, Alice, Scratch, SNAP, Blockly (Google, Code. org), Kodu, MS Small Basic, Phrogram, Agent. Sheets. . .

Uued õpetamise tehnoloogiad • • • Massive open online course – MOOC : Coursera,

Uued õpetamise tehnoloogiad • • • Massive open online course – MOOC : Coursera, Udacity, ed. X Khan Academy - computer science Codecademy - python Peer to Peer University Rakenduste loomise ja programmeerimise alused 10

Scratch • uue põlvkonna graafiline programmeerimissüsteem • loodud Massachusettsi Tehnoloogiainstituudis (2008) • http: //scratch.

Scratch • uue põlvkonna graafiline programmeerimissüsteem • loodud Massachusettsi Tehnoloogiainstituudis (2008) • http: //scratch. mit. edu, Sissejuhatus Scratchi, Scratch wiki, Kasutamisjuhend, , Scratch Day • “sugulased”: BYOB/SNAP! (Berkeley), Panther, Blockly (Google) • kasutusel paljudes koolides: USA, UK, Portugal, Hispaania, Holland, Iirimaa, India, … • kasutatakse sissejuhatavates programmeerimiskursustes mitmes ülikoolis: Harvard, Berkeley, TTÜ, … • sponsorid: Intel, Microsoft, Google, NSF, … • alates mai 2013 versioon Scratch 2. 0, eelmine versioon 1. 4 • rakenduste loomine ja täitmine brauseris • pilvetehnoloogia kasutamine • kasutaja plokkide loomine, parameetrite ja argumentide kasutamine • heli redigeerimine • kloonimine Rakenduste loomise ja programmeerimise alused 11

Väike on ilus! Python • Python on üldotstarbeline objektorienteeritud, väike, võimas, lihtne, vabavaraline programmeerimiskeel

Väike on ilus! Python • Python on üldotstarbeline objektorienteeritud, väike, võimas, lihtne, vabavaraline programmeerimiskeel • Loodud 1991. Autor Guido van Rossum (Holland) • Kiiresti levib viimased 5 -6 aastat • On mitmeid realisatsioone. Peamine ja enim kasutatav on Cpython. Realiseeritud C-ga ja töötab enamikes OS-des: Windows, Linux, Unix, Mac Os jm • Kaks haru: Python 2. x. . ja Python 3. x… • Pythoni kodusait • Sissejuhatus Pythonisse • Teised realisatsioonid: Iron. Python, realiseeritud keeles C# Microsoftis, Jython, realiseeritud Javas, Py. Py - realiseeritud Pythonis, VPython - visuaalne Python Rakenduste loomise ja programmeerimise alused 12

VBA - Visual Basic for Application Dokumendipõhiste rakenduste loomine rakendusprogrammidega: MS Office, Corel Draw,

VBA - Visual Basic for Application Dokumendipõhiste rakenduste loomine rakendusprogrammidega: MS Office, Corel Draw, Auto. CAD, … (üle 100): Eriti efektiivne tabeliprogrammides (Excel) ja graafikasüsteemides (Auto. CAD) Analoogsed arendusvahendid on kasutusel ka teistes kontoripakettides: Open Office, IBM Lotus Symphony … Põhineb üldotstarbelisel programmeerimissüsteemil Visual Basic. Keelevahendid on samad, iseärasused on baasrakenduste objektide kasutamises ja kasutajaliidese loomises Sissejuhatus VBAsse. Näited: Jalka, Penaltid, Veski, Autohüppe, Mootor, Labürint, Tellimine Rakenduste loomise ja programmeerimise alused 13

Algoritmimine Algoritm on täpne ja ühemõtteline eeskiri antud liiki ülesannete lahendamiseks. Algoritmide esitamine: plokkskeemid,

Algoritmimine Algoritm on täpne ja ühemõtteline eeskiri antud liiki ülesannete lahendamiseks. Algoritmide esitamine: plokkskeemid, UMLi tegevus-diagrammid, pseudokoodi jm pseudokood protseduur arva y = juhuarv(1, 100) k = 0 kordus loe x k = k + 1 kui x = y siis kuva k stopp kui x < y siis kuva “Vähe!" muidu kuva “Palju!" Rakenduste loomise ja programmeerimise alused 14

Arvu arvamine. Scratch, Visual Basic, Python Scratch Sub Arva() ' protseduur dim k, x,

Arvu arvamine. Scratch, Visual Basic, Python Scratch Sub Arva() ' protseduur dim k, x, y Msg. Box " Arva arv 1. . . 100" Randomize y = Int(Rnd() * 100 + 1) k = 0 Do ' lõputu korduse algus x = Int(Input. Box(" Anna arv")) k = k + 1 If x = y Then Msg. Box "OK! Katseid" & k Exit Sub ‘ katkesta End If If x < y Then Msg. Box "Vähe!" Else Msg. Box "Palju!" End If Loop End Sub import random def arva() : # function print (" Arva arv 1. . . 100") y = random. randint (1, 100) k = 0 while True: # lõputu kordus x = int(input ("Anna arv! ")) k = k + 1 if x == y: print ("OK! Katseid" , k) break # korduse katkestus if x < y : print("Vähe!") else: print ("Palju!") arva() Rakenduste loomise ja programmeerimise alused 15

Kooli kursuse struktuur ja sisu. Ainekava Java. Script 20 -35 t 15 -0 t

Kooli kursuse struktuur ja sisu. Ainekava Java. Script 20 -35 t 15 -0 t Rakenduste loomise etapid ja põhitegevused • ülesande püstitus: eesmärgid, funktsioonid, nõuded, … • analüüs: põhiobjektid ja –andmed, meetodid, valemid, kontseptuaalsed mudelid, realiseerimise vahendid, … • disain: andmete ja tegevuste mudelid, algoritmid, programmi struktuur, kasutajaliidese kavandamine • programmeerimine: kasutajaliidese loomine, programmide koostamine, silumine, testimine, dokumenteerimine jm Programmeerimise osa jaguneb põhi- ja lisamooduliks. Valib kool, arvestades õppesuundi: humanitaar, majandus, reaal jm Rakenduste loomise ja programmeerimise alused 16