JSON vs XML – rozdíl mezi nimi
Klíčový rozdíl mezi JSON a XML
- Objekt JSON má typ, zatímco data XML jsou bez typu.
- JSON neposkytuje podporu jmenného prostoru, zatímco XML poskytuje podporu jmenných prostorů.
- JSON nemá žádné možnosti zobrazení, zatímco XML nabízí možnost zobrazení dat.
- JSON je méně zabezpečený, zatímco XML je ve srovnání s JSON bezpečnější.
- JSON podporuje pouze kódování UTF-8, zatímco XML podporuje různé formáty kódování.
Co je JSON?
JSON je formát souboru, který pro ukládání a přenos datových objektů obsahujících páry atribut-hodnota a pole používá text čitelný pro člověka. JSON se používá k ukládání informací organizovaným a snadno přístupným způsobem. JSON znamená JavaZápis objektu skriptu. Nabízí lidsky čitelnou sbírku dat, ke kterým lze logicky přistupovat.
Co je XML?
XML je rozšiřitelný značkovací jazyk, který je určen k ukládání dat. S oblibou se používá pro přenos dat. Rozlišuje malá a velká písmena. XML umožňuje definovat značkovací prvky a generovat přizpůsobený značkovací jazyk. Element je základní jednotkou v jazyce XML. Přípona souboru XML je .xml.
Historie JSON
Zde jsou důležité orientační body, které tvoří historii JSON:
- Douglas Crockford specifikoval formát JSON na počátku 2000. století.
- Oficiální stránky byly spuštěny v roce 2002.
- V prosinci 2005, Yahoo! začíná nabízet některé své webové služby v JSON.
- JSON se v roce 2013 stal mezinárodním standardem ECMA.
- Nejnovější standard formátu JSON byl zveřejněn v roce 2017.
Historie XML
Zde jsou důležité mezníky z historie XML:
- XML byl také odvozen z SGML.
- Verze 1.0 XML byla vydána v únoru 1998.
- Leden 2001: Navrhovaný standard IETF: Typy médií XML
- XML je Extensible Markup Language.
- 1970: Charles Goldfarb, Ed Mosher a Ray Lorie vynalezli GML
- Vývoj XML začal v roce 1996 ve společnosti Sun Microsystem
Vlastnosti JSON
- Snadné použití – JSON API nabízí fasádu na vysoké úrovni, která vám pomůže zjednodušit běžně používané případy použití.
- Výkon – JSON je poměrně rychlý, protože spotřebovává velmi méně místa v paměti, což je vhodné zejména pro velké objektové grafy nebo systémy.
- Nástroj zdarma – Knihovna JSON je open source a je zdarma k použití.
- Nevyžaduje vytvoření mapování – Jackson API poskytuje výchozí mapování pro mnoho objektů, které mají být serializovány.
- Vyčistěte JSON – Vytváří čistý a kompatibilní výsledek JSON, který je snadno čitelný.
- Závislost – Knihovna JSON nevyžaduje ke zpracování žádnou jinou knihovnu.
Vlastnosti XML
- XML tagy nejsou předdefinované. Musíte definovat své přizpůsobené značky.
- XML bylo navrženo tak, aby přenášelo data, neumožňovalo vám je zobrazovat.
- Značkovací kód XML je pro člověka snadno srozumitelný.
- Dobře, strukturovaný formát je snadno čitelný a zapisovatelný z programů.
- XML je rozšiřitelný značkovací jazyk jako HTML.
Rozdíl mezi JSON a XML
Zde je hlavní rozdíl mezi JSON vs XML:
JSON | XML |
---|---|
Objekt JSON má typ | XML data jsou bez typu |
Typy JSON: řetězec, číslo, pole, Boolean | Všechna data XML by měla být řetězec |
Data jsou snadno dostupná jako objekty JSON | XML data je třeba analyzovat. |
JSON podporuje většina prohlížečů. | Analýza XML mezi různými prohlížeči může být složitá |
JSON nemá žádné možnosti zobrazení. | XML nabízí možnost zobrazení dat, protože se jedná o značkovací jazyk. |
JSON podporuje pouze textový a číselný datový typ. | XML podporuje různé typy dat, jako jsou čísla, text, obrázky, tabulky, grafy atd. Poskytuje také možnosti pro přenos struktury nebo formátu dat se skutečnými daty. |
Získání hodnoty je snadné | Získání hodnoty je obtížné |
Podporováno mnoha sadami nástrojů Ajax | Není plně podporována sadou nástrojů Ajax |
Plně automatizovaný způsob deserializace/serializace JavaScénář. | Vývojáři musí psát JavaKód skriptu pro serializaci/de-serializaci z XML |
Nativní podpora pro objekt. | Objekt musí být vyjádřen konvencemi – většinou opomenuté použití atributů a prvků. |
Podporuje pouze kódování UTF-8. | Podporuje různé kódování. |
Nepodporuje komentáře. | Podporuje komentáře. |
Soubory JSON jsou ve srovnání s XML snadno čitelné. | XML dokumenty jsou relativně obtížněji čitelné a interpretovatelné. |
Neposkytuje žádnou podporu pro jmenné prostory. | Podporuje jmenné prostory. |
Je méně zabezpečená. | Je bezpečnější než JSON. |
Kód JSON vs kód XML
Podívejme se na ukázkový kód JSON
{ "student": [ { "id":"01", "name": "Tom", "lastname": "Price" }, { "id":"02", "name": "Nick", "lastname": "Thameson" } ] }
Pojďme studovat stejný kód v XML
<?xml version="1.0" encoding="UTF-8" ?> <root> <student> <id>01</id> <name>Tom</name> <lastname>Price</lastname> </student> <student> <id>02</id> <name>Nick</name> <lastname>Thameson</lastname> </student> </root>
Výhody použití JSON
Zde jsou důležité výhody/klady používání JSON:
- Poskytujte podporu pro všechny prohlížeče
- Snadno se čte a píše
- Přímá syntaxe
- Můžete nativně analyzovat JavaSkript pomocí funkce eval().
- Snadná tvorba a manipulace
- Podporováno všemi hlavními JavaSkriptové rámce
- Podporováno většinou backendových technologií
- JSON je nativně rozpoznán pomocí JavaScénář
- Umožňuje přenášet a serializovat strukturovaná data pomocí síťového připojení.
- Můžete jej použít s moderními programovacími jazyky.
- JSON je text, který lze převést na jakýkoli objekt JavaSkriptujte do JSON a odešlete tento JSON na server.
Výhody použití XML
Zde jsou významné výhody/nevýhody používání XML:
- Umožňuje přenos dokumentů mezi systémy a aplikacemi. Pomocí XML můžete rychle vyměňovat data mezi různými platformami.
- XML odděluje data od HTML
- XML zjednodušuje proces změny platformy
- Umožňuje vytvářet uživatelsky definované značky.
Nevýhody použití JSON
Zde jsou nevýhody/nevýhody použití JSON:
- Žádná podpora jmenného prostoru, proto špatná rozšiřitelnost
- Omezený vývojové nástroje podpora
- Nabízí podporu pro definici formální gramatiky
Nevýhody použití XML
Zde jsou nevýhody/nevýhody použití XML:
- XML vyžaduje aplikaci pro zpracování
- Syntaxe XML je velmi podobná jiným alternativním „textovým“ formátům přenosu dat, což je někdy matoucí
- Žádná podpora vnitřních datových typů
- Syntaxe XML je nadbytečná
Nyní můžete snadno určit mezi XML nebo JSON, který je pro vás vhodnější.