Hirdetés

Új hozzászólás Aktív témák

  • WonderCSabo
    félisten

    Lehet h velem van a baj, de már 15 évvel ezelőtt is elvétve láttam csak használatban java serialization-t (max RMI). Amikor fősulira jártam, meg egyemista voltam, még nem oktatták, így magamtól tanultam gyakorlatilag mindent, de ez most szíven ütött :) Többek közt azért is mert olyan témát feszeget, aminek a gyakorlatban nullához konvergál a határhaszna. Tipikus egyemista feladat. Nem véletlenül használnak inkább XML-t vagy JSON-t.

    Az egészben az a mókás, hogy ha a való életben beleszaladnál egy ilyen problémába, hogy meg kéne fejteni a működést, akkor olyan mérnökösen unit tesztelnéd, hogy biztosra legyél benne, és ne rúgassad ki magadat egy esetleges tárgyi tévedésért, ami -- valljuk be -- bármikor beüthet. Ellenben az egyemista vizsgázó kolléga (de a vizsgáztató is) nézne nagyokat, ha azt kapná feladatnak, hogy egy kódolt, aláírt SAML alapján kéne beléptetni egy felhasználót, mondjuk könnyítésképpen úgy, hogy a kliens a jó kulcsot és aláírást adja meg :)

    A Java serializáció API-ja teljességgel elhibázott, mi az, hogy be kell kopizni a függvényszignatúrákat a customhoz, és ha eltalálom jó. ha nem akkor meg se hívódik? Ehhez egy újabb interfészt kellett volna bevezetni. Van még sok dizájn flow a javában - pl. a clone() fv. az Object része, de csak akkor ok, ha az osztály implementálja a Cloneable interfészt - miért nem lehetett akkor a clone()-t eleve csak a Cloneable-be rakni...

    Viszont ez a feature nagyon is jogos. Pl. van egy objektumgráfod, kétszer is hivatkozol valahol benne az objektumra, miért is mentenéd ki kétszer az értékét? Továbbá ha ciklikus referenciád van, akkor még nagyobb probléma lenne, ha mindig mentenél, mert szépen stackoverflowt kapnál.
    Egyébként is, a gyakorlatban ez a példa sosem fog szerepelni (teljességgel hülyeség u.a. objektumot rögtön egymás után különböző értékekkel kiszerializálni, nem látom ennek use-caset).
    A JSON meg XML valóban elterjedt, de azért ezek többet foglalnak és lassabbak is, mint a Java serializálás. Én pl. Androidon szoktam használni, ahol nem fájlba mentünk objektumokat, hanem programrészek között küldjük át szerializálva.

Új hozzászólás Aktív témák