Cilj predmeta
Studente osposobiti za:
- rad s programskim jezicima i opremom za provedbu nastave u osnovnim i srednjim školama iz domene računalnog razmišljanja i programiranja
- kritičko vrednovanje i odabir programskih alata i opreme za provedbu nastave programiranja u školama
- prepoznavanje odgojno-obrazovnih ishoda iz kurikuluma informatike pogodnih realizaciju pomoću odgovarajućeg softvera i hardvera
Očekivani ishodi učenja
- odabrati odgovarajuće programsko okruženje za ishode učenja iz domene računalnog razmišljanja i programiranja
- kritički vrednovati i usporediti različita programska okruženja za blokovsko programiranje
- organizirati nastavu programiranja koja uključuje rad s fizičkim objektima
- objasniti vezu između dijagrama toka, programa napisanog u blokovskom jeziku, te tekstualnom programskom jeziku
- objasniti faze generiranja koda za mikrokontroler
- objasniti vrste i način rada senzora kao ulaznih jedinica
- pripremiti i dokumentirati zadatke prikladne za nastavu programiranja u školama
- osmisliti jednostavan zadatak koji uključuje komunikaciju više jednostavnih računalnih sustava
- primijeniti jednostavne elemente paradigme objektnog programiranja na vizualne jezike
- izraditi programsku biblioteku s proširenjima za podršku senzorima u blokovskom programskom jeziku
Sadržaj predmeta
- Programski jezici i zadaci za učenje programiranja u školama. Programski jezici Logo i Basic i razlozi njihova korištenja u nastavi programiranja u mlađoj dobi
- Vizualni (blokovski) programski jezici. Veza između dijagrama toka i blokovskog programa. Varijable, procedure
- Programiranje fizičkih objekata. Senzori, aktivatori, beskonačna petlja.
- Paradigma objektnog programiranja u vizualnim jezicima. Povezivanje koncepata iz objektnog programiranja s vizualnim jezicima i mogućnosti njihova korištenja u ranoj fazi učenja programiranja
- Komunikacija među jednostavnim sustavima. Korištenje različitih oblika komunikacije (putem žice i bežično) za uspostavu sustava s više jednostavnih uređaja
- Korištenje naprednih programskih biblioteka.
- Tekstualni programski jezici. Prijelaz s vizualnih na tekstualne programske jezike (Python, Arduino C/C++) . Podržavanje složenijih senzora
- Razvoj vlastitih biblioteka. Podrška za nove senzore i aktivatore, prilagodba postojećih biblioteka za potrebe nastave