Objetktno orijentisano programiranje- Seminarski rad

  • Upload
    -

  • View
    274

  • Download
    0

Embed Size (px)

Citation preview

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    1/32

    UNIVERZITET U KRAGUJEVCUFakultet tehnikih nauka

    Objektno orijentisana analia!"iajn a ira"ua#lika$ije na #ri%eru turistike a&en$ije

    're"%et( Objektno!orijentisano #ro&ra%iranje

    )tu"enti( 'ro*esor(Jo+an )toji, -./-010 "r Vla"e Uro2e+i,Ana 'etro+i, 3/-010 Asistent(

    %r Vanja 4uko+i,

    Fakultet tehnikih nauka 5aak -017

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    2/32

    Sadraj

    Sadraj....................................................................................................................21. Opis sistema.......................................................................................................32. Uesnici (Actors) i sluajevi koriena (Use !ase)............................................"................................................................................................................................#3. $ija%ram aktivnosti (Activit& dia%ram).................................................................'$ija%rami aktivnosti slue a modelovanje dinamiki aspekata sistema.............'$ija%rami aktivnosti su korisni pri analii sluajeva upotre*e opisujui kojeaktivnosti tre*a da se uine.$ija%rami aktivnosti su dija%rami koji opisuju tokovedo%a+aja.,a%lasak je na aktivnostima o*jekata....................................................'". $ija%ram klasa (!lass $ia%ram).........................................................................-#. $ija%ram Sekvenci (Seuence $ia%ram).........................................................1/

    0. raiki korisniki interejs i kod aplikacije........................................................120.1 ompletan kod.........................................................................................2#

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    3/32

    O*jektno4orijentisano pro%ramiranje

    1. Opis sistema

    9a bi se una#re"ilo #oslo+anje Turistike a&en$ije6 i jo2 +i2e se #ribli:iloklijenti%a6 neo#ho"no je na#ra+iti o"&o+araju,i In*or%a$ioni siste%8)#e$i*ika$ija ahte+a korisnika6 o"nosno ahte+i koje bu"u,i siste% traba "a

    a"o+olji6 #re"sta+lja bitan #re"uslo+ a us#e2no "alje #rojekto+anje ii%#le%enta$iju siste%a8

    Turistika a&en$ija nu"i turisti%a 2irok ibor #uto+anja "o%a,ih i stranih loka$ija8Turisti%a je o%o&u,eno reer+isanje i ku#o+ina aran%ana "irektno u lokali%aturisti$ke a&en$ije ili #reko interneta8 U oba sluaja turisti%a je o%o&u,en #re&le"katalo&a sa "estina$ija%a sa #o"a$i%a o s%e2taju6 "u:ini #uto+anja i $eno%8Ukoliko se turist o"lui a neki o" aran%ana #ro+era+a se "a li su reer+a$ijeisto& #o#unjene i ako nisu skla#a se u&o+or8 U&o+or se on"a unosi u bau

    #o"ataka &"e se stanje aran%ana sa"a +o"i kao reer+isano na osno+u koje& se ubu"u,e %o:e #ro+eriti "a li je aran:%an slobo"an ili nije8

    9akle6 s#e$i*ika$ija I) treba "a #rika:e 2ta bu"u,i in*or%a$ioni siste% treba"a ra"i8 Veo%a je bitno o"%ah ista,i "a s#e$i*ika$ija I) #rikauje 2ta I) treba "a"a6 a ne i kako to treba "a ost+ari8

    5akultet teniki nauka 3

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    4/32

    O*jektno4orijentisano pro%ramiranje

    2. Uesnici (Actors) i sluajevi koriena (Use Case)

    Korisnike *unk$ije slu:e "a se #rika:e :eljeno #ona2anje siste%a koji sera+ija6 i ne %ora "a se na+e"e kako se *unk$ije realiuju8)lu:e as#orau%e+anje #rojektanata i krajnjih korisnika siste%a8Korisnika *unk$ija

    #re"sta+lja o#is nia ak$ija6 ukljuuju,i i +arija$ije6 koji siste% i+o"i8Korisnika *unk$ija se &ra*iki #re"sta+lja eli#so%8 Ona u+ek i%a i%e koje seu#isuje u eli#su8Korisnike *unk$ije se ko%binuju sa akteri%a ;i+o

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    5/32

    O*jektno4orijentisano pro%ramiranje

    Slika 1: Use Case dijagram sistema za menadment turistike agencije

    Use Case1:9olaak u a&en$ijuAkter:TuristPreduslovi:Turist je aintereso+an a #uto+anjeOpis: Turist "olai u a&en$iju "a bi o"abrao interesantnu #onu"u

    Izuzeci:A&en$ija trenutno ne #oslujePosledice:Turist je na2ao interesantnu #onu"u

    Use Case2:'ristu#anje sajtuAkter:TuristPreduslovi:Turist :eli "a #utujeOpis: Turist #ristu#a internet sajtu o"&o+araju,e turistike a&en$ije s $ilje% "a

    #rona

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    6/32

    O*jektno4orijentisano pro%ramiranje

    Izuzeci:A&en$ija trenutno ne #oslujePosledice:Turist je na2ao interesantnu #onu"u

    Use Case4:'re&le" elektrosko& katalo&a

    Akter:TuristPreduslovi:Turist :eli "a #utujeOpis: Turist #ristu#a >eb strani$i;sajtu= turistike a&en$ija "a bi #re&le"aokatalo& #onu"a i o"abrao o"&o+araju,i ani%lji+ aran:%anIzuzeci:'a" >eb ser+era turistike a&en$ije6 i ne %o&u,nost #ristu#a isto%Posledice:Turist je na2ao a nje&a ani%lji+u #onu"u

    Use Case5:'ro+era reer+a$ije #reko sajtaAkter:Turist6A"%inistrator bae #o"ataka

    Preduslovi:Turist je o"abrao i reer+isao #onu"uOpis: Turist #ristu#a sajtu turistike a&en$ije i o" a"%inistratora bae #o"atakaturistike a&en$ije ahte+a #ro+eru reer+a$ije8A"%inistrator %u 2alje #o+ratnu

    #oruku o #ot+r"i reer+a$ijeIzuzeci:'roble%i sa internet #ristu#o% sajtu turistike a&en$ijePosledice:Turist #ot#isuje u&o+or sa a&en$ijo%

    Use Case:'ot#isi+anje u&o+ora #reko sajtaAkter:Turist6A"%inistrator bae #o"atakaPreduslovi:Turist je o"abrao #onu"uOpis: Turist #ristu#a sajtu turistike a&en$ije i o" a"%inistratora bae #o"atakaturistike a&en$ije ahte+a "a %u #o2alje u&o+or "a bi &a #ot#isaoIzuzeci:'roble%i sa internet #ristu#o% sajtu turistike a&en$ijePosledice:Turist o"lai na #uto+anje

    Use Case!:Zahte+ a #ro+eru reer+a$ijeAkter:Turist6Ra"nik turistike a&en$ijePreduslovi:Turist je o"abrao i reer+isao #onu"uOpis: Turist "olai u turistiku a&en$iju i o" ra"nika;slu:benika= turistikea&en$ije ahte+a "a #ro+eri nje&o+u reer+a$iju

    Izuzeci:A&en$ija trenutno ne #oslujePosledice:Turist #ot#isuje u&o+or o #uto+anju sa a&en$ijo%

    Use Case":U&o+orAkter:Turist6Ra"nik turistike a&en$ijePreduslovi:Turist je o"abrao i reer+isao #onu"u

    5akultet teniki nauka 0

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    7/32

    O*jektno4orijentisano pro%ramiranje

    Opis: Turist "olai u turistiku a&en$iju i o" ra"nika;slu:benika= turistikea&en$ije ahte+a "a %u "onese u&o+or ra"i #ot#isi+anja isto&Izuzeci:Ne%a "o+oljno #utnika6 u&o+or se raski"aPosledice:Turist o"lai na :eljeno #uto+anje

    Use Case#:'ro+era reer+a$ijeAkter:A"%inistrator bae #o"ataka6 Ra"nik turistike a&en$ijePreduslovi:Turist je o"abrao i reer+isao #onu"uOpis: Nakon 2to turista "o

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    8/32

    O*jektno4orijentisano pro%ramiranje

    Slika 2: Dijagram aktivnosti za proces rezervacije aranzmana

    Na sli$i 7 #rikaan je "ija&ra% stanja siste%a a %ena":%ent turistike a&en$ije8

    5akultet teniki nauka 6

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    9/32

    O*jektno4orijentisano pro%ramiranje

    Slika 3: Dijagram stanja sistema za menadment turisticke agencije

    #. Dijaram klasa (Class Diaram)

    5akultet teniki nauka -

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    10/32

    O*jektno4orijentisano pro%ramiranje

    Naj+a:nija i naje2,a +rsta U@4 "ija&ra%a su "ija&ra%i klasa8Osno+niele%enti "ija&ra%a klasa su neo#ho"ni s+i%a oni%a koji se ba+e +iuelni%%o"elo+anje%6 "ok se na#re"niji ele%enti tih "ija&ra%a re

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    11/32

    O*jektno4orijentisano pro%ramiranje

    9ija&ra%i sek+en$i s#a"aju u &ru#u interak$ionih "ija&ra%a koji slu:e ao#is "ina%iko& as#ekta %o"ela8'ore" sek+en$ijalnih6 u o+u &ru#u "ija&ra%a s#a"aju i kolabora$ioni "ija&ra%i8O+i "ija&ra%i su se%antiki je"naki i %o&u,e je +r2iti %e

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    12/32

    O*jektno4orijentisano pro%ramiranje

    Slika !: Sekvencijalni dijagram za naruivanje putem interneta

    '. raiki korisniki interejs i ko" aplikacije

    5akultet teniki nauka 12

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    13/32

    O*jektno4orijentisano pro%ramiranje

    Slika ": Unos ponude u turistikoj agenciji

    privatevoidbutton1_Click(objectsender, EventArgse)

    {

    conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = ./0!E* /0*O ponude (id, 'esto, 2otel, br_dana, cena,br_osoba) 3A45E! (."$%/& tabele kontakt itaju se podaci i& kolone i'e%$

    {ni&6ik7 = newonuda()"ni&6ik7#/ = Convert#*o/nt18(tet9o1#*et)"c'd#Co''and*et := .;.: ni&6ik7#/ : .;,."ni&6ik7#otel = tet9o1?#*et"c'd#Co''and*et := .;.: ni&6ik7#>otel : .;,."

    ni&6ik7#9roj_dana = Convert#*o/nt18(tet9o1@#*et)"

    c'd#Co''and*et := .;.: ni&6ik7#9roj_dana : .;,."

    i(radio9utton1#C2ecked == true){ni&6ik7#9roj = Convert#*o/ntB(radio9utton1#*et)"

    5akultet teniki nauka 13

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    14/32

    O*jektno4orijentisano pro%ramiranje

    elsei(radio9utton#C2ecked == true){ni&6ik7#9roj = Convert#*o/ntB(radio9utton#*et)"elsei(radio9uttonB#C2ecked == true){

    ni&6ik7#9roj = Convert#*o/ntB(radio9uttonB#*et)"elsei(radio9uttonD#C2ecked == true){ni&6ik7#9roj = Convert#*o/ntB(radio9uttonD#*et)"

    ni&6ik7#Cena = Convert#*oouble(tet9oB#*et)"c'd#Co''and*et := .;.: ni&6ik7#Cena : .;,."c'd#Co''and*et := .;.: ni&6ik7#9roj : .;."c'd#Co''and*et := .)."c'd#Eecuteeader()"

    ik::"

    Slika #: Spisak ponuda u $azi podataka i ispis odgovaraju%i& ponuda

    privatevoidbutton_Click(objectsender, EventArgse){list9o1#/te's#Clear()"

    5akultet teniki nauka 1"

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    15/32

    O*jektno4orijentisano pro%ramiranje

    conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = .!E4EC* % O< ponude."

    dr = c'd#Eecuteeader()"$%i&vrFava ko'andu koja vraGa redove tabela%$

    w2ile(dr#ead())$%Hita jedan po jedna red%${list9o1#/te's#Add(./ ponudeI .: dr#Jet3alue(K))"list9o1#/te's#Add(.EE br_osoba = .: br_osoba : .A0 cena N .: cena : .."$%/& tabele kontakt itaju se podaci i& kolonei'e%$dr = c'd#Eecuteeader()"$%i&vrFava ko'andu koja vraGa redove tabela%$

    w2ile(dr#ead())$%Hita jedan po jedna red%${list9o#/te's#Add(./ ponudeI .: dr#Jet3alue(K))"list9o#/te's#Add(.

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    16/32

    O*jektno4orijentisano pro%ramiranje

    list9o#/te's#Add(.>otelI .: dr#Jet3alue())"list9o#/te's#Add(.9r danaI .: dr#Jet3alue(B))"list9o#/te's#Add(.CenaI .: dr#Jet3alue(D))"list9o#/te's#Add(.9r osobaI .: dr#Jet3alue(L))"list9o#/te's#Add(..)"

    Slika ': Unos podataka o &otelima sa kojima agencija sara(uje

    privatevoidbuttonD_Click_1(objectsender, EventArgse){

    intbr_&ve&dica"conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = ./0!E* /0*O 2oteli (/, na&iv, grad, adresa,br_&ve&dica) 3A45E! (."$%/& tabele kontakt itaju se podaci i& kolone i'e%$

    ni&>t6ik7 = new>otel()"ni&>t6ik7#/d_2otela = Convert#*o/ntB(tet9oL#*et)"c'd#Co''and*et := .;.: ni&>t6ik7#/d_2otela : .;,."

    5akultet teniki nauka 10

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    17/32

    O*jektno4orijentisano pro%ramiranje

    ni&>t6ik7#na&iv = tet9o8#*et"c'd#Co''and*et := .;.: ni&>t6ik7#na&iv : .;,."ni&>t6ik7#grad = tet9oK#*et"c'd#Co''and*et := .;.: ni&>t6ik7#grad : .;,."ni&>t6ik7#adresa = tet9o1#*et"c'd#Co''and*et := .;.: ni&>t6ik7#adresa : .;,."

    i(radio9utton#C2ecked == true){ni&>t6ik7#br&v = Convert#*o/ntB(radio9utton#*et)"elsei(radio9utton1K#C2ecked == true){ni&>t6ik7#br&v = Convert#*o/ntB(radio9utton1K#*et)"elsei(radio9utton11#C2ecked == true){ni&>t6ik7#br&v = Convert#*o/ntB(radio9utton11#*et)"elsei(radio9utton1#C2ecked == true){ni&>t6ik7#br&v = Convert#*o/ntB(radio9utton1#*et)"elsei(radio9utton1B#C2ecked == true){ni&>t6ik7#br&v = Convert#*o/ntB(radio9utton1B#*et)"

    br_&ve&dica = ni&>t6ik7#br&v"

    c'd#Co''and*et := .;.: br_&ve&dica : .;."c'd#Co''and*et := .)."

    c'd#Eecuteeader()"

    ik::"

    5akultet teniki nauka 1'

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    18/32

    O*jektno4orijentisano pro%ramiranje

    Slika 1): Spisak &otela i prikazivanje &otela sa odre(enim $rojem zvevdica

    privatevoidbutton_Click(objectsender, EventArgse){list9oL#/te's#Clear()"

    conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = .!E4EC* % O< 2oteli."$%/& tabele kontakt itaju sepodaci i& kolone i'e%$dr = c'd#Eecuteeader()"$%i&vrFava ko'andu koja vraGa redove tabela%$

    w2ile(dr#ead())$%Hita jedan po jedna red%${list9oL#/te's#Add(./ 2otelaI .: dr#Jet3alue(K))"list9oL#/te's#Add(.0a&ivI .: dr#Jet3alue(1))"list9oL#/te's#Add(.JradI .: dr#Jet3alue())"

    list9oL#/te's#Add(.AdresaI .: dr#Jet3alue(B))"list9oL#/te's#Add(.9r &ve&dicaI .: dr#Jet3alue(D))"list9oL#/te's#Add(..)"

    privatevoidbutton1K_Click(objectsender, EventArgse){list9o8#/te's#Clear()"intbr_&ve&dica = K"

    5akultet teniki nauka 16

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    19/32

    O*jektno4orijentisano pro%ramiranje

    i(radio9utton1D#C2ecked == true)br_&ve&dica = 1"

    i(radio9utton1L#C2ecked == true)br_&ve&dica = "

    i(radio9utton18#C2ecked == true)br_&ve&dica = B"

    i(radio9utton1?#C2ecked == true)br_&ve&dica = D"

    i(radio9utton1@#C2ecked == true)br_&ve&dica = L"

    conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = .!E4EC* % O< 2oteli M>EE br_&ve&dica = .: br_&ve&dica: .."$%/& tabele kontakt itaju se podaci i& kolone i'e%$dr = c'd#Eecuteeader()"$%i&vrFava ko'andu koja vraGa redove tabela%$

    w2ile(dr#ead())$%Hita jedan po jedna red%${list9o8#/te's#Add(./ 2otelaI .: dr#Jet3alue(K))"list9o8#/te's#Add(.0a&ivI .: dr#Jet3alue(1))"list9o8#/te's#Add(.JradI .: dr#Jet3alue())"list9o8#/te's#Add(.AdresaI .: dr#Jet3alue(B))"list9o8#/te's#Add(.9r &ve&dicaI .: dr#Jet3alue(D))"list9o8#/te's#Add(..)"

    5akultet teniki nauka 1-

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    20/32

    O*jektno4orijentisano pro%ramiranje

    Slika 11: Unos radnika u $azu podataka

    privatevoidbuttonL_Click(objectsender, EventArgse){

    conn = newOlebConnection(conn!tring)"conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = ./0!E* /0*O radnici (sira_radnika, radno_'esto, i'e,pre&i'e, adresa, broj_teleona) 3A45E! (."$%/& tabele kontakt itaju sepodaci i& kolone i'e%$$$dr = c'd#Eecuteeader()"$%i&vrFava ko'andu koja vraGa redove tabela%$

    $$w2ile (dr#ead())$% Hita jedan po jedna red %$$${$$ list9o1#/te's#Add(dr#Jet3alue(K))"$%4ist9o kontrola se popunjava saproitani' vrednosti'a koristeGi 'etodu Jet3alue()%$

    $$

    {ni&ad6ik7 = newadnik()"ni&ad6ik7#siraadnika = Convert#*o/ntB(tet9o?#*et)"c'd#Co''and*et := .;.: ni&ad6ik7#siraadnika : .;,."ni&ad6ik7#radno_'esto = tet9o1#*et"c'd#Co''and*et := .;.: ni&ad6ik7#radno_'esto : .;,."ni&ad6ik7#i'e = tet9o@#*et"c'd#Co''and*et := .;.: ni&ad6ik7#i'e : .;,."

    5akultet teniki nauka 2/

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    21/32

    O*jektno4orijentisano pro%ramiranje

    ni&ad6ik7#pre&i'e = tet9o#*et"c'd#Co''and*et := .;.: ni&ad6ik7#pre&i'e : .;,."ni&ad6ik7#adresa = tet9o1K#*et"c'd#Co''and*et := .;.: ni&ad6ik7#adresa : .;,."ni&ad6ik7#broj_teleona = Convert#*oouble(tet9o11#*et)"c'd#Co''and*et := .;.: ni&ad6ik7#broj_teleona : .;."c'd#Co''and*et := .)."

    c'd#Eecuteeader()"ik::"

    Slika 12: *rikaz svi& zaposleni&

    privatevoidbutton8_Click(objectsender, EventArgse){list9oB#/te's#Clear()"

    conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = .!E4EC* % O< radnici."$%/& tabele kontakt itaju sepodaci i& kolone i'e%$dr = c'd#Eecuteeader()"$%i&vrFava ko'andu koja vraGa redove tabela%$

    5akultet teniki nauka 21

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    22/32

    O*jektno4orijentisano pro%ramiranje

    w2ile(dr#ead())$%Hita jedan po jedna red%${list9oB#/te's#Add(.Pira radnikaI .: dr#Jet3alue(K))"list9oB#/te's#Add(.adno 'estoI .: dr#Jet3alue(1))"list9oB#/te's#Add(./'eI .: dr#Jet3alue())"list9oB#/te's#Add(.re&i'eI .: dr#Jet3alue(B))"

    list9oB#/te's#Add(.AdresaI .: dr#Jet3alue(D))"list9oB#/te's#Add(.9roj teleonaI .: dr#Jet3alue(L))"list9oB#/te's#Add(..)"

    Slika 13: Unos podataka o turisti

    privatevoidbutton?_Click(objectsender, EventArgse){conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = ./0!E* /0*O turisti (/_turiste, i'e, pre&i'e, adresa,br_teleona) 3A45E! (."$%/& tabele kontakt itaju se podaci i& kolone i'e%$

    5akultet teniki nauka 22

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    23/32

    O*jektno4orijentisano pro%ramiranje

    $$dr = c'd#Eecuteeader()"$%i&vrFava ko'andu koja vraGa redove tabela%$

    $$w2ile (dr#ead())$% Hita jedan po jedna red %$$${$$ list9o1#/te's#Add(dr#Jet3alue(K))"$%4ist9o kontrola se popunjava saproitani' vrednosti'a koristeGi 'etodu Jet3alue()%$$$

    {ni&*r6ik7 = new*urista()"ni&*r6ik7#id_turiste = Convert#*o/ntB(tet9o18#*et)"c'd#Co''and*et := .;.: ni&*r6ik7#id_turiste : .;,."ni&*r6ik7#i'e = tet9o1#*et"c'd#Co''and*et := .;.: ni&*r6ik7#i'e : .;,."ni&*r6ik7#pre&i'e = tet9o1B#*et"c'd#Co''and*et := .;.: ni&*r6ik7#pre&i'e : .;,."ni&*r6ik7#adresa = tet9o1D#*et"c'd#Co''and*et := .;.: ni&*r6ik7#adresa : .;,."ni&*r6ik7#teleon = Convert#*oouble(tet9o1L#*et)"c'd#Co''and*et := .;.: ni&*r6ik7#teleon : .;."c'd#Co''and*et := .)."c'd#Eecuteeader()"ik::"

    5akultet teniki nauka 23

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    24/32

    O*jektno4orijentisano pro%ramiranje

    Slika 14: *rikaz podataka o turistima

    privatevoidbutton@_Click(objectsender, EventArgse){list9oD#/te's#Clear()"

    conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = .!E4EC* % O< turisti."$%/& tabele kontakt itaju sepodaci i& kolone i'e%$dr = c'd#Eecuteeader()"$%i&vrFava ko'andu koja vraGa redove tabela%$

    w2ile(dr#ead())$%Hita jedan po jedna red%${list9oD#/te's#Add(./'eI .: dr#Jet3alue(K))"list9oD#/te's#Add(.re&i'eI .: dr#Jet3alue(1))"

    list9oD#/te's#Add(.AdresaI .: dr#Jet3alue())"list9oD#/te's#Add(.9roj teleonaI .: dr#Jet3alue(B))"list9oD#/te's#Add(./ turisteI .: dr#Jet3alue(D))"list9oD#/te's#Add(..)"

    5akultet teniki nauka 2"

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    25/32

    O*jektno4orijentisano pro%ramiranje

    '.1 *ompletan ko"using!+ste'"

    using!+ste'#Collections#Jeneric"using!+ste'#Co'ponentotel"publicint9roj_dana"publicdoubleCena"publicint9roj"publicclassadnik{publicintsiraadnika"publicstringradno_'esto"publicstringi'e"publicstringpre&i'e"publicstringadresa"publicdoublebroj_teleona"publicclass*urista{publicstringi'e"publicstringpre&i'e"publicstringadresa"publicdoubleteleon"

    5akultet teniki nauka 2#

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    26/32

    O*jektno4orijentisano pro%ramiranje

    publicintid_turiste"publicclass>otel{publicint/d_2otela"publicstringna&iv"publicstringgrad"

    publicstringadresa"publicintbr&v">otel67 ni&>t = new>otel6LK7"*urista67 ni&*r = new*urista6LK7"adnik67 ni&ad = newadnik6LK7"onuda67 ni& = newonuda6LK7"inti, ik = K"privatevoidtet9o11_*etC2anged(objectsender, EventArgse){

    privatevoidlabel1@_Click(objectsender, EventArgse){

    privatevoidbutton1_Click(objectsender, EventArgse){

    conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = ./0!E* /0*O ponude (id, 'esto, 2otel, br_dana,

    ukupna_cena, br_osoba) 3A45E! (."$%/& tabele kontakt itaju se podaci i&kolone i'e%$

    {ni&6ik7 = newonuda()"ni&6ik7#/ = Convert#*o/nt18(tet9o1#*et)"c'd#Co''and*et := .;.: ni&6ik7#/ : .;,."ni&6ik7#otel = tet9o1?#*et"c'd#Co''and*et := .;.: ni&6ik7#>otel : .;,."

    ni&6ik7#9roj_dana = Convert#*o/nt18(tet9o1@#*et)"

    c'd#Co''and*et := .;.: ni&6ik7#9roj_dana : .;,."

    i(radio9utton1#C2ecked == true){ni&6ik7#9roj = Convert#*o/ntB(radio9utton1#*et)"elsei(radio9utton#C2ecked == true){ni&6ik7#9roj = Convert#*o/ntB(radio9utton#*et)"

    5akultet teniki nauka 20

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    27/32

    O*jektno4orijentisano pro%ramiranje

    elsei(radio9uttonB#C2ecked == true){ni&6ik7#9roj = Convert#*o/ntB(radio9uttonB#*et)"elsei(radio9uttonD#C2ecked == true){

    ni&6ik7#9roj = Convert#*o/ntB(radio9uttonD#*et)"

    ni&6ik7#Cena = Convert#*oouble(tet9oB#*et)"c'd#Co''and*et := .;.: ni&6ik7#Cena : .;,."c'd#Co''and*et := .;.: ni&6ik7#9roj : .;."c'd#Co''and*et := .)."c'd#Eecuteeader()"

    ik::"

    privatevoidbutton_Click(objectsender, EventArgse){list9o1#/te's#Clear()"

    conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = .!E4EC* % O< ponude."$%/& tabele kontakt itaju sepodaci i& kolone i'e%$dr = c'd#Eecuteeader()"$%i&vrFava ko'andu koja vraGa redove tabela%$

    w2ile(dr#ead())$%Hita jedan po jedna red%$

    {list9o1#/te's#Add(./ ponudeI .: dr#Jet3alue(K))"list9o1#/te's#Add(.

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    28/32

    O*jektno4orijentisano pro%ramiranje

    i(radio9utton?#C2ecked == true)br_osoba = B"

    i(radio9utton@#C2ecked == true)br_osoba = D"

    conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = .!E4EC* % O< ponude M>EE br_osoba = .: br_osoba : .A0 ukupna_cena N .: cena : .."$%/& tabele kontakt itaju se podaci i&kolone i'e%$dr = c'd#Eecuteeader()"$%i&vrFava ko'andu koja vraGa redove tabela%$

    w2ile(dr#ead())$%Hita jedan po jedna red%${list9o#/te's#Add(./ ponudeI .: dr#Jet3alue(K))"list9o#/te's#Add(.

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    29/32

    O*jektno4orijentisano pro%ramiranje

    {ni&ad6ik7 = newadnik()"ni&ad6ik7#siraadnika = Convert#*o/ntB(tet9o?#*et)"c'd#Co''and*et := .;.: ni&ad6ik7#siraadnika : .;,."ni&ad6ik7#radno_'esto = tet9o1#*et"c'd#Co''and*et := .;.: ni&ad6ik7#radno_'esto : .;,."

    ni&ad6ik7#i'e = tet9o@#*et"c'd#Co''and*et := .;.: ni&ad6ik7#i'e : .;,."ni&ad6ik7#pre&i'e = tet9o#*et"c'd#Co''and*et := .;.: ni&ad6ik7#pre&i'e : .;,."ni&ad6ik7#adresa = tet9o1K#*et"c'd#Co''and*et := .;.: ni&ad6ik7#adresa : .;,."ni&ad6ik7#broj_teleona = Convert#*oouble(tet9o11#*et)"c'd#Co''and*et := .;.: ni&ad6ik7#broj_teleona : .;."c'd#Co''and*et := .)."c'd#Eecuteeader()"ik::"

    privatevoidbutton8_Click(objectsender, EventArgse){list9oB#/te's#Clear()"

    conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = .!E4EC* % O< radnici."$%/& tabele kontakt itaju sepodaci i& kolone i'e%$dr = c'd#Eecuteeader()"$%i&vrFava ko'andu koja vraGa redove tabela%$

    w2ile(dr#ead())$%Hita jedan po jedna red%${list9oB#/te's#Add(.Pira radnikaI .: dr#Jet3alue(K))"list9oB#/te's#Add(.adno 'estoI .: dr#Jet3alue(1))"list9oB#/te's#Add(./'eI .: dr#Jet3alue())"list9oB#/te's#Add(.re&i'eI .: dr#Jet3alue(B))"list9oB#/te's#Add(.AdresaI .: dr#Jet3alue(D))"list9oB#/te's#Add(.9roj teleonaI .: dr#Jet3alue(L))"list9oB#/te's#Add(..)"

    privatevoidbutton?_Click(objectsender, EventArgse){

    conn = newOlebConnection(conn!tring)"conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = ./0!E* /0*O turisti (/_turiste, i'e, pre&i'e, adresa,br_teleona) 3A45E! (."$%/& tabele kontakt itaju se podaci i& kolone i'e%$

    {

    5akultet teniki nauka 2-

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    30/32

    O*jektno4orijentisano pro%ramiranje

    ni&*r6ik7 = new*urista()"ni&*r6ik7#id_turiste = Convert#*o/ntB(tet9o18#*et)"c'd#Co''and*et := .;.: ni&*r6ik7#id_turiste : .;,."ni&*r6ik7#i'e = tet9o1#*et"c'd#Co''and*et := .;.: ni&*r6ik7#i'e : .;,."ni&*r6ik7#pre&i'e = tet9o1B#*et"c'd#Co''and*et := .;.: ni&*r6ik7#pre&i'e : .;,."

    ni&*r6ik7#adresa = tet9o1D#*et"c'd#Co''and*et := .;.: ni&*r6ik7#adresa : .;,."ni&*r6ik7#teleon = Convert#*oouble(tet9o1L#*et)"c'd#Co''and*et := .;.: ni&*r6ik7#teleon : .;."c'd#Co''and*et := .)."c'd#Eecuteeader()"ik::"

    privatevoidbutton@_Click(objectsender, EventArgse){list9oD#/te's#Clear()"

    conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = .!E4EC* % O< turisti."$%/& tabele kontakt itaju sepodaci i& kolone i'e%$dr = c'd#Eecuteeader()"$%i&vrFava ko'andu koja vraGa redove tabela%$

    w2ile(dr#ead())$%Hita jedan po jedna red%${list9oD#/te's#Add(./'eI .: dr#Jet3alue(K))"list9oD#/te's#Add(.re&i'eI .: dr#Jet3alue(1))"

    list9oD#/te's#Add(.AdresaI .: dr#Jet3alue())"list9oD#/te's#Add(.9roj teleonaI .: dr#Jet3alue(B))"list9oD#/te's#Add(./ turisteI .: dr#Jet3alue(D))"list9oD#/te's#Add(..)"

    privatevoidc2eck9o1_C2eckedC2anged(objectsender, EventArgse){

    privatevoidgroup9oB_Enter(objectsender, EventArgse){

    privatevoidbuttonD_Click_1(objectsender, EventArgse){

    intbr_&ve&dica"conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$

    5akultet teniki nauka 3/

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    31/32

    O*jektno4orijentisano pro%ramiranje

    c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = ./0!E* /0*O 2oteli (/, na&iv, grad, adresa,br_&ve&dica) 3A45E! (."$%/& tabele kontakt itaju se podaci i& kolone i'e%$

    ni&>t6ik7 = new>otel()"ni&>t6ik7#/d_2otela = Convert#*o/ntB(tet9oL#*et)"

    c'd#Co''and*et := .;.: ni&>t6ik7#/d_2otela : .;,."ni&>t6ik7#na&iv = tet9o8#*et"c'd#Co''and*et := .;.: ni&>t6ik7#na&iv : .;,."ni&>t6ik7#grad = tet9oK#*et"c'd#Co''and*et := .;.: ni&>t6ik7#grad : .;,."ni&>t6ik7#adresa = tet9o1#*et"c'd#Co''and*et := .;.: ni&>t6ik7#adresa : .;,."

    i(radio9utton#C2ecked == true){ni&>t6ik7#br&v = Convert#*o/ntB(radio9utton#*et)"elsei(radio9utton1K#C2ecked == true){ni&>t6ik7#br&v = Convert#*o/ntB(radio9utton1K#*et)"elsei(radio9utton11#C2ecked == true){ni&>t6ik7#br&v = Convert#*o/ntB(radio9utton11#*et)"elsei(radio9utton1#C2ecked == true){ni&>t6ik7#br&v = Convert#*o/ntB(radio9utton1#*et)"elsei(radio9utton1B#C2ecked == true){ni&>t6ik7#br&v = Convert#*o/ntB(radio9utton1B#*et)"

    br_&ve&dica = ni&>t6ik7#br&v"

    c'd#Co''and*et := .;.: br_&ve&dica : .;."c'd#Co''and*et := .)."

    c'd#Eecuteeader()"

    ik::"

    privatevoidbutton_Click(objectsender, EventArgse)

    {list9oL#/te's#Clear()"

    conn = newOlebConnection(conn!tring)"

    conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = .!E4EC* % O< 2oteli."$%/& tabele kontakt itaju sepodaci i& kolone i'e%$

    5akultet teniki nauka 31

  • 8/12/2019 Objetktno orijentisano programiranje- Seminarski rad

    32/32

    O*jektno4orijentisano pro%ramiranje

    dr = c'd#Eecuteeader()"$%i&vrFava ko'andu koja vraGa redove tabela%$

    w2ile(dr#ead())$%Hita jedan po jedna red%${list9oL#/te's#Add(./ 2otelaI .: dr#Jet3alue(K))"list9oL#/te's#Add(.0a&ivI .: dr#Jet3alue(1))"list9oL#/te's#Add(.JradI .: dr#Jet3alue())"

    list9oL#/te's#Add(.AdresaI .: dr#Jet3alue(B))"list9oL#/te's#Add(.9r &ve&dicaI .: dr#Jet3alue(D))"list9oL#/te's#Add(..)"

    privatevoidbutton1K_Click(objectsender, EventArgse){list9o8#/te's#Clear()"intbr_&ve&dica = K"

    i(radio9utton1D#C2ecked == true)br_&ve&dica = 1"

    i(radio9utton1L#C2ecked == true)br_&ve&dica = "

    i(radio9utton18#C2ecked == true)br_&ve&dica = B"

    i(radio9utton1?#C2ecked == true)br_&ve&dica = D"

    i(radio9utton1@#C2ecked == true)br_&ve&dica = L"

    conn = newOlebConnection(conn!tring)"conn#Open()"$%Otvranje ba&e podataka%$c'd#Connection = conn"$%o&icioniranje na poetak prvog reda%$c'd#Co''and*+pe = Co''and*+pe#*et"$%Odre-ivanje tipa podataka%$c'd#Co''and*et = .!E4EC* % O< 2oteli M>EE br_&ve&dica = .: br_&ve&dica: .."$%/& tabele kontakt itaju se podaci i& kolone i'e%$dr = c'd#Eecuteeader()"$%i&vrFava ko'andu koja vraGa redove tabela%$

    w2ile(dr#ead())$%Hita jedan po jedna red%${list9o8#/te's#Add(./ 2otelaI .: dr#Jet3alue(K))"list9o8#/te's#Add(.0a&ivI .: dr#Jet3alue(1))"list9o8#/te's#Add(.JradI .: dr#Jet3alue())"

    list9o8#/te's#Add(.AdresaI .: dr#Jet3alue(B))"list9o8#/te's#Add(.9r &ve&dicaI .: dr#Jet3alue(D))"list9o8#/te's#Add(..)"