Cilji in kompetence
Cilj predmeta je, da bodo študentje razumeli osnovne koncepte v programiranju v programskih jezikih C++ in Java in jih znali uporabiti v praksi.
Vsebina
• Uvod: algoritem, strukturirano in objektno programiranje.
• Leksikalni elementi v programskih jezikih C++ in Java, primerjava strukture programa v C++ in Javi.
• Tipi in izrazi: osnovni podatkovni tipi, izrazi in operatorji.
• Krmilne strukture: stavek za izbiro, stavek za ponavljanje, stavek z oznako, sestavljeni stavek, sintaksa krmilnih struktur v C++ in Javi.
• Funkcije: definicija funkcije, klic funkcije, deklaracija funkcije, prenos parametrov po vrednosti, prenos parametrov po referenci, prekrivanje funkcij, funkcije v C++ in Javi.
• Polja: eno- in večdimenzionalna polja, dinamična polja v C++ in Javi, polja in funkcije, statična polja v C++.
• Kazalci v C++: kazalci, reference, kazalci in polja, kazalci in strukture, predstavitev podatkov v pomnilniku, upravljanje s pomnilnikom v času izvajanja.
• Razredi in objekti, , konstruktorji in destruktorji, privatni in javni člani razreda. Objektno programiranje v C++ in Javi.
• Vhodni in izhodni podatkovni tokovi v C++ in Javi.
• Izjeme.
• Rekurzija: rekurzivne funkcije, rekurzivne podat. strukture, implementacija rekurzije v C++ in Javi.
• Reševanje nalog in razvoj programov: analiza problema, načrtovanje, izvedba, testiranje in razhroščevanje.
Metode poučevanja in učenja
• Predavanja: pri predavanjih študentje spoznajo teoretične vsebine predmeta. Predavanja se izvajajo kot klasična predavanja v frontalni obliki z diskusijo ob primerih uporabe konceptov programiranja.
• Seminarske vaje: pri seminarskih vajah se študentje seznanijo s potekom računalniških vaj.
• Računalniške vaje: pri računalniških vajah študentje uporabljajo usvojeno znanje programiranja na konkretnih programskih problemih. Študentje tudi izpopolnjujejo prenosljive spretnosti uporabe integriranega razvojnega orodje.
• Domače naloge: pri domačih nalogah študentje utrjujejo teoretično znanje in preverjajo svoje razumevanje programskih konceptov.
Predvideni študijski rezultati - znanje in razumevanje
Po zaključku tega predmeta bo študent sposoben
• opisati in uporabiti sintakso programskega jezika C++ in Java,
• uporabiti osnovno znanje objektno usmerjenega programiranja,
• analizirati preprost problem, načrtovati algoritem, kodirati in testirati računalniški program.
Predvideni študijski rezultati - Prenosljive/ključne spretnosti in drugi atributi
• Spretnosti komuniciranja: ustni zagovor računalniškega dela.
• Uporaba informacijske tehnologije: uporaba okolij za programiranje.
• Reševanje problemov: analiza problema, načrtovanje algoritma, implementacija programa in testiranje programa.
Temeljni literatura in viri
• F. Glassborow: C++ od začetka, Založba Pasadena, 2007.
• S. B. Lippman, J,Lajoie, B. E. Moo: C++ Primer, Addison-Wesley, Fifth Edition, 2013.
• David J. Eck: Introduction to Programming Using Java, Sixth Edition, Version 6.0, June 2011.
• M. Loy, P. Niemeyer, D. Leuck: Learning Java, An Introduction to Real-World Programming with Java, Fifth Edition, O'Reilly, 2020.
Pogoji za vključitev v delo oz. za opravljanje študijskih obveznosti
Priporočeno znanje za vključitev v delo: osnovno znanje za delo z računalnikom.Pogoji za opravljanje študijskih obveznosti: za pristop k izpitu mora študent izpolnjevati 80 % prisotnost na laboratorijskih vajah in pozitivno oceno laboratorijskih vaj.
Podrobnosti o izvedbi in ocenjevanju Pisni izpit se lahko nadomesti s sprotnim preverjanjem in ocenjevanjem znanja.