XML, JSON, adatcsere, adatábrázolás

XML, JSON, adatcsere, adatábrázolás
2017-08-18T21:23:15+02:00
2017-08-19T11:10:23+02:00
2022-10-19T11:00:33+02:00
  • Tudtam hogy ezt fogod válaszolni, sőt ezeket én is tudtam.
    Sőt még sok igazság is van benne, ahogy (egyébként jól) összeszedted, bár nem mindennel értek egyet.
    De továbbra is igaz, hogy az egyszerűbb, kevesebb tudással és precizitással ("még működik!") szintre lőtték be a technologiát.
    Nem a mérnöki igényesség, hanem a gyors/olcsó/kevesebb_tudásigényű/nagy_a_profit a mozgatórugó.
    Vagyis az xml/json egy jó döntés, csak nem biztos hogy a valóban helyes célfüggvényre a válasz.

    A játékelmélet és az új közgáz vonalak óta tudjuk, hogy nem a "minden szereplő a legnagyobb profitra hajt" stratégia (azaz éles és csak a saját érdekeinket tekintő verseny) a leghatékonyabb, hanem valamilyen kooperáció és egyeztetett stratégia az összes szereplő között. De mivel ez utóbbi nincs meg, a világ nem az optimális úton jár, hanem a szükségszerűn. Ettől még te a magad, a kis mikrokörnyezetében (ezt felismerve) kitűzhetsz más stratégiákat, követhetsz más, optimálisabb célfüggvényeket.
    Mutasd a teljes hozzászólást!
  • Lazán definiált adatkapcsolatok formátuma.
    Olyan "ahogy esik úgy puffan, nem jó, de legalább működik" dolog.

    Nem. Ezen formátumok terjedése és az, hogy leváltják a korábbi formátumokat, egy alapvető változáson alapul.

    Ez pedig az, hogy mai rendszereink, szoftvereink - szemben a 20-30, de akár 10 évvel ezelőtti társaik nagy részével - már nem monolitikusak és nem (csak) lokálisan működnek - hanem ma már minden mindennel össze van kötve. A programok kommunikálnak egymással, távoli szervereken tárolják és onnan kérik le az adatokat; telemetrikát tartalmaznak; felhőbe mentenek; szinkronizálják, megosztják példányaik között az adatokat; webes szolgáltatásokat használnak és maguk is ilyeneket biztosítanak; stb.

    Márpedig az ilyen elosztott környezetekben az egyes végpontokon található szoftverek eltérő platformokon futnak, százféle eszközzel készülnek és millió féle könyvtárakat használnak - ráadásul egymástól függetlenül frissülnek, fejlődnek. Emiatt statikus szerkezeteken alapuló kommunikáció elképzelhetetlen közöttük, mint ahogy egységes adatábrázolásról sem lehet beszélni. Minden nyelv, platform eltérő "natív" adattípusokkal dolgozik, eltérő módon ad lehetőséget összetett szerkezetek definiálására, eltérő módon tudja ezeket kiszerializálni fájlba, adatfolyamba.

    Ilyen körülmények között tehát semmi értelme valamiféle bináris formátum használatának, és azt sem érdemes megkövetelni, hogy az adatformátum rögzített legyen. Ehelyett rugalmas és hibatűrő dinamikus adatábrázolása van szükség az adatcserében, ami jól viseli ha az egyik végponton alig 2 napos, a másikon meg 10 éves szoftver fut (amik ezzel összefüggésben az úgymond közös kommunikációs interfésznek is időben igen távoli változatait ismerik). És ez a formátum nyugodtan lehet szöveges, mert hiába is lenne bináris, így is úgy is át kellene alakítani, probléma lenne az eltérő bájtsorrendből, ábrázolási precizitásokból, stb.

    Ezen felismerés nyomán terjedt el anno az XML, és ugyanezen okból hódít a JSON is. Utóbbi ráadásul előbbit is elkezdi kiszorítani. Azért, mert egy JSON-fájlt nagyságrendekkel egyszerűbb feldolgozni, mint egy XML-t. Márpedig a mobil, viselhető és IoT-eszközökben a számítási kapacitás és a memória korlátos, viszont egyre nagyobb hányadát adják az egymással kommunikáló eszközöknek. Ez megint a JSON mellett szól.

    Szóval ezért váltotta le az XML és utána meg a JSON a hagyományos kommunikációs és szerializációs formátumokat, és ezért használják manapság mindenhol. Nem pedig azért, mert "ahogy esik úgy puffan, nem jó, de legalább működik".

    Ami nem működik vagy rosszabbul működik, mint a rendelkezésre álló alternatívák, azt sehol nem használják. Ezek formátumok, illetve az utóbbi években már leginkább csak a JSON térhódítása az XML és minden más rovására önmagában bizonyíték arra, hogy a legtöbb feladatra vagy "good enough" vagy egyértelműen jobb, mint más megoldások.
    Mutasd a teljes hozzászólást!
  • Az xml&json egyaránt az ördög lába, amit az ajtórésbe dugott! 

    Lazán definiált adatkapcsolatok formátuma.
    Olyan "ahogy esik úgy puffan, nem jó, de legalább működik" dolog.

    Tudom én egy elvetemült szigorúan típusos nyelv mániás vagyok, én már csak maradok a bitre pontosan definiált adatstrukturáknál és ha rugalmasság, verziózás is kell, akkor a protobuffernél. 

    De jó, legyek nagyvonalú: konfigurációs filenek tényleg alkalmas 
    Mutasd a teljes hozzászólást!
  • XML-fájlokat használjanak

    Olvastam, hogy az XML az ördög műve és nagyon redundáns. Ha viszont az azonosítókat idézőjelbe teszed, valamint az egyenlőségjeleket kettőspontra, a kacsacsőröket meg kapcsoszárójelekre cseréled, jó úton jársz a megdicsőülés JSON felé.

    Ez a hozzászólás és a rá adott válaszok a moderátor által lett átmozgatva a(z) "Hivatalos: Végleg elengedi a Java EE kezét az Oracle" témából.
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd