|
[ icobh @ 15.03.2009. 19:56 ] @
| Prije 2-3 mjeseca, nas par kolega u sklopu inovatroske sekcije studenata ETF BL, počeli raditi softversko rješenje za potrebe asistenata, a u svrhu praćenja rada studenata, evidentiranje ocijena/bodova, štampanje prijava, statistike itd... Tu nam je preporučeno da radimo crossplatform rješenje. Odabran je C++ & Qt a baza podataka bi bila XML based...
No međutim, moj subjektivan osjećaj da nam trenutno XML ubija performanse programa. Da li je to zbog Qt biblioteke ili samog XML formata, ne znam, ali me zanima šta je to specifično kod XML da ga ljudi ovoliko guraju na sva vrata? Meni ovo djeluje kao da radim sa TXT fajlom, samo malko ljepše ali ništa učinkovitije... No, gdje kod se okreneš, XML, ali zašto? |
[ momsab @ 15.03.2009. 20:20 ] @
XML je dobar kao "medjusloj" podataka (prebacivanje podataka iz jednog sistema u drugi, web servisi i slicno), u nekim slucajevima i kao baza podataka
meni nije jasno zasto ste izabrali XML koji ima ogranicenje od 2GB po fajlu (ispravice me neko ako gresim za velicinu) a ne neku bazu podataka koja moze da radi na bilo kom od poznatih operativnih sistema (PostgreSQL, MySQL....)
[ Sapphire @ 15.03.2009. 20:57 ] @
Da, XML je zamisljen kao format za reprezentaciju podataka, potpuno nezavisan od platforme, aplikacije, modula, tehnologije, baze podataka, whatever... Visenamjenski je, lako se nadopunjava, sam sebe opisuje - znaci moguce ga je upotrijebiti bez znanja o semi ili strukturi. Jedan od najboljih primjera primjene i moci XML formata i podataka su bas web servisi, gdje je moguce postici komunikaciju aplikacija napravljenih bilo kojim jezikom.
Za sta tacno koristite XML u sistemu? Zasto je bas potrebano cross-platform rjesenje?
Moje koristenje XML-a se vecinom zasnivalo na nekim osnovama, jer vecih potreba nisam imao. Ono sto hocu da kazem, nikada nisam pomisljao o koristenju XML-a kao zamjenu za bazu. Neku jednostavnu, da naravno, ali gdje je tu podrska za bilo sta komplikovanije?
Po mome misljenju, ako ste ganjali cilj da vise aplikacija medjusobno koristi te XML dokumente, umjesto baze, hmmm.. Ne znam bas...
Ako se radi o nekoj vrsti cistog slanja podataka, i razmjene, to je onda druga prica ...
[ icobh @ 15.03.2009. 21:00 ] @
Nisam ja bio tu kad se odlučivalo, naravno da bih se bunio, ali ne vjerujem da će baza ići preko 10MB, ali mi se sve čini da bi ovoliku funkcionalnost i brzinu postigao sa nekim svojim proizvoljnim txt formatom. No mene više zanima zašto je toliko XML popularan?
Što se tiče baza podataka, naš projekat je mali da bi čitav db server radio iza, stoga jedino rješenje bi bilo SQLite.
[ momsab @ 16.03.2009. 00:04 ] @
heh, ja sam za jedan mali projekat posebno isntalirao PostgreSQL na faxu da bih uospte mogao da branim rad :)
XML se odlicno pokazao za cuvanje podataka na primeru programa Ant Movie Catalog (ovo je samo primer)
[ Sapphire @ 16.03.2009. 00:29 ] @
Citat: icobh:No mene više zanima zašto je toliko XML popularan?
Uz prethodne odgovore, dovoljno je spomenuti jos razvoj Interneta -- to je sve. Uvijek je postojala potreba za univerzalnim data formatom. Ujedno, popularan je ondje gdje mu je odgovarajuca primjena, kao i sve ostalo.
Sto se tice tog samog sistema, ja sam shvatio da bi to trebao biti sistem sa vise user aplikacija (klijenata), centralnim serverom i sl. Ocito nisam dobro shvatio :)
Ujedno, u modernim racunarima, a i starijim svejedno, ne vjerujem da bi ti XML mogao stvarati tolike probleme sa performansama. Sad, opet idem ondje gdje se ne razumijem, ali da li spremate sve u jedan XML file? U tom slucaju, ako se file poveca vec na par MB, mislim da bi bilo problema sa performansama zavisno od kvalitete parsera, ili upotrebe istog. Kakav je u QT-u, ne znam. Isto tako, ne vjerujem niti da bi posebni plain text file-ovi donijeli neko poboljsanje u odnosu na skup XML fileova, jer bio opet morao napraviti neku strukturu, te odgovarajuci parser - sve bi se svelo na iste probleme.
Nek' me netko slobodno ispravi ako grijesim ...
[ Sapphire @ 16.03.2009. 02:54 ] @
Evo bas sam se sjetio jednog dobrog "realnog" primjera: banke -- tj. vecina banaka nudi export izvoda u obliku XML-a. Zasto? Pa radi podrske za 3rd party aplikacije. Ovakvih primjera ima jos mnogo...
[ obucina @ 16.03.2009. 05:00 ] @
Citat: icobh: Meni ovo djeluje kao da radim sa TXT fajlom, samo malko ljepše ali ništa učinkovitije...
Ne da nije učinkovitije, nego je i manje učinkovit od tekstualnih fajlova, a verovatno nekoliko puta manje učinkovit od binarnih reprezentacija podataka. XML ima odgovarajuće primene, a jedna od njih NIJE skladištenje podataka.
Za ilustraciju dokle se ide sa guranjem XML-a svuda i njegovom pogrešnom primenom, sledeći tekst... http://thedailywtf.com/Articles/Oh,-XML.aspx
[ mmix @ 16.03.2009. 10:43 ] @
priceless bar da ne postoji base64
Obozavao sam XML buzzword dok sam radio intervjue kad ljudi kazu da znaju i razbijaju XML, treba cuti te price.
Citat: Sapphire: Evo bas sam se sjetio jednog dobrog "realnog" primjera: banke -- tj. vecina banaka nudi export izvoda u obliku XML-a. Zasto? Pa radi podrske za 3rd party aplikacije. Ovakvih primjera ima jos mnogo...
Zapravo, "najomiljeniji" format je jos uvek QIF (Quicken Interchange Format) koji nije xml i nema nikakvu redundancy kontrolu, ali ga podrzavaju svi finansijski programi (cak i perosnal banking). Mada vec par godina banke (bar one sa kojima ja radim) pokusavaju da naprave push da klijenti predju skroz na OFX 2.0 (Open Financial eXchange) jer ga sve vise softvera podrzava a smanjio bi broj poziva bank supportu (zasto mi je dvaput ista uplata prosla? a nije nego je importovao QIF dvaput ), ali iz nekog razloga cak i klijenti koji imaju softver koji podrzava OFX i dalje skidaju QIF za svaki racun rucno pojedinacno , navika valjda, dzaba mi njima "xml ovo, xml ono, jedan fajl vise racuna, nema duplikata, bla, bla"
[ Nedeljko @ 16.03.2009. 10:50 ] @
Možeš da predstavljaš podatke i u nekom svom formatu, niko ti ne brani. Međutim, kada je tvoj format u okviru XML specifikacije, ne moraš da praviš parser i generator fajla, već koristiš postojeće klase za to. U principu se koristi za izbegavanje pravljenja parsera. Nije stvar samo u tome da ti ne moraš da ga praviš, nego ćeš olakšati posao i drugima koji budu hteli da pišu softver koji podržava tvoj format.
[ Shadowed @ 17.03.2009. 11:00 ] @
Citat: mmix: kad ljudi kazu da znaju i razbijaju XML, treba cuti te price.
Pa, daj neke primere
Verujem da ce biti zanimljivo
[ mmix @ 17.03.2009. 14:21 ] @
Pa u tom trenutku se napravim lud i pretvaram se da sam idiot koji je za XML cuo iz PC World-a pa trazim objasnjenja, malo je loosely translated i vreme je ucinilo svoje, ali generalno nekih kojih se secam:
Pozitivac: "Xml je superiorna tehnologija buducnosti koja ce jednog dana zameniti sve skupe i nefunkcionalne baze podataka"
Nemusti lingvista: "Xml skladisti podatke tako da ih svi kompjuteri razumeju automatski"
SQL hater: "Pretrazivanje XMLa je brze od SQLa jer mi kontrolisemo kod, a ne znamo sta SQL radi sa SELECT komandom" i varijacija na temu zasto su XML/XPath/foreach bolji od SQL-a
Middleware buzz serijski ubica: "Xml omogucava da BizTalk preradi sirove podatke iz web servisa kroz XPath da bi XQuery-jem te podatke izvukli iz middleware-a u business layer, itd, itd", naravno kad ga pitas kako bi recimo iskoristio Xml i BizTalk i resio integraciju green-screen DB2 aplikacije sa .NET frontend-om nastupa tajac.
Heroji revolucije: "Mi smo celu nasu enterprise CRM bazu uradili kroz XML. (zar vam to nije usporilo operacije?) Pa mi smo bili mala firma i imali smo 10-ak klijenata, ali to je radilo super brzo"
Naravno ima i totalnih luzera koji lazu a ni buzzwords nisu naucili, koji npr imaju expert XSLT u CVu a ne znaju ni sta je <xsl:stylesheet> a kamoli <xsl:template>, ili oni koji imaju XSD u CV-u a ne znaju da naprave ni osnovnu simple-types semu bez grafickog dizajnera, ali oni su smor Mada ima vise od dve godine kako nikog nisam intervjuisao, mora da sad ima nekih novih momenata (npr LINQ2XML)
Copyright (C) 2001-2024 by www.elitesecurity.org. All rights reserved.
|