技术开发 频道

XML发展促进SOA自由开发

【IT168 技术文章】

    使用以XML文档为主的方法开发面向服务架构(SOA)的应用程序,从而实现更自由的代码编写以构建Web服务,这听起来不可思议,但是已经看过它实施的分析家说,这是可行的并且有可能成为将来SOA开发的发展方向。

  据这家公司的商业发展部门经理介绍,在2003年当SOA刚刚起步成为UK带头者的奠基者,Hyfinity Ltd.为利用“公开的合成服务”的一项开发上的进步申请了专利。高级分析员Ronald Schmelzer和ZapThink LLC认为,主要的SOA方面的销售商可能都会希望他们已经拥有并且能够获得使用此项专利的权利。

  分析家宣称,这项公开的合成服务模型为灵活使用XML数据做好了准备,尽管这听起来很容易,但实际上功能非常强大。

  “它创造了一个处理XML数据和XML程序的XML机器,” Denham解释说,“你们正在将整个开发方式提高到一个新的水平,这个水平比传统以代码为中心的开发方式高得多。实际的用途可以通过使用我们的技术体会到,而且你能够非常高效地开发企业服务和应用程序。”

  2003年申请专利之后,这家公司又生产了一个叫做高速RIA(rich Internet application)的开发产品。Denham宣称,“制订这个战略就是要将它推向市场,并且证明它是可行的,当然最重要的是要证明我们申请专利的开发进展上的可行性”。

  Denham还说,这项高速RIA技术已经得到了好评并且Hyfinity正在考虑将这项专利运用到底层基础技术上,例如XML机器,即不仅要出售他们的专利产品,也要让其它一些销售商获得它的使用权。

  Schmelzer宣称,这是一个可行的策略,因为这样的繁荣已经证明了高速RIA在底层基础技术上的价值。

  分析家还指出:“这家公司还想用XML的方式重新考虑Von Neumann Machine,而不是将电脑当作你程序里面的东西,就好像你通过XML创造应用程序,这一切都由你来控制。当人们谈论开放的SOA,开放的BPM和RIA方式时,这将是一个非常有意思的转变。”

  为了争辩说目前的工具和技术正在让SOA的开发变得更加复杂,Schmelzer的同事Jason Bloomberg在今年年初写了一篇ZapThink technology note的文章来赞扬Hyfinity在对Internet应用程序编写上开放的,基于文档的进步,并且这些应用程序的编写在SOA上下文环境中大大影响了服务。

  “只有通过结合SOA提供的丰富的RIA用户接口的灵活性,公司才能灵活高效地发展他们的应用程序。”他写道,“将其推向为这种新类型的应用程序提供合适工具的挑战的正是Hyfinity。他还为构建RIA提供了一个混合平台和办公室环境,这些RIA在SOA环境中消耗和生产Web服务。Hyfinity在直接开发的环境中合成了丰富的用户接口和松耦合高灵活性的服务,从这两方面的任何一方面来说,它都是最好的。这帮助企业增加了评估的时间和企业应用程序开发者们的生产力。”

  Hyfinity的合作者Steve Bailey解释了这项专利是怎么样工作的。

  “最基本的汇编过程把应用程序的需求当作一系列服务,这些服务需要通过XML处理才能完成要求的功能。”他说,“在高速RIA环境中有一种服务,它的功能是实际地描绘XHTML屏幕。当用户从合适的地方键入信息时,它会接收从浏览器返回的信息,将这些信息翻译成XML文档格式,并传输到其它与外部Web服务通信的服务。”

  Bailey描述的这个过程是如此基于文档结构和无需编写代码,以至于很难让人相信它是一种应用程序的开发。

  “应用程序在我们看来与代码没有关系。”他说,“在我们看来它是从Web服务传输到浏览器的XML文档。当他们到达浏览器的时候,我们要做的工作是把一个拥有一些参数的SOAP消息,转换成包含一些参数的XHTML(Extensible Hyper Text Markup Language)的格式。用户输入数据,然后我们再把它传输给SOAP消息或者REST消息,最后把它们传输给处理它们的服务。”

  Hyfinity模型中的每一部分都在考虑如何将数据翻译成标准的XML格式。

  “如果我们得到一个想要连接数据库的服务,”Bailey解释道,“它的工作就是与XML通信或者接收XML,并将它传送到SQL,再将SQL查询结果返回到XML格式去。因此在我们的模型中,所有这些服务都是以完全相同的方式实现的。作为一个服务,它有良好的文档定义,包括它的目的是什么,它怎么同其它Web服务通信—传输协议—它们需要什么样的XML资源来完成它们的功能。”

  Bailey说,“我们创造的这些底层基础的服务好比一个软件引擎。”ZapThink的分析师认为它确实可能成为一个小的引擎。

0
相关文章