2. Svaki programer piše programski kod u nekom
programskom jeziku. Različiti programski jezici
podržavaju različite stilove programiranja
(programska paradigma). Različiti programski
jezici zahtjevaju različite nivoe znanja, umijeća i
detalja koje programer treba posjedovati.
3. Jedini programski jezik koji računar može direktno
izvršavati je mašinski jezik (mašinski kod ili binarni
kod).
0101010101
4. Do danas napravljeno je hiljade programskih jezika, dok je samo nekoliko
od njih postalo poznato i dostupno širokom krugu korisnika. Neki su
više usmjereni za rješavanje određenog zadatka, dok su sveobuhvatniji
programski jezici (kao C programski jezik) mnogo poznatiji i češće u
primjeni.
5. Kompajliranje je složen proces a vrši se iz više razloga. Jedan i najvažniji,
jeste „prevođenje“ koda određenog programskog jezika u binarni kod,
koji je razumljiv računaru (računari „razumiju“ samo binarni kod).
Također kao razlog možemo navesti i krajnji produkt – novi fajl koji je
moguće pokrenuti, laički rečeno, sa „dva klika“ (executable file).
6. Pri izradi svakog programa potrebno je proći kroz 4 osnovne faze (i jedne
dodatne ili dopunske) ili koraka:
Analiza problema
Kreiranje algoritma (crtanje dijagrama toka)
Pisanje programskog koda
Unos programskog koda u računar i pokretanje programa
Rješavanje eventualnih bugova i updateanje istog u budućnosti
7. U matematici i računarskoj nauci algoritam je određeni skup
definisanih naredbi za obavljanje nekog zadatka. Algoritmi se
koriste u računarskim programima kao način rješavanja nekog
zadatka. Algoritam također može da znači grafički prikaz toka
obrade ili skup instrukcija računarskog programa (tad se
preciznije naziva dijagram toka). On predstavlja vodilju za
programera koji pomoću algoritama predstavlja viziju
programa koji želi napisati u programskom jeziku.
9. Python je prevođeni programski jezik kojeg je stvorio Guido van
Rossum 1990 godine. Objekat orijentisano, strukturno i aspekt
orijentisano programiranje su stilovi dozvoljeni korištenjem Pythona. Ne
treba napominjati da ova fleksiblinost čini Python programski jezik sve
popularnijim. Python se najviše koristi na Linux-u, no postoje i verzije za
druge operativne sisteme.
10. Objektno orijentirano programiranje ili kraće OOP je jedan od mogućih
pristupa programiranju računara. Za razliku od ostalih pristupa, u
kojima je težište na akcijama koje se vrše na podatkovnim strukturama,
ovdje je težište na projektiranju aplikacije kao skupa objekata koji
izmjenjuju poruke.
11. Python je vrlo moćan programski jezik. Koriste ga mnoge firme i
pojedinci, prvenstveno radi toga što je multifunkcionalan te može izvesti
i najzahtjevnije zadatke. Python omogućava kako pravljenje
jednostavnijih programa, tako i programa sa GUI-em (Graphic User
Interface), pravljenje igrica, integraciju u web stranice i td. Nažalost,
Python je vrlo poznat kao „hackerski programski jezik“, iz razloga što je
vrlo lako sa istim napraviti hackerske alate, kao što su SQLinjector, DDoS
alatke i drugo.
12. Kodirati u Pythonu možete svugdje, izravno u Python terminalu (shell)
ili u nekom običnom tekst editoru
13. Za jednostavnije programe, koji nemaju takvu strukturu da bi mogli
prouzrokovati veće greške pri kodiranju kodira se direktno u terminalu,
dok za zahtjevnije se koriste neki IDE (Integrated development
environment ili „radno okruženje programera“) programi. IDE
programi omogućavaju olakšice pri kodiranju, za Python samo neki od
njih su:
Eclipse + PyDev
Komodo
NetBeans
PyScripter i dr.
14. Mnogi Python označavaju kao dobar programski jezik za početnike, zbog
toga što je vrlo jednostavan za korištenje. Ne koristi pomalo čudne i
zbunjujuće (za početnika) metode „uvlačenja“ kao Java, nego to radi
sasvim jednostavno. Python ima i svojih mana, on kao i Java, ne priznaje
uvlačenje tipkom „TAB“, pa zbog toga, mnogi početnici imaju errore koje
ne znaju riješiti, a rješenje je jednostavno. Komentari ili podsjetnici se
mogu ostaviti u popularnim #hashkomentarima, koristeći „hash“(#) prije
pisanja.
16. Python podržava sve matematičke operacije, a mi ćemo proći kroz one
najosnovnije. Prije korištenja matematike, potrebno je importati istu u naš
program koristeći „import“. Pa na početak programa kucamo „import
math“. Možemo se direktno koristiti brojevima, ili koristiti skraćenice
kako bi mogli računati i brojeve koji se povremeno mijenjaju! Ispod se
nalazi primjer za brojeve koji se ne mijenjaju:
17. Dok se ispod nalaze primjeri za one koji su promjenjljivi (u ovom slučaju
ih unosi korisnik programa):
19. IF/IF NOT iskaz je iskaz kojim provjeravamo da li je nešto tačno ili
netačno. Primjera radi, reći ćemo da se traži ime korisnika, te ako je ime
korisnika Amar, program ispisuje „Kako si Amare?“, a ako nije postavlja
pitanje „Da li se znamo?“, u tom slučaju nam treba else statement, koji u
bukvalnom prevodu znači „u protivnom“. Primjer u obliku koda:
Za nizanje više „if“ iskaza jedan iza drugog se koristi „elif“ iskaz,
što je skraćenica od „else if“. Recimo da želimo, pored Amara, provjeriti da li se
korisnik možda zove Adi ili Kenan, to ćemo uraditi ovako:
Ovakav kod se može pojednostaviti
dodavanjem liste, lista može sadržavati
bilo kakve brojeve, znakove koji
označavaju npr. imena ili nadimke, a u
kodu se označavaju sa [ i ] (npr. list =
[Amar, Adi, Kenan] je lista imena koja
smo koristili iznad). Python nam
omogućava da provjeravamo da li je
određeno ime u listi te tada da pozovemo
pozdravnu poruku sa tim imenom.
20. WHILE iskaz se koristi za ponavljajuće provjeravanje određenog iskaza
sve dok isti nije tačan. Najlakše je isti objasniti na primjeru brojeva. Ako
želimo povećavati neki broj za 1 sve dok ne „stignemo“ do broja koji nam
je potreban, koristiti ćemo WHILE loop (petlju). Primjer u obliku koda:
Nakon pokretanja ovog programa, kao rezultat ćemo dobiti sljedeće:
21. FOR iskaz se koristi kako bi „prošli“ kroz listu, tuple ili string u potrazi
za određenim dijelom. For iskazom se možemo služiti i kako bi prošli
kroz bazu podataka, te ispisali njen sadržaj. Primjer na listi (imitaciji baze
podataka u ovom slučaju) korisnika banke:
Nakon pokretanja ovog programa ćemo kao rezultat dobiti sljedeće (naravno ukoliko
smo kao akciju izabrali ispis):
22. Try iskaz koristimo kada želimo „pokušati“ nešto uraditi. Try ima svoje
prateće iskaze, kao što „if ima else“, a to su: except (kojim možemo
uraditi nešto ukoliko se određena greška ili sve greške pojave), else (u
protivnom) i finally (konačno). U ovom primjeru ćemo koristiti except,
kako bi „uhvatili“ poruku o detaljima greške prilikom gašenja računara
uz pomoć ovog programa, te je pokazali onako kako mi želimo, a ne
onako kako je Python prikazuje (jer su kao takve nerazumljive korisniku):
Također, možemo i „narediti“ programu da nastavi kao da se ništa nije dogodilo
korištenjem „pass“ pomoćnog iskaza. Primjer:
23. WITH iskaz koristimo kako bi mogli koristiti neku naredbu jednostavnije
u tom bloku koda. Najlakše je objasniti isti na primjeru ispod:
Drugi primjer pokazuje dio koda igrice, kojim se pozivamo na već prije definirane
funkcije i provjeravamo da li se ime igrača nalazi u nekom od fajlova, a ako se ne nalazi
niti u jednom, privremeno sačuvamo imena svih prije dodanih igrača u memoriju, te
dodamo novog na dno fajla u formatu „- Ime“.
25. Funkcije predstavljaju jedan blok koda, koji obavlja određenu ulogu.
Kada i zašto koristiti funkcije? Funkcije koristimo onda, kada znamo da
određeni blok koda želimo „koristiti“ i kasnije. Glavna odlika funkcija u
Pythonu jeste pozivanje na iste u daljnjem toku koda (što znatno skraćuje
posao, npr. lakše je napisati blok koda od 15 linija unutar funkcije, pa ga
kasnije pozivati jednom linijom, nego svaki put pisati isti kod). Primjer:
Primjer iznad automatski poziva funkciju „informacije“ i ispisuje sljedeće:
27. Razredi(klase) su jedni od osnovnih principa svih
objektno orijentisanih programa. Olakšavaju posao
programerima na više načina. Klase omogućavaju ono
što funkcije ne mogu. Funkcije ne mogu sadržavati u
sebi neke promjenljive varijable. Klase, za razliku od
funkcija (koje mogu samo slati podatke) imaju
mogućnost primanja i slanja podataka. Ako želite
praviti česte promjene u određenom bloku koda, za to
su Vam potrebne klase. Unutar jedne klase se može
definirati više funkcija, koje se naknadno mogu
pozivati u toj klasi.
28. Klase ćemo najlakše objasniti na primjeru. Recimo da imamo dva člana
biblioteke (u ovom slučaju su uzeta samo dva člana kako bih lakše
objasnio rad klase) pod imenom Amar i Emir, te ispis tačnog broja dana
do isteka članarine! Primjer:
Brisati objekte jedne klase možemo koristeći već ugrađenu „del“ funkciju.