Последнее время часто слышу недовольство XML.
- Медленный (в смысле маршаллинга/де-маршаллинга)
- Слишком низкое отношение сигнал/шум (то есть на каждое значение приходится пара тегов и/или аттрибут - а это все буквы/байты) для использования XML протоколов в сети
- XML-валидация по факту не работает. То есть работает на стороне того, кто XML отправляет (можно сразу понять что хотим послать невалидный XML и что-то с этим сделать). На стороне же приемника XML-документа чаще всего в реальной системе нужно некорректные поля просто отбросить и обработать хотя бы то, что пришло. Чем просто падать - мол, входной документ невалиден и всё тут.
- Слабое распространение XML схем в предметных областях. Например, в электронной торговле придумали FpML, который по идее должен был описывать все возможные варианты электронных сделок. По факту, всегда найдется какое-нибудь значение/свойство экзотического финансового инструмента, которое нельзя корректно положить в FpML - не хватает элемента или тэга. Простота создание XML схемы порождает сильное желание написать её самому, а не искать и разбираться в чужой. Как следствие, чуть ли не каждый финансовый институт добавляет собственное расширение FpML, и смысл единого стандарта теряется.
Во всем этом безусловно есть смысл. Наверное, на пике XML-эйфории его стали бездумно пихать во все решения (см. Золотой молот) - и в конфиги, и в протоколы между высокопроизводительными приложениями, и в кодогенерацию, и да мало ли куда еще. Вот народ и "наелся" :)
Комментариев нет:
Отправить комментарий