SlideShare a Scribd company logo
1 of 8
Download to read offline
Delphi - Radno okruženje (IDE) programskog jezika - Uvod                                         1/8




          Radno okruženje (IDE) programskog jezika Delphi
1. Glavni prozor radnog okruženja programskog jezika Delhi
Pokretanjem prečice Delphi na desktopu (duplim klikom na prečicu), pokreće se i otvara
glavni prozor radnog okruženja (IDE) programskog jezika koji izgleda kao na slici 1:




                             Slika 1. Glavni prozor radnog okruženja programskog jezika Delphi


2.   Kratak pogled na Delphi okruženje
Kada ste prvi put startovali program, pred Vama se našla prazna forma i okruženje, kao na
slici 1.
Delphi okruženje je podeljeno na tri dela. Gornji prozor se može uzeti kao glavni prozor.
On sadrži trake za alate (tool bars) i paletu komponenti (component palette). Delphi
traka za alate Vam omogućava da jednim klikom miša pokrenete poslove kao što je
otvaranje, snimanje i prevođenje projekta.
Paleta komponenti sadrži širok spektar komponenti koje možete ubaciti u Vaše forme
(komponente su tekst natpisi, kontrole za editovanje, list boksovi, dugmad i slično). Radi
udobnosti komponente su podeljene u grupe.
Da li ste zapazili jezičke duž gornjeg dela palete komponenti?
Kliknite na ove jezičke i istražite koje su Vam komponente dostupne. Da biste postavili
komponentu na Vašu formu jednostavno kliknite na dugme komponente u okviru palete
komponenti a zatim kliknite na mesto u okviru forme gde biste želeli da se pojavi Vaša
komponenta.
Komponenta (component) je odvojena softverska komponenta koja izvršava određenu
unapred definisanu funkciju, kao što je tekst natpis, edit kontrola, odnosno okvir za liste
(list box).
Delphi - Radno okruženje (IDE) programskog jezika - Uvod                                    2/8



3. Inspektor objekata (object Inspector)
Ispod glavnog prozora na levoj strani ekrana se nalazi Object Inspector. Koristeći Object
Inspector možete menjati karakteristike komponenti i događaja. U toku rada sa Delphi-
jem uvek ćete koristiti Object Inspector.
Object Inspector ima dva jezička:
          • jezičak Properties (karakteristike) i
          • jezičak Events (događaji).

Jezičak Properites
Karakteristike komponenata upravljaju radom komponenti.
Na primer, promenom karakteristike Color određene komponente menja se boja pozadine
ove komponente.
Lista karakteristika koje su dostupne razlikuje se od komponente do komponente, iako
komponente uglavnom imaju nekoliko zajedničkih elemenata (karakteristike Width i
Height - širina i visina, na primer).

Jezičak Events
Jezičak Events sadrži listu događaja za određenu komponentu. Događaji se pojavljuju
kada korisnik interaguje sa komponentom.
Na primer, kada se klikne na komponentu, generiše se događaj koji govori o tome da je na
komponentu kliknuto.
Možete pisati kod koji odgovara na ove događaje, izvršavajući posebna dejstva kada se
događaj pojavi. Kao što je to slučaj sa karakteristikama i događaji na koje komponenta
može reagovati se razlikuju od komponente do komponente.

4. Delphi radni prostor (workspace)
Glavni deo Delphi okruženja je radni prostor. Radni prostor inicijalno prikazuje dizajner
forme (Form Designer).
Ne treba da Vas iznenadi činjenica da Vam dizajner formi (Form Designer) omogućava
da kreirate forme.
U Delphi-ju forma predstavlja prozor u okviru Vašeg programa. Forma može biti glavni
prozor programa, dijalog boks, odnosno bilo koji drugi tip prozora.
Možete koristiti Form Designer da postavite, pomerite, odnosno promenite veličinu
komponente u toku procesa njenog kreiranja.
Iza Form Designer-a se krije editor koda (Code Editor). U editor koda (Code Editor)
upisujete kod kada pišete Vaše programe. U toku kreiranja aplikacije Object Inspector,
Form Designer, Code Editor i Component Palette se koriste za interaktivni rad.

5. Pascal juniti
Programiranje je više od kucanja programskog koda. Pre svega programiranje je
kombinacija planiranja zadatka za programiranje, a zatim kucanja koda koji će izvršavati
taj zadatak. Kod koji kucate se upisuje u tekst datoteku.
Prevodilac uzima ovu datoteku i prevodi je u mašinski kod koji računar može da razume.
Tekst datoteka koju Delphi prevodi u mašinski kod se zove junit (unit).
Delphi - Radno okruženje (IDE) programskog jezika - Uvod                                     3/8


6. Tipovi junita
Delphijeve GUI aplikacije će sadržati najmanje dva junita. Izvorni junit projekta sadrži
izvorni kod projekta. Juniti izvornog koda programa imaju nastavak DPR.
Možete pregledati izvorni junit programa ako odaberete Project-View Source iz glavnog
menija. Uglavnom nije potrebno menjati izvorni junit projekta. Ustvari, ne bi trebali da
menjate izvorni junit projekta, ukoliko niste sigurni šta radite. Ako slučajno izmenite izvorni
junit projekta na neodgovarajući način može se dogoditi da Vaša aplikacija neće moći da
se prevede. (Određene napredne tehnike programiranja zahtevaju izmenu izvornog koda
projekta, ali za sada o tome ne treba da brinete.)
Drugi tip junita, koji Delphi-jeve GUI aplikacije sadrže, je junit glavne forme. Junit forme i
njegov naziv ukazuju na junit izvornog koda koji mu je pridružen. Ovaj tip junita ima
nastavak PAS. Ovaj tip junita ćete u većini slučajeva koristiti u Vašim Delphi programima.
Delphijeve GUI aplikacije uvek imaju jedan junit forme (za glavnu formu), ali, takođe,
mogu imati jednu, ili više dodatnih junita formi. Na primer, aplikacija koja prikazuje okvir sa
objašnjenjem programa (About box) će imati junit glavne forme i junit za okvir sa
objašnjenjem programa (About box).

7. Anatomija Delphijevog junita
Delphi juniti moraju pratiti unapred definisan format. Ovo sigurno nije iznenađenje za Vas.
Unit mora biti napisan u unapred definisanom formatu da bi prevodilac mogao da čita junit
i prevodi kod junita.
Juniti Delphi projekta sadrže ključnu reč program, iza kog sledi naziv junita i kod blok koji
se nalazi između ključnih reči begin i end. Možete videti kako izgleda osnovni junit izborom
opcije View-Project Source u okviru glavnog menija Delphi-ja.
Izvorni junit projekta za generički Delphi-jev projekt izgleda kao na listingu.

Listing 1.1: Izvorni kod projekta za generički Delphi-jev projekt
01: program Project1;
02:
03: uses
04: Forms,
05: Unit1 in .Unit1.pas. {Form1};
06:
07: {$R *.RES}
08:
09: begin
10: Application.Initialize;
11: Application.CreateForm(TForm1, Form1);
12: Application.Run;
13: end.
U liniji 1, ključna reč program identifikuje junit kao glavni izvorni junit programa. Možete
videti da se naziv junita, Project1 nalazi iza ključne reči program. (Delphi daje projektu
generički naziv sve dok ne snimite projekt pod nazivom koji ima bolje značenje.)
Počev od linije 3 vidite deo koji je identifikovan ključnom reči uses. Iza ključne reči uses se
nalaze nazivi junita koje navedeni junit traži da bi mogao da bude preveden.
Spisak se završava znakom tačka-zarez.
U liniji 7 možete videti direktivu prevodiocu koja pokazuje Delphi-ju da uključi
odgovarajuću resursnu datoteku.
Delphi - Radno okruženje (IDE) programskog jezika - Uvod                                    4/8

Linija 9 sadrži ključnu reč begin, a linija 13 sadrži ključnu reč end. Zapazite da poslednja
ključna reč end u okviru junita iza sebe ima tačku. (Junit može sadržati više blokova koda
označenih sa begin i end, ali samo jedan krajnji end iskaz). Kod u okviru linija 10, 11 i 12
je kod koji inicijalizuje aplikaciju, kreirajući glavnu formu aplikacije, odnosno startuje
aplikaciju. Ne treba da Vas brinu detalji ovog koda koji piše Delphi program.

Hajde da pogledamo još jedan osnovni junit Pascal-a. Odaberite opciju File-New u okviru
glavnog menija. Kada dijalog New Items bude bio prikazan, pronađite ikonu sa natpisom
Unit i dva puta kliknite na nju. Delphi će kreirati novi junit i prikazati ga u editoru koda
(Code Editor). Listing 1.2 pokazuje kod koji je generisan za ovaj junit.
Listing 1.2: Prazan Pascal junit
01: unit Unit2;
02:
03: interface
04:
05: implementation
06:
07: end.
Ovde nema puno stvari zar ne?
Ovaj junit ima dve slične stvari sa junitom koji je prikazan u okviru listinga 1.1.
Prvo, junit počinje ključnom reči unit iza koje sledi naziv junita Unit2 (opet generički naziv
koji kreira Delphi).
Znam da kod u listingu 1.1 počinje ključnom reči program, a ovaj kod počinje ključnom
reči unit, ali ovde postoji nekoliko sličnih elemenata:
  • Pascal junit počinje sa jednom od ove dve ključne reči iza koje sledi naziv junita,
  • dok se ključna reč end pojavljuje na kraju oba listinga.
Ponovo imamo ključnu reč end iza koje sledi tačka koja označava kraj junita. Kod u okviru
listinga 1.2 se razlikuje od listinga 1.1 po tome što sadrži delove pod nazivom interface i
implementation. Junit koji nije glavni izvorni junit programa mora sadržati deo interface i
deo implementation.
Ove dve ključen reči će biti opisane detaljnije u poglavlju pod nazivom .Odeljak interface.
i .Odeljak implementation. respektivno.
Listing 1.2 se razlikuje od listinga 1.1 i po tome što nema iskaz begin.
Glavni junit programa mora imati oba iskaza begin i end, ali izvorni junit jedini može
sadržati poslednji iskaz end. Sledeće poglavlje opisuje ključne reči koje se koriste u okviru
Pascal junita.
Delphi - Radno okruženje (IDE) programskog jezika - Uvod                                          5/8



8. Lista uses
Pogledajte listing 1.1. Zapazite ključnu reč uses u liniji 3.
Ključna reč uses označava početak odeljka koji sadrži listu drugih junita od kojih navedeni
junit zavisi. Na primer linija 11 u okviru listinga 1.1 izgleda ovako:
Application.CreateForm(TForm1, Form1);
Ova linija koda sadrži informacije koje se nalaze u drugim junitima i ne mogu biti
pronađene u navedenom junitu.
Procedura identifikovana kao Application .CreateForm se nalazi u Delphi-jevom junitu
pod nazivom Forms.pas, a identifikatori TForm1 i Form1 se nalaze u glavnom junitu
forme projekta pod nazivom Unit1.pas.
Da li primećujete vezu?
Lista uses pokazuje Delphiju gde da potražI dodatne informacije koje su potrebne za
prevođenje ovog junita. Evo još jednog pogleda na listu uses:

uses
Forms,
Unit1 in .Unit1.pas. {Form1};



9. Odeljak interface
Ponovo pogledajte listing 1.2. Zapazite da ovaj listing ima odeljak označen ključnom reči
interface. Ova ključna reč označava početak odeljka za interfejs u okviru junita. Odeljak
interface je odeljak junita u okviru kog se deklarišu identifikatori koje navedeni junit izvozi.
Identifikator za izvoz predstavlja identifikator kome mogu pristupiti drugi juniti u okviru
projekta.
Većina junita će sadržati kod koji ostali juniti koriste. Kod može biti implementiran kao
klasa, procedura, funkcija, odnosno kao promenljiva. Bilo koji objekat, koji je dostupan
ostalim junitima iz navedenog junita, mora biti deklarisan u odeljku za interfejs. Može se
reći da odeljak za interfejs sadrži listu stavki u okviru junita koje ostali juniti mogu da
koriste. Odeljak za intrerfejs počinje ključnom reči interface a završava se ključnom reči
implementation.

10. Odeljak implementation
Odeljak za implementaciju junita je odeljak koji sadrži aktuelni kod junita.
Odeljak za implementaciju počinje ključnom reči implementation a završava se ključnom
reči sledećeg junita.
Ključna reč sledećeg junita je obično poslednja ključna reč u okviru junita, ali može biti
ključna reč initialization, ukoliko junit sadrži odeljak za inicijalizaciju. Bilo bi teško reći nešto
više od ovog u ovom trenutku, ali postoje drugi aspekti Pascal-a o kojima bih hteo da
pišem pre nego što sve ovo povežemo. Dozvolite mi da Vam dam primer koji će ilustrovati
korišćenje odeljaka interface i implementation.
Recimo da kreirate junit koji sadrži proceduru pod nazivom DoSomething. Recimo da
unapred želite da junit DoSomething bude dostupan drugim junitima u okviru Vašeg
projekta. U tom slučaju trebalo bi da deklarišete proceduru DoSomething u okviru odeljka
interfejs a zatim definišete navedenu proceduru u odeljku za implementaciju. Kompletan
junit bi izgledao kao što je to prikazano na listingu 1.3.
Delphi - Radno okruženje (IDE) programskog jezika - Uvod                                     6/8

Listing 1.3: Junit sa javnom funkcijom

unit Unit2;
interface
procedure DoSomething;
implementation
procedure DoSomething;
begin
{ Code for DoSomething goes here. }
end;
end.


Zapazite da je procedura DoSomething deklarisana u odeljku za interfejs a zatim
definisana u odeljku za implementaciju.

11. Dodatne ključne reči koje se koriste u junitima
Pascal junit može sadržati druge opcione ključne reči koje označvaju odeljke koji se ređe
koriste.
Neke od ovih reči imaju višestruku namenu.
Naredna poglavlja opisuju one ključne reči koje imaju veze sa junitima.

12. Ključna reč const
Junit opciono može sadržati jedan ili više odeljaka const. Odeljak const je određen
ključnom reči const.
Odeljak const opisuje listu promenljivih koje su poznate kao konstante.
Konstanta je identifikator koji se ne može menjati.
Na primer, recimo da imate određene vrednosti koje program koristi veoma često. Za ove
vrednosti možete definisati konstantne promenljive.
Da bi ovo ilustrovali dodajmo odeljak const u program na listingu 1.3. Dodaćete jedan
odeljak const za konstante koje su javne (dostupne drugim junitima) i drugi odeljak const
koji sadrži konstante koje su dostupne samo tekućem junitu.
Listing 1.4 prikazuje junit koji sadrži dva odeljka za konstante.
Listing 1.4: Junit sa dodatkom odeljka za konstante
unit Unit2;
interface
const
AppCaption = .My Cool Program 1.0.;
procedure DoSomething;
implementation
const
BaseX = 20;
BaseY = 200;
procedure DoSomething;
begin
{ Code for DoSomething goes here. }
end;
end.
Pošto je konstanta AppCaption deklarisana u odeljku za interfejs isto se može koristiti bilo
gde u okviru junita, a takođe i u drugim junitima koji u listi uses imaju naveden tekući junit.
Konstante BaseX i BaseY su dostupne jedino u okviru navedenog junita pošto su
deklarisane u odeljku za implementaciju.
Delphi - Radno okruženje (IDE) programskog jezika - Uvod                                   7/8


13. Ključna reč type
Ključna reč type se koristi da deklariše nove tipove koje će koristiti Vaš program.

14. Ključna reč var
Ključna reč var se koristi da deklariše odeljak koda u kom se deklarišu promenljive.
Ključnu reč var ste koristili za deklaraciju promenljivih (promenljive su obrađene detaljnije
u poglavlju pod nazivom .Promenljive.).
Odeljak var možete deklarisati na nekoliko mesta u okviru programa.
Možete postaviti odeljak var u nivou junita, možete imati odeljak var za proceduru, funkciju
odnosno oba dela programa istovremeno.
Takođe možete imati višestruke odeljke za promenljive u okviru junita.

Listing 1.5: Junit sa dodatim odeljcima type i var

unit Unit2;
interface
type
TMyArray = array [0..19] of Byte;
const
AppCaption = .My Cool Program 1.0.;
var
X : Integer;
MyArray : TMyArray;
procedure DoSomething;
implementation
const
BaseX = 20;
BaseY = 200;
procedure DoSomething;
begin
{ Code for DoSomething goes here. }
end;
end.
Delphi - Radno okruženje (IDE) programskog jezika - Uvod                               8/8



15. Komentari u okviru koda
Pre nego što obradimo jezik Pascal detaljnije, dozvolite mi da Vam ukratko objasnim kod
za komentar. Komentari su linije teksta u okviru izvornog koda koji se u kodu nalaze sa
svrhom da ga dokumentuju.
Komentari mogu da se koriste za opisivanje šta kod radi, da daju informacije o autorskim
pravima, odnosno da označe napomene koje ste naveli za sebe, odnosno za druge
programere.
Komentari mogu biti upotrebljeni na tri različita načina. U nastavku su navedene sve
ispravne linije sa komentarima:

{ Don.t forget to free this memory! }
{
ADTAPI.PAS 2.50
Copyright (c) TurboPower Software 1996‐98
}
(* Mason needs to fix this section of code *)
// This is really good code!
{ This code needs to be reworked later }


Možda najčešći tip komentara koji se koristi u Delphi programima sadrži vitičaste zagrade
kao što je to ilustrovano u prva dva slučaja u prethodnom primeru.
Otvorena zagrada se koristi kao početak komentara, a zatvorena zagrada se koristi kao
kraj komentara. Sledeći tip komentara koristi (* za početak komentara, a *) za kraj
komentara.
Postoji jedna razlika između komentara naznačenih na ovaj način i komentara koji koriste
vitičaste zagrade: Par (* / *) se može koristiti da označI blok velikih delova koda koji
između ostalog sadrže i linije sa komentarima.
Ova dva tipa komentara se mogu koristiti za komentarisanje u okviru samo jedne linije
koda, odnosno komentarisanje koda u više linija.
Treći tip komentara je označen kao dvostruka kosa crta. Ovakvi komentari se obično
nazivaju komentari u C stilu, pošto se koriste u programskom jeziku C odnosno C++.
Ovakav tip komentara se može koristiti u okviru jedne linije koda.

More Related Content

Similar to Delphi - Radno okruženje (IDE) programskog jezika - Uvod

02. PROGRAMSKI PROZOR.pptx
02. PROGRAMSKI PROZOR.pptx02. PROGRAMSKI PROZOR.pptx
02. PROGRAMSKI PROZOR.pptxBrankica Jokić
 
Sistemski softver i aplikativni programi
Sistemski softver i aplikativni programiSistemski softver i aplikativni programi
Sistemski softver i aplikativni programiJasmina Profil
 
Sistemski softver i aplikativni programi
Sistemski softver i aplikativni programiSistemski softver i aplikativni programi
Sistemski softver i aplikativni programiAleksandar Jovanovic
 
vasdasdasdddddddddashdklasshadkahskdhaksjdsdhkajhsdkahskdhaksdhkasjhdkhsakdhj...
vasdasdasdddddddddashdklasshadkahskdhaksjdsdhkajhsdkahskdhaksdhkasjhdkhsakdhj...vasdasdasdddddddddashdklasshadkahskdhaksjdsdhkajhsdkahskdhaksdhkasjhdkhsakdhj...
vasdasdasdddddddddashdklasshadkahskdhaksjdsdhkajhsdkahskdhaksdhkasjhdkhsakdhj...UKJAEDRENICESS
 
01 word 2010_kpk
01 word 2010_kpk01 word 2010_kpk
01 word 2010_kpkErnan Avdic
 
Preporuke Za Proces Ocenjivanja Programske Aplikacije
Preporuke Za Proces Ocenjivanja Programske AplikacijePreporuke Za Proces Ocenjivanja Programske Aplikacije
Preporuke Za Proces Ocenjivanja Programske AplikacijeОШ ХРШ
 
Programski jezici u IT
Programski jezici u ITProgramski jezici u IT
Programski jezici u ITMrsevic
 

Similar to Delphi - Radno okruženje (IDE) programskog jezika - Uvod (11)

02. PROGRAMSKI PROZOR.pptx
02. PROGRAMSKI PROZOR.pptx02. PROGRAMSKI PROZOR.pptx
02. PROGRAMSKI PROZOR.pptx
 
Sistemski softver i aplikativni programi
Sistemski softver i aplikativni programiSistemski softver i aplikativni programi
Sistemski softver i aplikativni programi
 
Sistemski softver i aplikativni programi
Sistemski softver i aplikativni programiSistemski softver i aplikativni programi
Sistemski softver i aplikativni programi
 
PROGRAMSKI PROZOR
PROGRAMSKI PROZORPROGRAMSKI PROZOR
PROGRAMSKI PROZOR
 
vasdasdasdddddddddashdklasshadkahskdhaksjdsdhkajhsdkahskdhaksdhkasjhdkhsakdhj...
vasdasdasdddddddddashdklasshadkahskdhaksjdsdhkajhsdkahskdhaksdhkasjhdkhsakdhj...vasdasdasdddddddddashdklasshadkahskdhaksjdsdhkajhsdkahskdhaksdhkasjhdkhsakdhj...
vasdasdasdddddddddashdklasshadkahskdhaksjdsdhkajhsdkahskdhaksdhkasjhdkhsakdhj...
 
01 word 2010_kpk
01 word 2010_kpk01 word 2010_kpk
01 word 2010_kpk
 
Preporuke Za Proces Ocenjivanja Programske Aplikacije
Preporuke Za Proces Ocenjivanja Programske AplikacijePreporuke Za Proces Ocenjivanja Programske Aplikacije
Preporuke Za Proces Ocenjivanja Programske Aplikacije
 
Programski jezici u IT
Programski jezici u ITProgramski jezici u IT
Programski jezici u IT
 
Softver
SoftverSoftver
Softver
 
Softver
SoftverSoftver
Softver
 
Starenje softvera
Starenje softveraStarenje softvera
Starenje softvera
 

More from Педагошко друштво информатичара Србије

More from Педагошко друштво информатичара Србије (20)

Takmicenje Dabar 2017 Agenda 18-02-2016 Nis
Takmicenje Dabar 2017 Agenda 18-02-2016 NisTakmicenje Dabar 2017 Agenda 18-02-2016 Nis
Takmicenje Dabar 2017 Agenda 18-02-2016 Nis
 
Forum naprednih tehnologija 2016 - Agenda
Forum naprednih tehnologija 2016 - AgendaForum naprednih tehnologija 2016 - Agenda
Forum naprednih tehnologija 2016 - Agenda
 
FNT 2016 Agenda
FNT 2016 AgendaFNT 2016 Agenda
FNT 2016 Agenda
 
Takmicenje Infomanija 2016 Poziv
Takmicenje Infomanija 2016 PozivTakmicenje Infomanija 2016 Poziv
Takmicenje Infomanija 2016 Poziv
 
EPA Konferencija - zakljicc 2016-02-24
EPA Konferencija - zakljicc 2016-02-24EPA Konferencija - zakljicc 2016-02-24
EPA Konferencija - zakljicc 2016-02-24
 
PDIS pismo podrske 2016-03-24
PDIS pismo podrske 2016-03-24PDIS pismo podrske 2016-03-24
PDIS pismo podrske 2016-03-24
 
Slobodan softver 2016 - Zbornik radova 30.01.2016.
Slobodan softver 2016 - Zbornik radova 30.01.2016.Slobodan softver 2016 - Zbornik radova 30.01.2016.
Slobodan softver 2016 - Zbornik radova 30.01.2016.
 
Onlajn nedelja 2016 saopstenje za javnost
Onlajn nedelja 2016 saopstenje za javnostOnlajn nedelja 2016 saopstenje za javnost
Onlajn nedelja 2016 saopstenje za javnost
 
Zbornik radova UPIS 2016
Zbornik radova UPIS 2016Zbornik radova UPIS 2016
Zbornik radova UPIS 2016
 
OA 2016 Uputstvo Oracle Academy
OA 2016 Uputstvo Oracle AcademyOA 2016 Uputstvo Oracle Academy
OA 2016 Uputstvo Oracle Academy
 
Forum mladih naucnika 2016 satnica
Forum mladih naucnika 2016 satnicaForum mladih naucnika 2016 satnica
Forum mladih naucnika 2016 satnica
 
Epa konferencija 2016_agenda_160224
Epa konferencija 2016_agenda_160224Epa konferencija 2016_agenda_160224
Epa konferencija 2016_agenda_160224
 
FNT 2015 Panel 2 1 Visoko obrazovanje - Prof dr Dragan Jankovic
FNT 2015 Panel 2 1 Visoko obrazovanje - Prof dr Dragan JankovicFNT 2015 Panel 2 1 Visoko obrazovanje - Prof dr Dragan Jankovic
FNT 2015 Panel 2 1 Visoko obrazovanje - Prof dr Dragan Jankovic
 
FNT 2015 Panel 2 4 Potencijali privrede - Goran Mladenovic
FNT 2015 Panel 2 4 Potencijali privrede - Goran MladenovicFNT 2015 Panel 2 4 Potencijali privrede - Goran Mladenovic
FNT 2015 Panel 2 4 Potencijali privrede - Goran Mladenovic
 
FNT 2015 Panel 2 2 Visoko strucno obrazovanje - dr Dejan Blagojevic
FNT 2015 Panel 2 2 Visoko strucno obrazovanje - dr Dejan BlagojevicFNT 2015 Panel 2 2 Visoko strucno obrazovanje - dr Dejan Blagojevic
FNT 2015 Panel 2 2 Visoko strucno obrazovanje - dr Dejan Blagojevic
 
FNT 2015 Panel 2 3 - Srednjoskolsko obrazovanje - Dragan Ilic
FNT 2015 Panel 2 3 - Srednjoskolsko obrazovanje - Dragan IlicFNT 2015 Panel 2 3 - Srednjoskolsko obrazovanje - Dragan Ilic
FNT 2015 Panel 2 3 - Srednjoskolsko obrazovanje - Dragan Ilic
 
FNT 2015 Panel 2 5 Primeri dobre prakse ICT - Feniks BB - Bratislav Blagojevic
FNT 2015 Panel 2 5 Primeri dobre prakse ICT - Feniks BB - Bratislav BlagojevicFNT 2015 Panel 2 5 Primeri dobre prakse ICT - Feniks BB - Bratislav Blagojevic
FNT 2015 Panel 2 5 Primeri dobre prakse ICT - Feniks BB - Bratislav Blagojevic
 
FNT 2015 Panel 2 7 Olimpijski tim - Ivan Stosic
FNT 2015 Panel 2 7 Olimpijski tim - Ivan StosicFNT 2015 Panel 2 7 Olimpijski tim - Ivan Stosic
FNT 2015 Panel 2 7 Olimpijski tim - Ivan Stosic
 
FNT 2015 Panel 2 6 Primeri dobre prakse ICT - Atomia i Troxo
FNT 2015 Panel 2 6 Primeri dobre prakse ICT - Atomia i TroxoFNT 2015 Panel 2 6 Primeri dobre prakse ICT - Atomia i Troxo
FNT 2015 Panel 2 6 Primeri dobre prakse ICT - Atomia i Troxo
 
Forum naprednih tehnologija - Oni su deo budućnosti
Forum naprednih tehnologija - Oni su deo budućnosti Forum naprednih tehnologija - Oni su deo budućnosti
Forum naprednih tehnologija - Oni su deo budućnosti
 

Delphi - Radno okruženje (IDE) programskog jezika - Uvod

  • 1. Delphi - Radno okruženje (IDE) programskog jezika - Uvod 1/8 Radno okruženje (IDE) programskog jezika Delphi 1. Glavni prozor radnog okruženja programskog jezika Delhi Pokretanjem prečice Delphi na desktopu (duplim klikom na prečicu), pokreće se i otvara glavni prozor radnog okruženja (IDE) programskog jezika koji izgleda kao na slici 1: Slika 1. Glavni prozor radnog okruženja programskog jezika Delphi 2. Kratak pogled na Delphi okruženje Kada ste prvi put startovali program, pred Vama se našla prazna forma i okruženje, kao na slici 1. Delphi okruženje je podeljeno na tri dela. Gornji prozor se može uzeti kao glavni prozor. On sadrži trake za alate (tool bars) i paletu komponenti (component palette). Delphi traka za alate Vam omogućava da jednim klikom miša pokrenete poslove kao što je otvaranje, snimanje i prevođenje projekta. Paleta komponenti sadrži širok spektar komponenti koje možete ubaciti u Vaše forme (komponente su tekst natpisi, kontrole za editovanje, list boksovi, dugmad i slično). Radi udobnosti komponente su podeljene u grupe. Da li ste zapazili jezičke duž gornjeg dela palete komponenti? Kliknite na ove jezičke i istražite koje su Vam komponente dostupne. Da biste postavili komponentu na Vašu formu jednostavno kliknite na dugme komponente u okviru palete komponenti a zatim kliknite na mesto u okviru forme gde biste želeli da se pojavi Vaša komponenta. Komponenta (component) je odvojena softverska komponenta koja izvršava određenu unapred definisanu funkciju, kao što je tekst natpis, edit kontrola, odnosno okvir za liste (list box).
  • 2. Delphi - Radno okruženje (IDE) programskog jezika - Uvod 2/8 3. Inspektor objekata (object Inspector) Ispod glavnog prozora na levoj strani ekrana se nalazi Object Inspector. Koristeći Object Inspector možete menjati karakteristike komponenti i događaja. U toku rada sa Delphi- jem uvek ćete koristiti Object Inspector. Object Inspector ima dva jezička: • jezičak Properties (karakteristike) i • jezičak Events (događaji). Jezičak Properites Karakteristike komponenata upravljaju radom komponenti. Na primer, promenom karakteristike Color određene komponente menja se boja pozadine ove komponente. Lista karakteristika koje su dostupne razlikuje se od komponente do komponente, iako komponente uglavnom imaju nekoliko zajedničkih elemenata (karakteristike Width i Height - širina i visina, na primer). Jezičak Events Jezičak Events sadrži listu događaja za određenu komponentu. Događaji se pojavljuju kada korisnik interaguje sa komponentom. Na primer, kada se klikne na komponentu, generiše se događaj koji govori o tome da je na komponentu kliknuto. Možete pisati kod koji odgovara na ove događaje, izvršavajući posebna dejstva kada se događaj pojavi. Kao što je to slučaj sa karakteristikama i događaji na koje komponenta može reagovati se razlikuju od komponente do komponente. 4. Delphi radni prostor (workspace) Glavni deo Delphi okruženja je radni prostor. Radni prostor inicijalno prikazuje dizajner forme (Form Designer). Ne treba da Vas iznenadi činjenica da Vam dizajner formi (Form Designer) omogućava da kreirate forme. U Delphi-ju forma predstavlja prozor u okviru Vašeg programa. Forma može biti glavni prozor programa, dijalog boks, odnosno bilo koji drugi tip prozora. Možete koristiti Form Designer da postavite, pomerite, odnosno promenite veličinu komponente u toku procesa njenog kreiranja. Iza Form Designer-a se krije editor koda (Code Editor). U editor koda (Code Editor) upisujete kod kada pišete Vaše programe. U toku kreiranja aplikacije Object Inspector, Form Designer, Code Editor i Component Palette se koriste za interaktivni rad. 5. Pascal juniti Programiranje je više od kucanja programskog koda. Pre svega programiranje je kombinacija planiranja zadatka za programiranje, a zatim kucanja koda koji će izvršavati taj zadatak. Kod koji kucate se upisuje u tekst datoteku. Prevodilac uzima ovu datoteku i prevodi je u mašinski kod koji računar može da razume. Tekst datoteka koju Delphi prevodi u mašinski kod se zove junit (unit).
  • 3. Delphi - Radno okruženje (IDE) programskog jezika - Uvod 3/8 6. Tipovi junita Delphijeve GUI aplikacije će sadržati najmanje dva junita. Izvorni junit projekta sadrži izvorni kod projekta. Juniti izvornog koda programa imaju nastavak DPR. Možete pregledati izvorni junit programa ako odaberete Project-View Source iz glavnog menija. Uglavnom nije potrebno menjati izvorni junit projekta. Ustvari, ne bi trebali da menjate izvorni junit projekta, ukoliko niste sigurni šta radite. Ako slučajno izmenite izvorni junit projekta na neodgovarajući način može se dogoditi da Vaša aplikacija neće moći da se prevede. (Određene napredne tehnike programiranja zahtevaju izmenu izvornog koda projekta, ali za sada o tome ne treba da brinete.) Drugi tip junita, koji Delphi-jeve GUI aplikacije sadrže, je junit glavne forme. Junit forme i njegov naziv ukazuju na junit izvornog koda koji mu je pridružen. Ovaj tip junita ima nastavak PAS. Ovaj tip junita ćete u većini slučajeva koristiti u Vašim Delphi programima. Delphijeve GUI aplikacije uvek imaju jedan junit forme (za glavnu formu), ali, takođe, mogu imati jednu, ili više dodatnih junita formi. Na primer, aplikacija koja prikazuje okvir sa objašnjenjem programa (About box) će imati junit glavne forme i junit za okvir sa objašnjenjem programa (About box). 7. Anatomija Delphijevog junita Delphi juniti moraju pratiti unapred definisan format. Ovo sigurno nije iznenađenje za Vas. Unit mora biti napisan u unapred definisanom formatu da bi prevodilac mogao da čita junit i prevodi kod junita. Juniti Delphi projekta sadrže ključnu reč program, iza kog sledi naziv junita i kod blok koji se nalazi između ključnih reči begin i end. Možete videti kako izgleda osnovni junit izborom opcije View-Project Source u okviru glavnog menija Delphi-ja. Izvorni junit projekta za generički Delphi-jev projekt izgleda kao na listingu. Listing 1.1: Izvorni kod projekta za generički Delphi-jev projekt 01: program Project1; 02: 03: uses 04: Forms, 05: Unit1 in .Unit1.pas. {Form1}; 06: 07: {$R *.RES} 08: 09: begin 10: Application.Initialize; 11: Application.CreateForm(TForm1, Form1); 12: Application.Run; 13: end. U liniji 1, ključna reč program identifikuje junit kao glavni izvorni junit programa. Možete videti da se naziv junita, Project1 nalazi iza ključne reči program. (Delphi daje projektu generički naziv sve dok ne snimite projekt pod nazivom koji ima bolje značenje.) Počev od linije 3 vidite deo koji je identifikovan ključnom reči uses. Iza ključne reči uses se nalaze nazivi junita koje navedeni junit traži da bi mogao da bude preveden. Spisak se završava znakom tačka-zarez. U liniji 7 možete videti direktivu prevodiocu koja pokazuje Delphi-ju da uključi odgovarajuću resursnu datoteku.
  • 4. Delphi - Radno okruženje (IDE) programskog jezika - Uvod 4/8 Linija 9 sadrži ključnu reč begin, a linija 13 sadrži ključnu reč end. Zapazite da poslednja ključna reč end u okviru junita iza sebe ima tačku. (Junit može sadržati više blokova koda označenih sa begin i end, ali samo jedan krajnji end iskaz). Kod u okviru linija 10, 11 i 12 je kod koji inicijalizuje aplikaciju, kreirajući glavnu formu aplikacije, odnosno startuje aplikaciju. Ne treba da Vas brinu detalji ovog koda koji piše Delphi program. Hajde da pogledamo još jedan osnovni junit Pascal-a. Odaberite opciju File-New u okviru glavnog menija. Kada dijalog New Items bude bio prikazan, pronađite ikonu sa natpisom Unit i dva puta kliknite na nju. Delphi će kreirati novi junit i prikazati ga u editoru koda (Code Editor). Listing 1.2 pokazuje kod koji je generisan za ovaj junit. Listing 1.2: Prazan Pascal junit 01: unit Unit2; 02: 03: interface 04: 05: implementation 06: 07: end. Ovde nema puno stvari zar ne? Ovaj junit ima dve slične stvari sa junitom koji je prikazan u okviru listinga 1.1. Prvo, junit počinje ključnom reči unit iza koje sledi naziv junita Unit2 (opet generički naziv koji kreira Delphi). Znam da kod u listingu 1.1 počinje ključnom reči program, a ovaj kod počinje ključnom reči unit, ali ovde postoji nekoliko sličnih elemenata: • Pascal junit počinje sa jednom od ove dve ključne reči iza koje sledi naziv junita, • dok se ključna reč end pojavljuje na kraju oba listinga. Ponovo imamo ključnu reč end iza koje sledi tačka koja označava kraj junita. Kod u okviru listinga 1.2 se razlikuje od listinga 1.1 po tome što sadrži delove pod nazivom interface i implementation. Junit koji nije glavni izvorni junit programa mora sadržati deo interface i deo implementation. Ove dve ključen reči će biti opisane detaljnije u poglavlju pod nazivom .Odeljak interface. i .Odeljak implementation. respektivno. Listing 1.2 se razlikuje od listinga 1.1 i po tome što nema iskaz begin. Glavni junit programa mora imati oba iskaza begin i end, ali izvorni junit jedini može sadržati poslednji iskaz end. Sledeće poglavlje opisuje ključne reči koje se koriste u okviru Pascal junita.
  • 5. Delphi - Radno okruženje (IDE) programskog jezika - Uvod 5/8 8. Lista uses Pogledajte listing 1.1. Zapazite ključnu reč uses u liniji 3. Ključna reč uses označava početak odeljka koji sadrži listu drugih junita od kojih navedeni junit zavisi. Na primer linija 11 u okviru listinga 1.1 izgleda ovako: Application.CreateForm(TForm1, Form1); Ova linija koda sadrži informacije koje se nalaze u drugim junitima i ne mogu biti pronađene u navedenom junitu. Procedura identifikovana kao Application .CreateForm se nalazi u Delphi-jevom junitu pod nazivom Forms.pas, a identifikatori TForm1 i Form1 se nalaze u glavnom junitu forme projekta pod nazivom Unit1.pas. Da li primećujete vezu? Lista uses pokazuje Delphiju gde da potražI dodatne informacije koje su potrebne za prevođenje ovog junita. Evo još jednog pogleda na listu uses: uses Forms, Unit1 in .Unit1.pas. {Form1}; 9. Odeljak interface Ponovo pogledajte listing 1.2. Zapazite da ovaj listing ima odeljak označen ključnom reči interface. Ova ključna reč označava početak odeljka za interfejs u okviru junita. Odeljak interface je odeljak junita u okviru kog se deklarišu identifikatori koje navedeni junit izvozi. Identifikator za izvoz predstavlja identifikator kome mogu pristupiti drugi juniti u okviru projekta. Većina junita će sadržati kod koji ostali juniti koriste. Kod može biti implementiran kao klasa, procedura, funkcija, odnosno kao promenljiva. Bilo koji objekat, koji je dostupan ostalim junitima iz navedenog junita, mora biti deklarisan u odeljku za interfejs. Može se reći da odeljak za interfejs sadrži listu stavki u okviru junita koje ostali juniti mogu da koriste. Odeljak za intrerfejs počinje ključnom reči interface a završava se ključnom reči implementation. 10. Odeljak implementation Odeljak za implementaciju junita je odeljak koji sadrži aktuelni kod junita. Odeljak za implementaciju počinje ključnom reči implementation a završava se ključnom reči sledećeg junita. Ključna reč sledećeg junita je obično poslednja ključna reč u okviru junita, ali može biti ključna reč initialization, ukoliko junit sadrži odeljak za inicijalizaciju. Bilo bi teško reći nešto više od ovog u ovom trenutku, ali postoje drugi aspekti Pascal-a o kojima bih hteo da pišem pre nego što sve ovo povežemo. Dozvolite mi da Vam dam primer koji će ilustrovati korišćenje odeljaka interface i implementation. Recimo da kreirate junit koji sadrži proceduru pod nazivom DoSomething. Recimo da unapred želite da junit DoSomething bude dostupan drugim junitima u okviru Vašeg projekta. U tom slučaju trebalo bi da deklarišete proceduru DoSomething u okviru odeljka interfejs a zatim definišete navedenu proceduru u odeljku za implementaciju. Kompletan junit bi izgledao kao što je to prikazano na listingu 1.3.
  • 6. Delphi - Radno okruženje (IDE) programskog jezika - Uvod 6/8 Listing 1.3: Junit sa javnom funkcijom unit Unit2; interface procedure DoSomething; implementation procedure DoSomething; begin { Code for DoSomething goes here. } end; end. Zapazite da je procedura DoSomething deklarisana u odeljku za interfejs a zatim definisana u odeljku za implementaciju. 11. Dodatne ključne reči koje se koriste u junitima Pascal junit može sadržati druge opcione ključne reči koje označvaju odeljke koji se ređe koriste. Neke od ovih reči imaju višestruku namenu. Naredna poglavlja opisuju one ključne reči koje imaju veze sa junitima. 12. Ključna reč const Junit opciono može sadržati jedan ili više odeljaka const. Odeljak const je određen ključnom reči const. Odeljak const opisuje listu promenljivih koje su poznate kao konstante. Konstanta je identifikator koji se ne može menjati. Na primer, recimo da imate određene vrednosti koje program koristi veoma često. Za ove vrednosti možete definisati konstantne promenljive. Da bi ovo ilustrovali dodajmo odeljak const u program na listingu 1.3. Dodaćete jedan odeljak const za konstante koje su javne (dostupne drugim junitima) i drugi odeljak const koji sadrži konstante koje su dostupne samo tekućem junitu. Listing 1.4 prikazuje junit koji sadrži dva odeljka za konstante. Listing 1.4: Junit sa dodatkom odeljka za konstante unit Unit2; interface const AppCaption = .My Cool Program 1.0.; procedure DoSomething; implementation const BaseX = 20; BaseY = 200; procedure DoSomething; begin { Code for DoSomething goes here. } end; end. Pošto je konstanta AppCaption deklarisana u odeljku za interfejs isto se može koristiti bilo gde u okviru junita, a takođe i u drugim junitima koji u listi uses imaju naveden tekući junit. Konstante BaseX i BaseY su dostupne jedino u okviru navedenog junita pošto su deklarisane u odeljku za implementaciju.
  • 7. Delphi - Radno okruženje (IDE) programskog jezika - Uvod 7/8 13. Ključna reč type Ključna reč type se koristi da deklariše nove tipove koje će koristiti Vaš program. 14. Ključna reč var Ključna reč var se koristi da deklariše odeljak koda u kom se deklarišu promenljive. Ključnu reč var ste koristili za deklaraciju promenljivih (promenljive su obrađene detaljnije u poglavlju pod nazivom .Promenljive.). Odeljak var možete deklarisati na nekoliko mesta u okviru programa. Možete postaviti odeljak var u nivou junita, možete imati odeljak var za proceduru, funkciju odnosno oba dela programa istovremeno. Takođe možete imati višestruke odeljke za promenljive u okviru junita. Listing 1.5: Junit sa dodatim odeljcima type i var unit Unit2; interface type TMyArray = array [0..19] of Byte; const AppCaption = .My Cool Program 1.0.; var X : Integer; MyArray : TMyArray; procedure DoSomething; implementation const BaseX = 20; BaseY = 200; procedure DoSomething; begin { Code for DoSomething goes here. } end; end.
  • 8. Delphi - Radno okruženje (IDE) programskog jezika - Uvod 8/8 15. Komentari u okviru koda Pre nego što obradimo jezik Pascal detaljnije, dozvolite mi da Vam ukratko objasnim kod za komentar. Komentari su linije teksta u okviru izvornog koda koji se u kodu nalaze sa svrhom da ga dokumentuju. Komentari mogu da se koriste za opisivanje šta kod radi, da daju informacije o autorskim pravima, odnosno da označe napomene koje ste naveli za sebe, odnosno za druge programere. Komentari mogu biti upotrebljeni na tri različita načina. U nastavku su navedene sve ispravne linije sa komentarima: { Don.t forget to free this memory! } { ADTAPI.PAS 2.50 Copyright (c) TurboPower Software 1996‐98 } (* Mason needs to fix this section of code *) // This is really good code! { This code needs to be reworked later } Možda najčešći tip komentara koji se koristi u Delphi programima sadrži vitičaste zagrade kao što je to ilustrovano u prva dva slučaja u prethodnom primeru. Otvorena zagrada se koristi kao početak komentara, a zatvorena zagrada se koristi kao kraj komentara. Sledeći tip komentara koristi (* za početak komentara, a *) za kraj komentara. Postoji jedna razlika između komentara naznačenih na ovaj način i komentara koji koriste vitičaste zagrade: Par (* / *) se može koristiti da označI blok velikih delova koda koji između ostalog sadrže i linije sa komentarima. Ova dva tipa komentara se mogu koristiti za komentarisanje u okviru samo jedne linije koda, odnosno komentarisanje koda u više linija. Treći tip komentara je označen kao dvostruka kosa crta. Ovakvi komentari se obično nazivaju komentari u C stilu, pošto se koriste u programskom jeziku C odnosno C++. Ovakav tip komentara se može koristiti u okviru jedne linije koda.