XML vs JSON: или как общаются современные веб-приложения между собой 6

Posted by dobrych Tue, 13 Nov 2007 22:53:00 GMT

Хочется высказать свою активную позицию насчет форматов передачи сообщений между приложениями в веб-среде. Или можете считать это просто настойчивым советом, особенно относящемуся к начинающим веб-разработчикам. Итак, что использовать? XML или JSON?

Общение (обмен сообщениями, если хотите) современных веб-приложений очень актуальная тема. В связи с появлением веб-сервисов в прошлом и огромным ростом популярности сложных (rich) интерфейсов в настоящем, появляется потребность в удобном и легком способе передачи данных между приложениями. Чаще всего подразумевается общение клиента и сервера. Частные случаи: всем полюбившийся Ajax, Flash/Flex приложения с динамическим контентом, API для публичных сервисов.

JSON Rulez Так вот исторически сложилось что для этих задач использовался изначально XML, как универсальный способ описания любых данных. Но позже появился новый (популярный сегодня) формат – JSON. Про сам формат вы можете почитать в инете, благо информации достаточно. А вот свои субъективные плюсы и минусы я напишу ниже.

Плюсы JSON по сравнению с XML:

  • быстрее парситься;
  • легче визуально воспринимается;
  • нативно интегрирован в JavaScript (читай Ajax);

К этому списку могу добавить отрывки личного опыта. С парсингом и валидацией XML есть достаточно много проблем, зависящих от библиотеки с которой вы работаете. Сериализация данных в JSON обычно в коде занимает меньше места, чем кодирование сериализации в XML. Интересным практичным моментом есть именно разработка Ajax интерфейсов, где JSON сокращает JS код. Большим плюсом к этому является возможность использования того-же протокола не только Ajax-ом, но и например Flash/Flex приложением или сторонним сервисом как API.

Вывод. Я считаю, что XML на самом деле не так уж плох и для общения между приложениями, но он лучше подходит для хранения сложно структурированных данных. А вот большим плюсом JSONа как раз является сокращение времени на разработку базового веб-приложения и его дальнейшей быстрой интеграции с другими разнородными приложениями. Еще проще говоря, если вы собираетесь заняться изучением или сразу использованием Ajax в своих проектах, обратите внимание на JSON и сэкономьте свое время.

PS о недостатках. Посмотрите статью Tim Bray и Don Box по теме.

NO XML

Мажорный дауншифтинг

Posted by dobrych Mon, 05 Nov 2007 12:52:00 GMT

После создания группы downshifting-ru и обсуждения в ней ряда вопросов, пришел к выводу, что многим IT-компаниям выгодно открывать офисы за пределами мегаполисов. После прочтения еще и о российских тенденциях, убедился в этом окончательно.

Кому тема интересна, прошу ознакомиться с ситуацией в Украине по материалам рассылки – топик Полтава и топик IT-деревня