XML有哪些缺点?
阅读StackOverflow并听Joel Spolsky和Jeff Atwood的播客,我开始相信很多开发人员讨厌使用
XML,或者至少尽量避免使用
XML来存储或交换数据.
另一方面,我喜欢使用XML有很多原因: > XML序列化以大多数现代语言实现,非常易于使用, 那么,考虑到使用XML的所有好处,为什么这么多开发人员讨厌使用它呢?恕我直言,唯一的问题是: > XML过于冗长,需要比大多数其他形式的数据更多的地方,特别是在涉及Base64编码时. 当然,有很多情况下XML根本不适合.在服务器端的XML文件中存储SO的问题和答案绝对是错误的.或者,在存储AVI视频或一堆JPG图像时,XML是最糟糕的事情. 但其他场景呢? XML有哪些缺点? 对于那些认为这个问题不是真正问题的人: 与非封闭的Significant new inventions in computing since 1980这样的问题相反,我的问题是一个非常明确的问题,并且明确地邀请解释其他人在使用XML时遇到的弱点以及他们为什么不喜欢它.例如,它不会邀请讨论XML是好还是坏.它也不需要进行长时间的讨论;因此,到目前为止收到的当前答案简短而精确,并提供了我想要的足够信息. 但它是一个维基,因为这个问题没有一个独特的好答案. 根据SO,“不是一个真正的问题”是一个问题,“很难说这里有什么问题.这个问题含糊不清,含糊不清,不完整或修辞,无法以现有形式得到合理回答.” >这里有什么问题:我认为问题本身非常清楚,上面的几段文字使其更加清晰, 如何评估答案并确定接受的答案似乎也很明显.如果答案给出了XML错误的充分理由,那么这个答案很可能会被投票,然后被接受.
一些弱点:
>关联xml文件和外部资源有点困难,这就是为什么新的Office文档格式使用包含骨架xml文件和捆绑在一起的资源文件的zip信封的原因.使用base64编码的另一个选择是非常冗长,并且不允许良好的随机访问,这将带来一个到下一点:>随机访问很困难.读取xml文件的两种传统模式 – 构造DOM或仅向前SAX样式读取都不允许真正的随机访问.>对文件的不同部分进行并发写访问很困难,这就是为什么它在Windows可执行清单中的使用容易出错的原因.> xml文件使用什么编码?严格来说,你首先猜测编码,然后读取文件并验证编码是否正确.>很难对文件的某些部分进行版本控制.因此,如果要提供粒度版本控制,则需要拆分数据.这不仅仅是一个文件格式问题,而且还因为工具通常提供每个文件的语义 – 版本控制工具,DropBox等同步工具. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |