SOA的许多优点来源于服务重用。软件重用这一概念已经被宣传多年,并被建议为多种技术所采纳。服务是设计和实现可重用软件的一个很好的抽象层次,而且XML和Web服务较它们之前的技术更易于使用。可是,重用仍旧很困难吗?
下面我谈谈我所认为的David Chappell最近那篇关于重用的文章的主要内容。
他说,几乎在最近两年里与他交谈过SOA的每一个人都说“利用服务实现重用,几乎跟利用对象实现重用一样困难”。
因为对象未能真正兑现实现重用的承诺,而服务要实现重用也未必十分容易,所以David通过交谈得出的结论仿佛是说业界将会再次失败。
他引述了在创建可重复服务时常见的问题,包括开发者面临的文化挑战(就像我的同事Steve所写的)、政治问题(未能促动一个部门与其他部门分摊重用的成本)以及“一个为了重用目的而发布的服务,也许并未包含某些消费者所需的特性与功能”的情况。
不过,我不同意他关于“业界采纳了对象,也将会采纳服务,仅仅因为大厂商们把这些技术推销给它们的客户”的论断。假如这些技术不能解决客户的实际困难,那么无论厂商费多大劲去推销都是徒劳的。一般来说,客户对于无用特性的容忍度是很低的(还有人记得“Bob”吗?)。
然而,令我感到不安的是他的结论,因为他主要是说重用仍旧很困难。我想知道是否真是那样。当然,我已经知道在我公司和通过行业贸易展了解到的其他公司的客户中有不少成功例子。
假如真是那样的话,那就极为令人失望了。我确实认为目前SOA所采用的技术——XML和Web服务——是获取重用的相当好的抽象层次。
原文链接:http://blogs.iona.com/newcomer/archives/000366.html