![]() |
Все таки хорошо что есть такие вещи как форумы )
Провел полевые испытания компактности JSON vs XML. В качестве образца взял данные, приведенные выше - про Ивана Иванова. JSON взял со своего приведенного примера, XML с примера, приведенного iNils. Убрал все пробелы и переводы строк. Делал в двух вариантах - с русским текстом "Иван" и на латиннице "Ivan", соответственно менял текст и в JSON и в XML. В русскоязычном варианте JSON генерился по типу \u0418\u0432\u0430\u043d Создал файлы, в каждом из которых содержалось 1000 записей про Ивана Иванова. Результаты: json_ru - 340 кб xml_ru.xml - 242 кб json_eng - 179 кб xml_eng.xml - 205 кб В англоязычном варианте JSON сэкономил 26 кб, что, учитывая все его минусы при работе во flash, нифига не радует. Итог: Использовать JSON только в случае крайней необходимости (экономия серверного трафика, большие нагрузки, большое кол-во посетителей, слабая серверная сторона) и при отсутствии русскоязычных текстов (передавать цифровые данные, координаты и т.п.). |
12-20 против 30-40? это говорит о том, что при создании авторы не думали и в результате, структура была больше данных и съедала больше половины общего объема. У xml излишество только из-за наличиая названия нода в закрывающем теге. Типа personAddressStreet или personPhoneNumber, или избыточное число нодов, вместо атрибутов. Во многих случаях закрывающий нод компактен.
Сравните Код:
<canvas>с Код:
<canvas x="0" y="0" w="1" h="1" />Причем это пример одинаков по размеру с json Код:
"canvas":{"x":0,"y":0,"w":1,"h":1} |
Короче провел эксперимент и заранее извиняюсь перед сторонниками JSON ( к которым отношу и себя ) :
Код AS3:
Код AS3:
|
Жестко. Хотя такое время для человека все равно не заметно будет
|
тот же код, что и выше.
в кач-ве JSON декодера/енкодера используется библиотека blooddy_crypto.swc товарища BlooDHounD Код AS3:
json: 288ms xml: 142ms в debug: json: 326ms xml: 137ms |
Цитата:
|
blooddy_crypto.swc
есть какие нибудь ограничения на использование? (в коммерческих проектах) |
Genzo, если скачать, там будет файлик license.txt.
первая строка — The MIT License что, собственно, эпик вин ) з.ы. товарищу BlooDHounD мега респект. ) з.з.ы. незабываем что на сайте flasher.ru есть активные и интересные блоги |
не ребят,проковырявшись с полчаса в коде,приведенном на первой странице,я так и не смог его заставить ничего отпрвлять,т.к компилятор ругался:
1120: Access of undefined property completeHandler. мда...на втором ас можно было отправить переменную тремя строками,тут двадцатью тремя без проблем не отправишь...вывод-остаюсь себе спокойненько на ас2,а не с этой какашкой,на которой чтобы трейсануть строку целый класс писать будут..... |
| Часовой пояс GMT +4, время: 13:22. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.