Automatic programming

Semestar
4.
ECTS credits
3 ECTS
Head professor

Goal

Kroz radionicu predavanje, vježbe i rješavanje zadataka upoznati studente s objektno orijentiranim i generičkim programiranjem

Additional info

Osnovni koncepti objektno orijentiranog programiranja
Pojam objektno orijentiranog programiranja. Upravljanje memorijom. Razred (klasa). Objekti kao instancije klase. Atributi klase. Podatkovni članovi klase. Funkcijski članovi klase (metode). Enkapsulacija (učahurivanje) objekata. Apstrakcija (apstraktne klase i sučelja). Nasljeđivanje. Dinamički Polimorfizam (višeobličje), refleksija, statičko generiranje koda. Suvremeni interpreteri i kompajleri za objektno orijentirano programiranje.
Objektno orijentirano programiranje i generičke tehnike programiranja u primjeni
Izgradnja generatora. Moduli. Atributi. Struktura (moduli, naredbe, izrazi, definiranje i obrada objekata). Podatak (brojčani tip, znakovni tip, lista, rječnik, n-torka, datoteka). Operatori. Varijable (imena). Numerički izrazi. Znakovni nizovi (immutable sequences): operacije, navodnici, escape sekvence, sirovi znakovni nizovi, indeksiranje i izrezivanje. Konverzije. Izmjena znakovnih nizova. Metode znakovnih nizova. Formatiranje znakovnog niza. Liste: operacije nad listama, konkatenacija, indeksiranje i izrezivanje. Matrice. Izmjena liste. Metode liste. Sortiranje liste. Brisanje liste. Stvaranje liste. Rječnici. Operacije nad rječnicima. Metode rječnika. Izmjena rječnika. Rječnik kao fleksibilna lista. n-Torka: operacije nad n-torkom, neizmjenjivost n-torki. Skupovi: operacije nad skupovima. Datoteke: operacije s datotekama. Pohranjivanje objekata u datoteci. Usporedbe. Instrukcije (vaganje, iteracije). Funkcije (ugrađene funkcije, definiranje funkcije kao objekta, pozivanje funkcija, generiranje funkcija).. Globalnost. Prenošenje argumenata funkciji. Dodjela imena argumentima funkcija. Proizvoljna lista argumenata. Anonimne funkcije. Moduli i prostori imena. Korisnički objekti: razredi (klase) i nasljeđivanje. Stvaranje razreda. Stvaranje primjerka. MetaMetode korisničkih objekata. Nasljeđivanje kod korisničkih objekata. Objektno programiranje u funkciji strojnog učenja.
Metaprogramiranje predložaka
Metaprogramiranje vrijednosti. Metaprogramiranje tipova. Predložni izrazi za implementaciju vektora. Predložni izrazi za implementaciju matrica. Predložni izrazi metoda i klasa.
Projekti primjene generativnog razvoja poslovne aplikacije.
Stvaranje generativnog predloženog izraza koji pokriva jedan proces poslovne aplikacije (Primjer: prebacivanje evidencije poslovnih partnera, bez obzira na polja, iz raznih podatkovnih repozitorija (CSV, XML, JSON) u relacijsku bazu podataka)

Predavanja: 15
Seminari: 0
Vježbe: 15

1. Analizirati problem za koji je potrebno razviti programsko rješenje upotrebom objektno orijentiranog programiranja i generičkih programskih tehnika
2. Prosuditi kojim se konceptima i disciplinama objektno orijentiranog programiranja treba služiti u rješavanju problema
3. Razviti jednostavno do srednje složeno programsko rješenje upotrebom objektno orijentiranog programiranja i generičkih programskih tehnika

magnifiercrossmenuplus-circlecircle-minus linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram Skip to content