文档介绍:WebService 的利弊 WebService 优点和缺点小结最近做的几个项目都用到了 webservice , 通过自己的实践和网上资料的汇总,现在做个小结: 当前 WebService 是一个热门话题。但是, WebService 究竟是什么?, WebService 有什么优点和缺点,什么情况下应该用 WebService ?什么情况下不应该用 WebService ?是需要我们正确认识的。实际上, WebService 的主要目标是跨平台的可互操作性。为了达到这一目标, WebService 完全基于 XML (可扩展标记语言)、 XSD ( XMLSchema )等独立于平台、独立于软件供应商的标准,是创建可互操作的、分布式应用程序的新平台。由此可以看出, 在以下三种情况下,使用 WebService 会带来极大的好处。优点一:跨防火墙的通信如果应用程序有成千上万的用户,而且分布在世界各地,那么客户端和服务器之间的通信将是一个棘手的问题。因为客户端和服务器之间通常会有防火墙或者***。在这种情况下,使用 DCO M 就不是那么简单,通常也不便于把客户端程序发布到数量如此庞大的每一个用户手中。传统的做法是, 选择用浏览器作为客户端, 写下一大堆 ASP 页面,把应用程序的中间层暴露给最终用户。这样做的结果是开发难度大,程序很难维护。举个例子, 在应用程序里加入一个新页面,必须先建立好用户界面(Web 页面), 并在这个页面后面, 包含相应商业逻辑的中间层组件,还要再建立至少一个 ASP 页面,用来接受用户输入的信息,调用中间层组件,把结果格式化为 HTML 形式,最后还要把“结果页”送回浏览器。要是客户端代码不再如此依赖于 HTML 表单, 客户端的编程就简单多了。如果中间层组件换成 WebService 的话,就可以从用户界面直接调用中间层组件,从而省掉建立 ASP 页面的那一步。要调用 WebService ,可以直接使用 MicrosoftSOAPToolkit 这样的 SOAP 客户端, 也可以使用自己开发的 SOAP 客户端, 然后把它和应用程序连接起来。不仅缩短了开发周期, 还减少了代码复杂度, 并能够增强应用程序的可维护性。同时,应用程序也不再需要在每次调用中间层组件时,都跳转到相应的“结果页”。从经验来看,在一个用户界面和中间层有较多交互的应用程序中,使用 WebService 这种结构,可以节省花在用户界面编程上 20% 的开发时间。另外,这样一个由 WebService 组成的中间层,完全可以在应用程序集成或其它场合下重用。最后, 通过 WebService 把应用程序的逻辑和数据“暴露”出来, 还可以让其它平台上的客户重用这些应用程序。优点二:应用程序集成企业级的应用程序开发者都知道,企业里经常都要把用不同语言写成的、在不同平台上运行的各种程序集成起来, 而这种集成将花费很大的开发力量。应用程序经常需要从运行在 IBM 主机上的程序中获取数据;或者把数据发送到主机或 UNIX 应用程序中去。即使在同一个平台上, 不同软件厂商生产的各种软件也常常需要集成起来。通过 WebService , 应用程序可以用标准的方法把功能和数据“暴露”出来,供其它应用程序使用。例如,有一个订单登录程序,用于登录从客户来的