Opis predmeta
Predavanja obsegajo naslednja poglavja:
- Izrazi, osnovni podatkovni tipi, spremenljivke
- Pogojni stavki, zanka while
- Seznami, terke, zanka for
- Podprogrami
- Delo z datotekami
- Slovarji in množice
- Rekurzija
- Imenski prostori
- Osnove objektnega programiranja
- Izjeme
- Osnove uporabniških vmesnikov, delo z dogodki
- Izpeljani seznami, generatorji, iteratorji
- Dodatne teme
Na vajah študentje utrjujejo obravnavano snov na večjem številu programerskih nalog, ki sistematično predstavljajo snov predavanj. Naloge rešujejo na računalnikih ob pomoči učitelja.
Predmet učimo na programih
Cilji in kompetence
Cilj predmeta je spoznati osnove algoritmičnega razmišljanja in kodiranja v primerno izbranem programskem jeziku (trenutno Python).
Metode poučevanja in učenja
Klasična predavanja s sprotno predstavitvijo velikega števila zgledov na računalniku, na vajah reševanje velikega števila manjših programskih nalog, ki so tipična za posamezne dele snovi. Vaje se izvajajo na računalnikih ob pomoči učitelja in demonstratorjev, rešitve se oddajajo prek sistema Moodle.
Predvideni študijski rezultati
Znanje in razumevanje:
Poznavanje osnovnih programskih konstruktov (spremenljivke, stavki, zanke, podprogrami, …) in njihova učinkovita uporaba za reševanje manjših programerskih problemov.
Analiza problema in tvorba ustrezne algoritmične rešitve; uporaba ustreznih programerskih prijemov; razlikovanje med slabšimi in boljšimi rešitvami.
Uporaba:
Snov predmeta predstavlja osnovno znanje programiranja in je temelj, na katerem gradi glavnina nadaljevalnih predmetov visokošolskega študija.
Refleksija:
Spoznavanje osnov algoritmičnega razmišljanja in kodiranja računalniškega programa.
Prenosljive spretnosti – niso vezane le na en
predmet:
Poznavanje in učinkovita uporaba osnovnih konceptov programiranja.
Temeljni viri in literatura
- Za začetnike:
M. L. Hetland: Beginning Python: from novice to professional, 2nd Ed., Apres, 2008. - Za študente, ki že znajo programirati:
J. Demšar: Python za programerje. 2. izd, Fakulteta za računalništvo in informatiko, 2012. - Spletne strani in tečaji (Coursera, Udacity, Edx…) za učenje Pythona; izbor je vsakoletno osvežen na spletni strani predmeta.
- Zapiski s predavanj, gradivo za vaje in stari izpiti na domači strani predmeta.
- For beginners:
M. L. Hetland: Beginning Python: from novice to professional, 2nd Ed., Apres, 2008. - For students with previous experience in programming:
J. Demšar: Python za programerje. 2. izd. Fakulteta za računalništvo in informatiko, 2012. - Web pages with tutorials and courses (Coursera, Udacity, Edx…) for learning Python; an updated selection is published annually on the course homepage.
Lecture notes, exercises and old exams published on the course home page.