Popis predmeta

Opis predmeta

Skriptni jezici predstavljaju stil programiranja koji je različit od uobičajenih programskih jezika. Njihova je namjena komponiranje programa od gotovih aplikacija - komponenti, njihovim "lijepljenjem". Time se postiže viša razina programiranja i brži razvoj aplikacija. U okviru predmeta studenti se upoznaju s osobinama i područjima primjene skriptnih jezika. Detaljnije se obrađuje programiranje u okviru ljuske operacijskog sustava, korištenje regularnih izraza, te temeljni Unix alati. Studenti se upoznaju i s osnovama programskih jezika Perl i Python.

Ishodi učenja

  1. definirati skriptne jezike i navesti njihova svojstva
  2. odabrati programski jezik i alate prikladne za dani problem
  3. napisati i primijeniti jednostavnije bash skripte
  4. napisati i primijeniti jednostavnije Perl skripte
  5. napisati i primijeniti jednostavnije Python programe
  6. analizirati i prilagoditi jednostavnije bash, Perl i Python skripte

Oblici nastave

Predavanja

Predavanja će se održavati u trajanju od 2 sata tjedno.

Samostalni zadaci

Samostalni zadatci rješavat će se kao priprema i u okviru laboratorijskih vježbi.

Laboratorij

Laboratorijske vježbe će se održavati u tri ciklus a po 4 školska sata.

Način ocjenjivanja

Kontinuirana nastava Ispitni rok
Vrsta provjere Prag Udio u ocjeni Prag Udio u ocjeni
Laboratorijske vježbe 50 % 30 % 50 % 30 %
Međuispit: Pismeni 0 % 30 % 0 %
Završni ispit: Pismeni 30 % 40 %
Ispit: Pismeni 50 % 70 %

Tjedni plan nastave

  1. Uvod – osobine i područja primjene skriptnih jezika. Povezujući jezici. Interpretiranje naredbenog retka
  2. Programiranje u okviru ljuske operacijskog sustava. Preusmjeravanje ulaznih i izlaznih tokova.
  3. Standardni skriptni alati UNIX-a.
  4. Manipulacija tekstom podudaranjem uzoraka (regularni izrazi).
  5. Osnovna sintaksa i semantika jezika više razine. Varijable i jednostavni tipovi podataka. Izrazi i dodjeljivanja. Uvod u programski jezik Perl.
  6. Tip podatka, skup vrijednosti i skup operacija. Pridruživanje tipova podataka varijablama, argumentima funkcija, rezultatima i podatkovnim poljima. Liste, polja i asocijativna polja u Perlu.
  7. Uvjetne i iterativne upravljačke strukture. Funkcije i prijenos parametara.
  8. Međuispit
  9. Obrada teksta skriptnim jezicima. Regularni izrazi u Perlu.
  10. Uvod u programski jezik Python. Jednostavne ulazno/izlazne operacije uključujući rad s datotekama. Uvjetne i iterativne upravljačke strukture. Funkcije i prijenos parametara.
  11. Prenošenje argumenata naredbenog retka.
  12. Odloženo izračunavanje i beskonačni tokovi.
  13. Dinamička evaluacija koda ("eval").
  14. Sustavi modula. Moduli i prostori imena u Pythonu. Objektno orijentirano programiranje u Pythonu.
  15. Završni ispit

Studijski programi

Sveučilišni preddiplomski
Elektroničko i računalno inženjerstvo (modul)
Izborni predmeti (6. semestar)
Elektrotehnika i informacijska tehnologija (studij)
Izborni predmeti (6. semestar)
Programsko inženjerstvo i informacijski sustavi (modul)
Izborni predmeti (6. semestar)
Računarska znanost (modul)
Izborni predmeti (6. semestar)
Računarstvo (studij)
Izborni predmeti (6. semestar)
Telekomunikacije i informatika (modul)
Izborni predmeti (6. semestar)

Literatura

Zoran Kalafatić (2012.), Skriptni jezici - materijali za predavanja u elektroničkom obliku, FER-2, Zagreb, 2012.,
Zoran Kalafatić, Antonio Pošćić, Siniša Šegvić, Julijan Šribar (2016.), Python za znatiželjne, Element
Stephen G. Kochan, Patrick Wood (2016.), Shell Programming in Unix, Linux and OS X, Addison-Wesley Professional
Randal L. Schwartz, brian d foy, Tom Phoenix (2016.), Learning Perl, O'Reilly Media, Inc.

Predavanja

Laboratorijske vježbe

Za studente

Izvedba

ID 183475
  Ljetni semestar
5 ECTS
R0 Engleski jezik
R1 E-učenje
30 Predavanja
12 Laboratorijske vježbe

Ocjenjivanje

88 izvrstan
75 vrlo dobar
62 dobar
50 dovoljan

Sličan predmet

Ishodi učenja

  1. definirati skriptne jezike i navesti njihova svojstva
  2. odabrati programski jezik i alate prikladne za dani problem
  3. napisati i primijeniti jednostavnije bash skripte
  4. napisati i primijeniti jednostavnije Perl skripte
  5. napisati i primijeniti jednostavnije Python programe
  6. analizirati i prilagoditi jednostavnije bash, Perl i Python skripte

Oblici nastave

Predavanja

Predavanja će se održavati u trajanju od 2 sata tjedno.

Samostalni zadaci

Samostalni zadatci rješavat će se kao priprema i u okviru laboratorijskih vježbi.

Laboratorij

Laboratorijske vježbe će se održavati u tri ciklus a po 4 školska sata.

Način ocjenjivanja

Kontinuirana nastava Ispitni rok
Vrsta provjere Prag Udio u ocjeni Prag Udio u ocjeni
Laboratorijske vježbe 50 % 30 % 50 % 30 %
Međuispit: Pismeni 0 % 30 % 0 %
Završni ispit: Pismeni 30 % 40 %
Ispit: Pismeni 50 % 70 %

Tjedni plan nastave

  1. Uvod – osobine i područja primjene skriptnih jezika. Povezujući jezici. Interpretiranje naredbenog retka
  2. Programiranje u okviru ljuske operacijskog sustava. Preusmjeravanje ulaznih i izlaznih tokova.
  3. Standardni skriptni alati UNIX-a.
  4. Manipulacija tekstom podudaranjem uzoraka (regularni izrazi).
  5. Osnovna sintaksa i semantika jezika više razine. Varijable i jednostavni tipovi podataka. Izrazi i dodjeljivanja. Uvod u programski jezik Perl.
  6. Tip podatka, skup vrijednosti i skup operacija. Pridruživanje tipova podataka varijablama, argumentima funkcija, rezultatima i podatkovnim poljima. Liste, polja i asocijativna polja u Perlu.
  7. Uvjetne i iterativne upravljačke strukture. Funkcije i prijenos parametara.
  8. Međuispit
  9. Obrada teksta skriptnim jezicima. Regularni izrazi u Perlu.
  10. Uvod u programski jezik Python. Jednostavne ulazno/izlazne operacije uključujući rad s datotekama. Uvjetne i iterativne upravljačke strukture. Funkcije i prijenos parametara.
  11. Prenošenje argumenata naredbenog retka.
  12. Odloženo izračunavanje i beskonačni tokovi.
  13. Dinamička evaluacija koda ("eval").
  14. Sustavi modula. Moduli i prostori imena u Pythonu. Objektno orijentirano programiranje u Pythonu.
  15. Završni ispit

Studijski programi

Sveučilišni preddiplomski
Elektroničko i računalno inženjerstvo (modul)
Izborni predmeti (6. semestar)
Elektrotehnika i informacijska tehnologija (studij)
Izborni predmeti (6. semestar)
Programsko inženjerstvo i informacijski sustavi (modul)
Izborni predmeti (6. semestar)
Računarska znanost (modul)
Izborni predmeti (6. semestar)
Računarstvo (studij)
Izborni predmeti (6. semestar)
Telekomunikacije i informatika (modul)
Izborni predmeti (6. semestar)

Literatura

Zoran Kalafatić (2012.), Skriptni jezici - materijali za predavanja u elektroničkom obliku, FER-2, Zagreb, 2012.,
Zoran Kalafatić, Antonio Pošćić, Siniša Šegvić, Julijan Šribar (2016.), Python za znatiželjne, Element
Stephen G. Kochan, Patrick Wood (2016.), Shell Programming in Unix, Linux and OS X, Addison-Wesley Professional
Randal L. Schwartz, brian d foy, Tom Phoenix (2016.), Learning Perl, O'Reilly Media, Inc.

Predavanja

Laboratorijske vježbe

Za studente

Izvedba

ID 183475
  Ljetni semestar
5 ECTS
R0 Engleski jezik
R1 E-učenje
30 Predavanja
12 Laboratorijske vježbe

Ocjenjivanje

88 izvrstan
75 vrlo dobar
62 dobar
50 dovoljan

Sličan predmet