PROGRAMSKI JEZICI
description
Transcript of PROGRAMSKI JEZICI
-
PROGRAMSKA POTPORA 1
PROGRAMSKI JEZICI
-
PROGRAMSKA POTPORA 2
Povijesni razvoj programskih jezika je
uzrono-posljedino povezan sa razvojem elektronikih raunala.
Uzrono-posljedino razvoj doprinio je dananjoj jednostavnosti rada sa raunalom.
Sve "bra" raunala omoguuju izradu sve ugodnijeg (user friendly) suelja, ali hardverski zahtjevnijih programa.
slika
-
PROGRAMSKA POTPORA 3
Jae hardverske komponente
ire podruje primjene i ugodnije
suelje
Zahtjev za ugodnijim i
kvalitetnijim radom
Zahtjev za
"monijim" hardverom
-
PROGRAMSKA POTPORA 4
Program je skup naredbi nanizanih strogo
utvrenim redoslijedom, ijim izvravanjem se obavlja eljeni posao, odnosno program u sutini predstavlja redoslijedni niz naredbi, koje raunalo izvrava da bi obavio zadau prema zadanom postupku rjeavanja tj. po izraenom algoritmu.
ovjek koji pie program naziva se programer, a postupak nastanka programa
naziva se programiranje
-
PROGRAMSKA POTPORA 5
Slijed naredbi jezinog procesora, napisan u jednom od editor-a, koje e se potom procesoru prevesti da ih moe izvriti, mora biti logian i usklaen s modelom odvijanja zadae koji se naziva algoritam.
Algoritam predstavlja logiki niz radnji koje treba izvriti da se od poetnih postavki doe do eljenog rezultata, a izrauje se povezivanjem logikih struktura koje se prikazuju grafikim oblicima, najee prema ANSI standardu
-
PROGRAMSKA POTPORA 6
Algoritam zadae sloen od logikih struktura prikazanih grafikim oblicima naziva se DIJAGRAM TOKA ili BLOK DIJAGRAM i
predstavlja grafiko rjeenje programske zadae. Na osnovu dijagrama toka pie se niz naredbi jezinog procesora.
Dijagram toka se sastoji iz unaprijed
dogovorenih znakova i simbola.
Svaki znak ili simbol ve po svojem grafikom izgledu ima odreeno znaenje, a dodatno objanjenje upisuje se u pojedini simbol.
-
PROGRAMSKA POTPORA 7
Dva su osnovna elementa bitan preduvjet
ispravnosti blok dijagrama:
saznanje to treba uiniti s odreenim podacima i
saznanje kada treba uiniti odreenu radnju u sklopu velikog broja potrebnih
radnji.
-
PROGRAMSKA POTPORA 8
U stvaranju blok dijagrama se koriste odreene pojmove i to:
Blok to je naziv za grafiki simbol u kojem je oznaena jedna ili vie radnji.
Programski korak drugi naziv za blok simbol.
Poveznice okomite ili horizontalne linije koje povezuju blokove.
Programski slijed slijed praenja izvoenja operacija.
Uvjetno grananje razdvajanje nekog slijeda na dva razliita slijeda, a razdvajanje se vri na temelju nekakvog uvjeta.
-
PROGRAMSKA POTPORA 9
Bezuvjetno grananje prekid normalnog slijeda operacija naredbom da se nastavak nalazi na
nekom drugom mjestu u blok dijagramu.
Programska petlja skup radnji koje se izvode uzastopce vie puta.
Programska rutina jedna ili vie instrukcija koje ine logiku cjelinu u programu
Podprogram- izdvojena logika cjelina skupa radnji koje se piu odvojeno od glavnog programa.
-
PROGRAMSKA POTPORA 10
Elementi blok dijagrama
-
PROGRAMSKA POTPORA 11
Poetak ili kraj blok digrama
KRAJ
KRAJ
ili POETAK POETAK
ili
-
PROGRAMSKA POTPORA 12
Simbol obrade-procesiranje
Simbol obrade- procesiranje
-
PROGRAMSKA POTPORA 13
Symbol upita
upit
ISTINA - DA
NEISTINA - NE
-
PROGRAMSKA POTPORA 14
Razliiti oblici prikljunih toaka
prikljuna toka
bezuvetno
grananje prikljuak s
desne strane
prikljuak s
lijeve strane
-
PROGRAMSKA POTPORA 15
Manji od dva unesena broja
Poetak
Unesi
X,Y
X
-
PROGRAMSKA POTPORA 16
Algoritam za izraunavanje zbroja brojeva od 1 do N
Poetak
Unesi
broj
broj>=0
Unesi
broj
Ispisati
Sumap
1) Postavi Sumap=0
2) Unesi broj;
3) Dok je broj>=0
ponavljati 4-5
4) Unesi broj;
6) Ispisati Sumap
Kraj
Sumap=0
Sumap=
Sumap+broj
5) Sumap=Sumap+broj;
DA
NE
-
PROGRAMSKA POTPORA 17
Naelno se postupak nastanka programa moe podijeliti u sljedee korake:
1. Postavljanje zadatka - uoavanje problema i odabir naina rjeavanja.
2. Izrada fizikalnog modela - precizan opis i formulacija problema, ulazni podaci., izlazni podaci, granice, meusobna povezanost podataka i slino.
3. Izrada matematikog modela - razmatranje logikog procesa i njegovo predoavanje matematikim izrazima; ulazne i izlazne varijable, konstante i njihova funkcijska ovisnost.
4. Izrada algoritma - toan opis izvravanja radnji prikazan dijagramom toka koji je u sutini procedura izvoenja programa.
-
PROGRAMSKA POTPORA 18
5. Dizajniranje programa
-
PROGRAMSKA POTPORA 19
5. Testiranje programa (provjera programa) provodi se
kod proizvoaa programa i kod neovisnih ispitivaa.
Unato opsenom ispitivanju esto se pogreka
otkriva tek kod krajnjeg korisnika.
Razlog tome je sloenost suvremenih komercijalnih
programa. U raunalnom nazivlju pogreke su dobile
ime: bug.
Bug je ime za trajnu pogreku u programu ili
sklopovlju raunala.
Debagger oznaava program ili sklop koji moe
pomoi pri otklanjaju bug-ova u programu ili
sklopovskom dijelu raunala.
-
PROGRAMSKA POTPORA 20
Postupak otklanjanja pogreaka naziva se
debugging
6. Izrada dokumentacije - ( vaan dio ) za korisnika i za kasnije odravanje programa.
U dokumentaciju se ubrajaju uputa za
instaliranje programa, prirunici za korisnika, tehniki opis programa i samo u izuzetnim situacijama i izvorni program
-
PROGRAMSKA POTPORA 21
Nii i vii programski jezici
-
PROGRAMSKA POTPORA 22
Tehnike programiranja
-
PROGRAMSKA POTPORA 23
1. MODULARNO PROGRAMIRANJE -
temelji se na raspodjeli programskih
funkcija na manje neovisne module
izmeu kojih se potrebna komunikacija ostvaruje prijenosom podataka.
Modularna struktura omoguava timski rad jer se isti modal moe koristiti u raznim drugim dijelovima programa ili u
drugim programima..
-
PROGRAMSKA POTPORA 24
2. STRUKTUIRANO PROGRAMIRANJE - predstavlja nain pisanja programa u kojemu se potuje strogi slijed odvijanja programa ili njegovih modela.
Nema skokova u odvijanju programa prema poetku ili kraju ve se svaki smjer odvijanja programa odreuje izborom da-ne:
Moduli su meusobno povezani hijerarhijski.
Svaki model pripada jednoj od razina strukture i moe imati samo jednu ulaznu toku. Time se omoguava da se tijek programa moe bezprijekorno pratiti od poetka do kraja to olakava itljivost i otklanjanje greaka.
-
PROGRAMSKA POTPORA 25
3. INTERAKTIVNO PROGRAMIRANJE je
tehnika kada se za izradu programa
koriste ve gotove logike strukture, izraene na primjer od strane isporuitelja programskog alata, te ih programer dorauje prema svojim potrebama i moe rezultate tada odmah i testirati.
Produktivnije je ali manje sistematino.
-
PROGRAMSKA POTPORA 26
4. OBJEKTNO USMJERENO PROGRAMIRANJE - nastalo je kao odgovor na nemogunost definiranja globalnih zajednikih podataka u strukturiranom programiranju.
Podaci i operacije nad podacima spajaju se u cjeline nazvane objekt. Svi objekti iste vrste svrstavaju se u klasu a svaki od njih ima zasebno stanje unutar klase.
U klasi se definiraju zajednike postavke za sve njene objekte koje oni mogu i ne moraju koristiti i veze prema drugim klasama.
Povezanost klasa, tvori hijerarhijsku strukturu programa
-
PROGRAMSKA POTPORA 27
Grafiki prikaz razvoja programskih jezika
VISOKI
NIVO JEZIKA
NISKI
NIVO
JEZIKA
LJUDSKI JEZICI(npr. HRVATSKI, ENGLSKI, )
KOMPJUTRSKI PROGRMAKSI JEZIK C
STROJNI JEZIK
(binarni kod)
If the line is not busy, connect to the Internet;
else, wait
If (line ! = busy)
connect (Internet);
else
wait (5)
10001111101100
01100111011000
VII NIVO JEZIKA
VISOKI
NIVO JEZIKA
NISKI
NIVO
JEZIKA
LJUDSKI JEZICI(npr. HRVATSKI, ENGLSKI, )
KOMPJUTRSKI PROGRMAKSI JEZIK C
STROJNI JEZIK
(binarni kod)
If the line is not busy, connect to the Internet;
else, wait
If (line ! = busy)
connect (Internet);
else
wait (5)
10001111101100
01100111011000
VII NIVO JEZIKA
-
PROGRAMSKA POTPORA 28
Nii programski jezici kojima je osnovna karakteristika da su u upravljanju programom i u strukturi podataka odraava struktura raunala, tj. njegova arhitektura.
U uem smislu strojni jezik raunala ( eng. Machine language, machine code ) binarni je oblik programa.
U irem smislu strojni jezik je u binarnom obliku, heksadekadskom i mnemonikom obliku.
-
PROGRAMSKA POTPORA 29
Prednosti strojnog jezika su:
mogunost izravnog djelovanja na sklopovske dijelove raunala,
djelotvorno iskoritenje memorije, i
brzina izvoena programa.
Nedostaci strojnog jezika su:
sloenost postupka izrade programa, i
ogranienost programa za jedan tip mikroprocesora.
-
PROGRAMSKA POTPORA 30
Primjer nieg programskog jezika je assembler .
Naziv asembler je dvoznaan: oznaava programski jezik i program za prevoenje.
-
PROGRAMSKA POTPORA 31
Vii programski jezici
Vii programski jezici ( eng. High level lenguages, HLL) su svi oni jezici ije se naredbe ne mogu izravno prevesti u
binarne naredbe strojnog jezika.
To znai da jedna naredba vieg programskog jezika ne moe prevesti u jednu naredbu binarnog strojnog jezika.
-
PROGRAMSKA POTPORA 32
Prednosti viih programskih jezika su:
jednostavnost pisanja programa,
razumljivost programa i
prenosivost programa.
Nedostaci viih programskih jezika su:
sporije izvoenje programa i
nemogunost izravnog nadzora sklopov-skih dijelova raunala
-
PROGRAMSKA POTPORA 33
Neki vii programski jezici ( C, TP ) omoguavaju da se dio programa napie u asembleru, te je tako mogue kombinirati vii i strojni jezik unutar istog programa.
Svi programski jezici, osim strojnog,
nazivaju se simbolikim programski jezici
(eng. symbolic language) jer koriste
znakovne simbole.