Przykład ilustrujący to, o czym chcę pisać.
Kod produkcyjny w XML:
<key>impossible_difficulty_enabled</key>
<true/>
(pochodzi on z plików pewnej gry kupionej przeze mnie na Steamie)
Jak widzę tego rodzaju kod w XMLu to zaczynam zgrzytać zębami.
Ale kiedy to przeczytałem, zauważyłem u siebie, że nie czuję już zdziwienia, kiedy to czytam. To, że XMLe tak wyglądają, traktuję już jako normę. Czuję raczej irytację, choć w zasadzie nie powinienem, bo to przecież nie mój kod i ja z nim pracować nie muszę.
Na podstawie mojego niezbyt wielkiego doświadczenia wydaje mi się, że kod w XMLu w ten sposób wygląda bardzo często.
Ale to właśnie w XMLu. W na przykład JSONie już raczej by się czegoś takiego nie spotkało. Nikt nie napisałby chyba czegoś takiego:
{
"key": "impossible_difficulty_enabled",
"true": {}
}
Analogiczny zapis w JSONie wyglądałby raczej tak:
{
"impossible_difficulty_enabled": true
}
Czy XML jest jakiś upośledzony?
Mimo wszystkich dziwactw XMLa da się w nim przecież pisać nawet prościej, niż w JSONie:
<impossible_difficulty_enabled/>
ALbo chociaż:
<impossible_difficulty_enabled>
<true/>
</impossible_difficulty_enabled>
XML jest mocno przekombinowany, to fakt. Ale przekombinowanie samego XMLa to jedno, natomiast praktyki przekombinowujące kod w XMLu to drugie. Jeśli już ktoś pisze w XMLu, to czemu nie będzie chociaż tego pisał tak, żeby to miało ręce i nogi? Czemu do dziwactw XMLa musi dodawać jeszcze dziwactwa własne?
- Czy mam rację, czy mi się tylko niesłusznie wydaje, że XMLe bardzo często wyglądają w ten sposób, jaki podałem w przykładzie na początku mojego posta?
- Jeśli tak, to z czego to wynika? Może jest jakiś istotny powód, dla którego ludzie tak piszą XMLe, tyle że ja go nie znam?