Citace od: JSH kdy 11. 07. 2018, 19:37:20
Napsáno tu bylo spousta věcí. Ale když se podívám na nějaké testy https://www.infragistics.com/community/blogs/b/torrey-betts/posts/mobile-performance-testing-json-vs-xml nebo https://www.codeproject.com/Articles/604720/JSON-vs-XML-Some-hard-numbers-about-verbosity tak to tak opravdu nevypadá.
Napsáno tu bylo spousta věcí, a vy je ignorujete. ,,Ukecanost" formátu není užitečná proto, aby se lépe četl strojům, ale aby se lépe četl lidem. Takže ta vaše měření jsou sice hezká, ale měří něco úplně jiného.
Citace od: JSH kdy 11. 07. 2018, 19:37:20
Ono se stačí podívat na svg. Velké kusy toho formátu vlastně nejsou xml, ale stringy s vlastním výrazně jednodušším formátem. Přepsat to do xml by i při použití jednoznakových elementů strašně nabobtnalo. Seznamy v JSONu jsou daleko kompaktnější.
Nikdo netvrdí, že SVG je dobře navržený XML formát. Znovu argumentujete tím, že větší XML je špatně, ale otázka zněla, proč je to špatně. Já jsem uváděl důvod, proč ,,ukecané" XML je správně. Pokud chci formát, který se bude dobře zpracovávat strojům, nebudu vůbec používat textový formát, ale nějaký binární. JSON je v tomhle horší, protože je špatně čitelný i pro lidi i pro stroje.
Citace od: JSH kdy 11. 07. 2018, 19:37:20
Já netvrdím, že XML je vždycky bloat. Ve spoustě případů ta ukecanost nevadí. Ale tvrdit, že ukecané není, je fakt síla.
Jenže tady nikdo netvrdil, že XML není ukecané. Psal jsem, že XML ukecané je, a je to tak záměrně, aby bylo dobře čitelné pro lidi.
Citace od: JSH kdy 11. 07. 2018, 19:37:20
Ano, jeden z problémů XML je, že je to moloch.
Co přesně je moloch? Standard, formát, nějaká knihovna?
Citace od: JSH kdy 11. 07. 2018, 19:37:20
Ano, kdybychom měli XML bez nevýhod XML, tak bychom JSON možná nepotřebovali.
Které jsou to ty nevýhody? Já jsem psalo jedné vlastnosti, která se prakticky nepoužívá, takže to XML bez nevýhod XML se reálně používá. Navíc pořád nějak nevidím ty výhody JSONu oproti XML. Že nemá komentáře? Že nejsou prakticky dostupné nástroje pro validaci schémat, pro dotazování, pro transformace?
Citace od: JSH kdy 11. 07. 2018, 19:37:20
To máte dobré. Pro řešení mých problémů potřebuju získat data z celého JSONu jeho stupidní deserializací. Vybírat kusy pomocí jakýchkoliv dotazů je mi na houby. Prostě řeším úplně jiné problémy, než vy.
Tak to vám gratuluju, že vždy dostáváte jenom perfektně zdokumentované JSONy, u kterých máte 100% jistotu, že té dokumentaci odpovídají. Takže je můžete zpracovávat jenom aplikací a nikdy nemusíte řešit žádné problémy. Mně se dostávají do rukou JSONy, které tak perfektně zdokumentované nejsou, občas je podezření, že někde není něco úplně v pořádku, takže je potřeba ten JSON otevřít ručně a podívat se dovnitř. Až někdy budete muset nějaký JSON otevřít v textovém editoru, pochopíte, o čem píšu.
Citace od: JSH kdy 11. 07. 2018, 19:37:20
Že je ukecanější
To je výhoda, nikoli nevýhoda.
Citace od: JSH kdy 11. 07. 2018, 19:37:20
pomaleji se parsuje. Že to zrovna ve vašem případě nevadí neznamená, že někdo jiný nemůže řešit diametrálně odlišné problémy, kde to sakra vadí.
Souhlasím, XML se parsuje pomaleji než vhodně zvolený binární formát. Ale pokud budu potřebovat rychlé parsování, nebudu používat JSON. Navíc i to XML může být při parsování rychlejší, protože si můžu pomocí XML schématu určit, že třeba důležité položky mají být na začátku, a zbytek dokumentu můžu klidně ignorovat. JSON musím rozparsovat celý, protože ta důležitá položka klidně může být až úplně na konci.
Citace od: JSH kdy 11. 07. 2018, 19:37:20
Že se to doplňuje až po letech znamená, že to leta nikdo až tak moc nepotřeboval (nebo v případech že jo, použil něco jiného).
A nebo nevěděl, že to, co dělá otrocky ručně, se dá dělat i civilizovaně.
Citace od: JSH kdy 11. 07. 2018, 19:37:20
Spíš jako bez šroubováku. A je spousta programátorů, co už leta nepotkala šroubek, ale zato pravidelně zatloukají hřebíky.
Ne, je to jako bez rukou. Ano, někteří lidé, kteří se bez rukou narodili, zvládnou i nohama nebo ústy neuvěřitelné věci, ale drtivá většina lidí lépe a rychleji píše, jí, obléká se a jinak pracuje rukama než nohama. A to, že jste nikdy nepotřeboval otevřít JSON v textovém editoru a něco tam najít nebo třeba spočítat počet položek, vám nevěřím.
Citace od: JSH kdy 11. 07. 2018, 19:37:20
To "jednoduchý až je hloupý" je ale ta killer featura, kvůli které se ujal.
Nikoli, ujal se proto, že se (zpočátku natvrdo přes
eval()) používal na webu, a web zažil obrovský rozmach. A ruku v ruce to šlo s tím, že lidé od webu byli zvyklí, že nemají pořádné nástroje ani specifikace a musí spoustu věcí řešit hrubou lidskou silou, takže jim na JSONu nepřišlo nic zvláštního.
Citace od: JSH kdy 11. 07. 2018, 19:37:20
Prostě jsou aplikace, kde cokoliv navíc je fakt zbytečné.
Vy se pořád tváříte, jako by to ,,něco navíc" bylo v XML povinné a nějak vám to překáželo. Když nechcete používat schémata, transformace nebo dotazování, používat to nemusíte, a neplatíte za to žádné náklady. Ale máte tu možnost.
A pořád jste nenapsal, které jsou ty aplikace, kde by byl problém, kdyby JSON měl třeba komentáře.
Citace od: JSH kdy 11. 07. 2018, 19:37:20
Ale v základu je JSON pořád jednoduchý nástroj vhodný na řešení jednoduchých problémů.
Ty jednoduché problémy, které řeší JSON, řeší XML lépe. Jediná věc, ve které je JSON skutečně lepší, než XML, je ta, že parser z JSONu do JavaScriptových objektů je součástí webových prohlížečů, ale parser z XML do JavaScript objektů ve webových prohlížečích není. Bohužel tohle je ta klíčová vlastnost, která rozhodla v případě webu. Ale je vidět, že jinde JSON neuspěl – sice se z webu šířil dál, ale lidé s ním nejsou spokojení. Proto vznikl třeba YAML.