Preskoči na glavno vsebino

Programiranje 2

2023/2024
Program:
Interdisciplinarni univerzitetni študijski program 1. stopnje Računalništvo in matematika
Letnik:
1 letnik
Semester:
drugi
Vrsta:
obvezni
ECTS:
6
Jezik:
slovenski
Nosilec predmeta:

Boštjan Slivnik

Ure na teden – 2. semester:
Predavanja
3
Seminar
0
Vaje
0
Laboratorij
2
Vsebina

Uvod v programski jezik C.
Osnovni podatkovni tipi in osnovne kontrolne strukture.
Razvoj programov in razhroščevanje.
Kazalci in tabele (1. del).
Kazalci in tabele (2. del).
Funkcije in prenos argumentov.
Dinamično dodeljevanje pomnilnika.
Nizi.
Vhodno-izhodne operacije.
Strukture.
Enostavni algoritmi urejanja.
Rekurzija in algoritmi sestopanja (1. del).
Rekurzija in algoritmi sestopanja (2. del).
Predprocesor.

Temeljni literatura in viri

B. W. Kernighan, D. Ritchie: Programski jezik C, Fakulteta za računalništvo in informatiko, 1994.
T. Dobravec: abC, Fakulteta za računalništvo in informatiko, 2010.
A. Kavčič, M. Privošnik, C. Bohak, M. Marolt, S. Divjak: Programiranje in algoritmi skozi primere, Založba FE in FRI, 2010

Cilji in kompetence

Cilj predmeta je razširiti znanje programiranja skozi študij bazičnih in naprednejših tehnik programiranja.
Splošne kompetence:
Sposobnost kritičnega, analitičnega in sintetičnega razmišljanja
Sposobnost razumevanja in reševanja strokovnih izzivov v računalništvu in informatiki
Sposobnost uporabe pridobljenega znanja pri samostojnem reševanju tehničnih in znanstvenih problemov v računalništvu in informatiki, sposobnost razširjanja pridobljenega znanja
Predmetno-specifične kompetence:
Osnovne veščine v računalništvu in informatiki – osnovne teoretične veščine, praktično znanje, bistvene veščine za področje računalništva in informatiki
Osnovne veščine v računalništvu in informatiki, ki omogočajo nadaljevanje študija na drugi stopnji

Predvideni študijski rezultati

Znanje in razumevanje:
postopka priprave in izvajanja programa,
osnovnih programskih konstruktov in podatkovnih struktur,
konceptov objektno usmerjenega programiranja,
osnovnih algoritmov za reševanje tipičnih programerskih problemov,
dogodkovno vodenega programiranja in osnovnih komponent uporabniškega vmesnika.
Uporaba:
Uporaba naučenih konceptov pri samostojnem razvoju enostavnejših računalniških programov.
Refleksija:
Spoznavanje in razumevanje vloge programerja pri reševanju problemov različnih uporabnikov.
Prenosljive spretnosti - niso vezane le na en
predmet:
Spretnost pri uporabi domače in tuje literature ter uporabniške dokumentacije. Pridobivanje sposobnosti za samostojno reševanje problemov.

Metode poučevanja in učenja

Predavanja, domače naloge, seminarski način dela pri vajah. Poseben poudarek je na sprotnem študiju in domačih nalogah.

Načini ocenjevanja

Sprotno preverjanje ( 2 kolokvija)
Končno preverjanje (pisni izpit ali oba pozitivna kolokvija)
(ocene: 5 (negativno), 6-10 (pozitivno), ob upoštevanju Statuta UL)

Reference nosilca

ROŽANC, Igor, SLIVNIK, Boštjan. Using reverse engineering to construct the platform independent model of a web application for student information systems. Computer science and information systems, ISSN 1820-0214. [Print ed.], 2013, vol. 10, no. 4, str. 1557-1583, ilustr. , doi: . [COBISS-SI-ID 10226516]
CANKAR, Matija, ARTAČ, Matej, ŠTERK, Marjan, LOTRIČ, Uroš, SLIVNIK, Boštjan. Co-allocation with collective requests in grid systems. Journal for universal computer science, ISSN 0948-6968, 2013, vol. 19, no. 3, str. 282-300, ilustr. [COBISS-SI-ID 9797972]
SLIVNIK, Boštjan. LL conflict resolution using the embedded left LR parser. Computer science and information systems, ISSN 1820-0214. [Print ed.], Sep. 2012, vol. 9, no. 3, str. 1105-1124, ilustr. [COBISS-SI-ID 9583700]
SLIVNIK, Boštjan, VILFAN, Boštjan. Producing the left parse during bottom-up parsing. Information processing letters, ISSN 0020-0190. [Print ed.], Dec. 2005, vol. 96, no. 6, str. [220]-224. [COBISS-SI-ID 5075284]
POTOČNIK, Matic, ČIBEJ, Uroš, SLIVNIK, Boštjan. Linter - a tool for finding bugs and potential problems in Scala code. V: Proceedings of the 29th Annual ACM Symposium on Applied Computing, Gyeongju, Korea, March 24-28, 2014, Proceedings of the 29th Annual ACM Symposium on Applied Computing, Gyeongju, Korea, March 24-28, 2014. [S. l.]: Association for Computing Machinery, cop. 2014, str. 1615-1616, graf. prikazi. [COBISS-SI-ID 10520660]
SLIVNIK, Boštjan. LLLR parsing. V: Proceedings of the 28th annual ACM Symposium on Applied Computing 2013, Coimbra, Portugal, March 18-22. [S. l.]: Association for Computing Machinery, 2013, str. 1698-1699. [COBISS-SI-ID 9735508]