|
| |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
Web服务常常从它的组件技术的角度来进行描述。SOAP、UDDI、WSDL、XML以及HTTP各自组成了Web服务体系的一部分,它们都发挥了重要作用。让我们看看XML技术对Web服务平台的贡献。
除了XML引擎和产品外还有XML文法(grammar)。每一个XML语法都是一种在某个特定问题领域进行数据格式化的标准方式。遵循并采用XML文法,你就可以使两个应用程序间通信的数据格式标准化。
程序员在对接口进行编程时常常将它称之为协议。从编程的角度出发,接口在没有暴露实现的情况下提供了编程结构。假如使用DTD(文件类型定义)和大纲(schema),那么XML就有类似的特性。DTD和大纲都用来描述XML文档的结构以及XML文档的建立规则。可以用一个(或者多个)相关DTD(或者大纲)组织这样的规则集合,我们称之为XML文法。 XML文法不仅可以用于应用程序之间通信的标准化,还可以为开发者提供一个接口协议。换句话说,开发者在创建一个需要使用XML文档结构的应用程序时,他不需要知道文档是如何实现的(即实际的XML文档)。DTD以及大纲描述了文档的结构,它们可以作为开发的接口协议。对DTD的任何改动同时也改变了协议。
XML文档的另一个重要方面就是它的简化特性。我并没有暗示XML的实现很简朴,而是说XML的概念和一般方式简朴。例如,XML是基于文本文档的,这就简化了打开XML文档并查看其内容的过程。 用XML简化Web服务模型很方便,这一点也很重要。Web服务天然就比单独的XML要复杂。假设XML和CORBA同样复杂,而且其它Web服务技术的复杂度一样,那么Web服务技术就会变得异常粗笨。但是通过使用简朴的搭积木的方式,如XML、SOAP等等,我们可以控制Web服务的复杂度在一个可以容忍的范围之内,这样用它创建的应用程序不至于难以控制。
封装是我最喜欢的XML特性之一,在开发Web服务的时候尤其如此。从本质上来说,封装指的是获得一个或者多个数据块(chunks of data)并把它们集合成一个简朴对象(而不是几个独立对象)的概念。封装与集合(aggregation)类似,但是它们之间有一个重要的差别,即封装一般意味着它没有外部依靠性。 你可以创建带有外部依靠性的XML文档;但是在事务Web服务模型(transactional Web services model)中,利用封装会显得更加明智。通过设计包装了依靠性的XML解决方案,你一般都可以消除事务处理过程(交易)中的问题。强迫在交易中定位外部数据并使其与XML数据一致的方式是有害的,尤其是在外部数据经常发生变动的情况下。假如把数据封装到XML文法中去,就交易获得准确的数据。 返回类别: 教程 上一教程: 详细实现XML的三种方法 下一教程: 利用XMLHTTP实现的二级连动Select 您可以阅读与"为何XML对Web服务很重要"相关的教程: · 一个简朴的XML 服务器 · 了解WEB页面工具语言XML(四)应用分类 · 利用XML实现通用WEB报表打印实际使用中的例子 · 使用xmldom在服务器端生成静态html页面 · 用WSDL定义Web服务 |
| 快精灵印艺坊 版权所有 |
首页 |
||