![]() |
|
||||||||||
|
|||||
|
Регистрация: Dec 2009
Сообщений: 428
|
XML избыточен, JSON нет, JSON предпочтительнее XML
Добавлено через 48 секунд В объеме байтов)
__________________
Скажи мне кто твой друг и я скажу тебе кто твой друг |
|
|||||
|
Регистрация: Dec 2009
Сообщений: 428
|
__________________
Скажи мне кто твой друг и я скажу тебе кто твой друг |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
1. Он не читабелен, проводить на нем отладку без специальных инструментов сложно (я несколько раз читал про то, что json читабельнее xml, и даже приводили пример "этого", где пример на json был красиво раскрашен, а xml был весь однотонным и про атрибуты авторы ничего не слышали, и раздували xml до невероятных размеров. Также авторы наверно просто не знают, что объем данных бывает больше пары строк, где json просто становится кашей). XML же понимает любой нормальный редактор и браузер.
2. Нет нативного класса для его обработки, над использовать внешние классы. 3. Отсутствует вся мощь E4X. 4. Ну и если следовать стандарту, то весь выигрыш от компактности будет съеден за счет \uXXXX. 5. У объекта нельзя узнать число его вложений. Последний раз редактировалось iNils; 07.12.2010 в 18:52. |
|
|||||
|
Регистрация: Dec 2009
Сообщений: 428
|
Все правильно, но ведь есть у JSON`a и плюсы!
JSON может быть читабельным - его же тоже можно форматировать. Пример с вики #JSON { "firstName": "Иван", "lastName": "Иванов", "address": { "streetAddress": "Московское ш., 101, кв.101", "city": "Ленинград", "postalCode": 101101 }, "phoneNumbers": [ "812 123-1234", "916 123-4567" ] }
XML <person firstName="Иван" lastName="Иванов"> <address streetAddress="Московское ш., 101, кв.101" city="Ленинград" postalCode="101101" /> <phoneNumbers> <phoneNumber>812 123-1234</phoneNumber> <phoneNumber>916 123-4567</phoneNumber> </phoneNumbers> </person> по поводу п.5 - необязательно все складывать в объект, можно сложить в массив, аля на выходе получим массив с объектами. JSON гибок - мы можем складывать объекты в нужном сложном порядке - например - массив с объектами, в которых лежат массивы с объектами, в которых лежат объекты с массивами, в которых лежат объекты (с массивами). JSON удобно использовать и генерировать в JS и серверных скриптовых языках - различного рода json_encode (json_decode) позволяют сделать это одной строкой. Так что иногда его удобно и выгодно применять )
__________________
Скажи мне кто твой друг и я скажу тебе кто твой друг |
|
|||||
|
Banned
[+1 05.11.11]
[+1 09.08.11] Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
|
Цитата:
В данном вопросе, полностью согласен с iNils Всегда использую XML вместо JSONа |
|
|||||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
leofit, вот вы как раз привели пример, как создается избыточность. Если у нас есть тег address, зачем address дублировать в street?
А зачем писать phoneNumbers везде? Почему нелья также логично разбить xml? var xml:XML = <person firstName = "Иван" lastName = "Иванов"> <address street = "Московское ш., 101, кв.101" city = "Ленинград" postalCode="101101" /> <phones> <number>812 123-1234</number> <number>916 123-4567</number> </phones> </person> trace (xml); Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
|
|
|||||
|
[+5 27.02.11]
[+ 26.04.11] |
а я использую xml только в случаях хранения больших объемов данных со множеством тегов,а так текстовый конфиги var=значение никто не отменял))
__________________
Незнание правил освобождает от ответственности. |
|
|||||
|
Цитата:
Если в приложении идут частые запросы на обновление : чат , лобби и т.п. за час уходит где-то порядка 12-20мб (в среднем) . если же тоже самое передавать XML'ем то получится 30-40мб. Для некоторых пользователей (GPRS в частности) , эта разница может быть существенна. Все забываем времена dial-up'а и слишком привыкли к скоростному безлимиту. Как говорится "remember your roots" |
![]() |
![]() |
Часовой пояс GMT +4, время: 01:55. |
|
|
« Предыдущая тема | Следующая тема » |
|
|