[翻译作品]2008年6月《SOA定义的松耦合》

全文于2008年6月19日发布于InfoQ中文站上:http://www.infoq.com/cn/news/2008/06/loose-coupling-soa 摘要 在那场关于内聚对SOA是否重要的争论中,Carlos Perez表达了他关于软件构造中的耦合(coupling)及其在SOA领域的演变的观点。他首先给出了Bertrand Meyer的模块性原理(principles of modularity),然后将之延伸到自己的一套面向服务的原则上。 Carlos首先引用了Bertrand Meyer的模块性原理的原文: 模块可分解性(Modular Decomposability)——如果一种软件构造方法能有助于把一个软件问题分解为若干较简单的子问题、并用一个简单的结构将这些子问题连接起来、而且能够独立地对各个子问题作进一步分解,那么该方法就满足模块可分解性。 模块可组合性(Modular Composability)——如果一种方法,由它生产出的软件元素,未来可在不同于最初被开发的环境中通过彼此自由组合的方式来产生新的系统,那么该方法就满足模块可组合性。 模块可理解性(Modular Understandability)——如果一种方法,由它生产出的软件,人类读者无需了解其他模块(或最多只需研究少许其他模块)便可理解每一个模块,那么该方法就有利于模块可理解性。 模块连续性(Modular Continuity)——如果一种方法,在由它得到的软件架构中,功能规格上的微小改动只会引起一个(或少量)模块的变化,那么该方法就满足模块连续性。 模块保护性(Modular Protection)——如果一种方法,在由它得到的架构中,一个模块在运行时出现异常条件不会影响到该模块之外(或最多只蔓延到少数周边模块),那么该方法就满足模块保护性。 接着,他考察并评论了该领域的各个思想领袖(如Thomas Erl、Don Box、Stefan Tilkov和David Orchard等)所表达的面向服务原则。 ……Thomas Erl的原则是一组糟糕的原则,因为它们把关注点混搅起来了。 ……David Orchard的原则体现了较好的平衡,当然我必须要质疑为何把WS-*也加进来。 然后,他根据自己的服务定义,概括了以下面向服务的原则, <以下略>




发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)

日历 | CALENDAR

«August 2025»
12
3456789
10111213141516
17181920212223
24252627282930
31
blog名称:World Wide Web Watch
日志总数:193
评论数量:665
留言数量:75
访问次数:6091104
建立时间:2004年10月30日
站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.203 second(s), page refreshed 144777978 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号