Škola programiranja novi je edukativni program koji će okupiti mlade ljude željne informatičkog znanja i ulaska u svijet kompjuterskih programa i njihovog unapređenja. Posao programera danas je jedan od najtraženijih i dobro plaćenih poslova kojeg možete raditi iz bilo kojeg kutka planete Zemlje, za klijente koji se nalaze kilometrima daleko od vas.
Svoje znanje programiranja sa kanndidatima besplatno će podijeliti mladi Jajčanin Said Salihefendić, softverski inžinjer koji je ljubav prema informatici pokazao veoma rano i danas stasao u pravog znalca. Jedan od programa kojije Said usavršio je Point of Sale koji se koristi u kafićima i restoranima te omogićava lak i jednostavan pregled i uvid u dnevni promet.
Predavanja škole programiranja ići će online u mjesecu februaru/veljači ’21, a program i plan rada su slijedeći:
1. Uvod
– Generalna rasprava o vještini programiranja
– Primjena programiranja
– Motivacija za programiranje
– Uvod u komandnu konzolu
– Python 3 prezentacija
– Python 3 instalacija
– “Zdravo, raja” inicijalni program
– Zakljucak
2. Podaci i izrazi
– Tipovi podataka
– Varijable
– Matematički i logički operatori
– Matematički i logički izrazi
3. Kontrolne strukture
– Uvod u kontrolne strukture
– if kontrolna strukture
– if … else kontrolna struktura
– if…elif..elif…else kontrolna struktura
– Uvod u petlje
– for struktura petlje
– while struktura petlje
– Primjena: Razvoj osnovnog kalkulatora sa dodatnim funkcionalnostima
4. Funkcije
– Uvod u funkcije
– Definicija funkcija
– def komanda
– Parametri funkcija
– return komanda
– Primjena: Razvoj osnovne funkcionalnosti igre pogadjanje brojeva i kalkulacije statistike
5. Objekti i njihova primjena, Liste
– Uvod u objekte, Pythonov model okruženja
– Uvod u kolekcije podataka
– Uvod u liste
– Funkcionalnost liste
– Rad sa listama
– Primjena: Razvoj tabele za high score ko je imao najbolju statistiku
6. Tekstualni fajlovi
– Uvod u tekstualne fajlove
– Čitanje tekstualnih fajlova
– Ispis na tekstualni fajl
– Primjena: Zadržavanje high score u fajl sistem kompjutera
9. Rječnici i skupovi
– Uvod u skupove
– Rad sa skupovima
– Uvod u rječnike
– Rad sa rječnicima
– Primjena: Razvoj osnovne funkcionalnosti programa predlaganja recepata
11. Rekurzija
– Uvod u rekurzije
– Rekurzivno razmišljanje
– Primjena: Razvoj osnovne funkcionalnosti programa za familijarno stablo
10. Osnove objektno-orijentiranog programiranja
– Uvod u objektno-orijentirani način programiranja
– Ponavljanje objekata
– Klasa
– Varijabli članice
– Konstruktori
– Funkcije članice
– Specijalne funkcije u klasama Pythona
– Nasljeđivanje
– Preklapanje funkcija
– Preklapanje operatora
– Polimorfizam
– Primjena: Razvoj konzolne igre za šah
11. Primjer projekta
– Odabir razvoja:
– Web aplikacija u Flask tehnologiji sa SQLite3 bazom koja će biti program recepta i sastojaka
– Napomena: Potrebno je poznavati osnove HTML-a i CSS-a
– Desktop aplikacija tkinter/turtle video igra šahovske figure sa user logikom za praćenje ELO poene
– API projekat mašinskog učenja i analitike, istraživanje o cijenama kuća u Kaliforniji
12. Lični projekat
– Mogući projekti:
– Game of Life (tkinter, rad sa CLI) (For Fun programiranje)
– Procesiranje slika (Pillow biblioteka, rad sa CLI) (Data Engineering)
– Minesweeper igra (tkinter) (Video Game Development)
– FAQ chatbot web aplikacija (Software Engineering)
– Titanic katastrofa istraživanje (Data Science)
– Razvoj strukture podataka Balansirano Binarno stablo pretrage (algoritmi)