«« ( Date ) »» // «« ( Thread ) »» // drs - 2004

Re[2]: DOMACI + ZADATAK (dodatak :)

by Nikola Stojiljkovic
četvrtak, 20. maj 2004 - 12:52.

>> 1. u tekstu zadatka pise da Let sadrzi sifru, pocetnu i krajnju
>> destinaciju, i vreme kad ce se let obaviti. Onda nam u interfejsu
>> Reservation u deklaraciji
>> int Available(String from, String to, Date date, Flight flight);
>> ne treba ni date, ni from, ni to parametar, jer je sve to vec smesteno
>> u Flight?
Zaharije> Od Vas se trazi da implementirate bas takav
Zaharije> intrfeis. Razlog zasto je ovo
Zaharije> uvedeno jer korisnik mozda uopste nezna kojim
Zaharije> letom zeli da se vozi vec
Zaharije> zamo odakle dokle i kada pa u tom slucaju polje
Zaharije> flight ima vrednost null,
Zaharije> ili kako ga ve implementirate.

pa za tu varijantu kad je flight=null imamo drugu fju, bez flight-a
kao parametar.

ponovo mi nije bas najjasnije, ako mi vec imamo neki objekat flight zasto bi
slali i vreme, i from i to? samo da bi centralni sever mogao da nam kaze
u pojedinim situacijama da smo pogresili sa upitom?

sta podrazumevate pod vreme i datum? vreme koje se smesta u flight je
oblika H:m:s ili Y:M:D:H:m:s? isto pitanje i za date u interfejsu
Reservation... zbunjuje me to sto java.util.Date ima podrsku i za
datum i vreme.

>> 2. Da li je sifra Leta "primarni kljuc", ili je ista za sve letove na
>> jednoj relaciji ili...?
Zaharije> Sifra leta nije primarni kljuc. Primarni kljuc je sifra leta + datum kada
Zaharije> se let obavlja.

OK, ovaj datum je promenljiva u objektu flight ili je to onaj date
koji saljemo uz flight (kod npr. Available(...))?

>> 4. Da li mogu da pretpostavim da svi serveri i klijenti imaju iste
>> informacije o letovima i da tu nije neophodna sinhronizacija (npr.
>> definisem neki niz letova u sva 3 programa)?
Zaharije> NE. Morate da odradite sinhronizaciju.

Ok, jel moze onda ovako: na podredjenim serverima sa unose letovi koje
taj server obradjuje, a kasnije to centralni server pokupi i pravi jednu
listu svih letova, koju od njega uzima klijent? ili da napravimo da
klijent uzima samo letove za koje napravi upit?

a postoji i druga varijanta, da na centralnom serveru ubacujemo spisak svih
letova i zaduzenih podservera...

U kojim situacijama bi onda sinhronizovali spisak letova i da li
uopste treba da uzmemo u obzir mogucnosti da se neki let doda ili
obrise za vreme rada (pod)servera?


>> 5. Na centralnom serveru zapravo smestamo samo parove tipa
>> (PodredjeniServer, DestinacijaLeta) i nista drugo? Ne vidim zasto bi ovaj
>> server sluzio za "prihvatanje, cuvanje i podataka o rezervacijama,
>> kartama i o letovima...". To je zapravo posao podredjenih servera?
Zaharije> On na posredan nacin ima informacije o ovemu.
Zaharije> Mozete ga realizovati i kao
Zaharije> proxy, ali bi to bilo komplikovano. Vasa je da li cete sve transakcije
Zaharije> slati i centralnom serveru da on osvezava kes zbog oporavka prilikom
Zaharije> pucanja nekog od podserver. (to se ne trazi ali zbog toga je stavljen
Zaharije> onakav uvodni tekst o centralnom serveru)

ako realizujemo kao proxy, onda uopste nema komunikacije klijent-podserver?

>> 7. Da li je dozvoljeno koriscene GCJ kompajlera? Tako sam siguran da
>> na odbrani necu imati problema, jer cu doneti samo izvrsne fajlove za
>> Windows...
Zaharije> Pozeljno je da koristite sanovu javu 1.4 jer nisa siguran da ista drugo
Zaharije> moze da radi u sobi 70. Potrebno je da donesete i *.java i *.class
Zaharije> fajlove.

pa koristio bih sunovu javu 1.4, ali bih doneo *.exe i *.java fajlove
(a i *.class ako bas treba). programi kompajlirani sa gcj po nekim
testovima rade cak duplo brze i zahtevaju mnogo manje memorije jer ne
trazi JVM. zbog toga sam i mislio da se "mucim" sa gcj-om...