什么是SOA?

70年代-80年代,自顶向下分析方法,核心是可以复用的函数,比如C语言的200多个函数库。

80年代-90年代,出现了OO的分析和设计,核心是对象,是可以复用的组件。比如Struts这个框架,我们只需在这个框架上搭载一些自己的Action,就可以体会到真正的MVC模式,而不是每个项目大家都去创造一个自己的FrameWork, 这就是组件复用的好处。

90年代后,OO方法逐渐不能满足用户需求变更加速和老系统集成的需求,所以出现了SOA,SOA的核心是服务。自顶向下分析方法以函数为中心,OO以对象为中心,SOA 以服务为中心。

服务合组件的概念还是不一样的。组件以功能复用为核心,而服务以实际的企业应用为一个单元划分。比如订单管理(OrderManager)可以是一个可以复用的组件,它仅仅提供自己的API,而订单管理服务则是一个完整的企业行为单元,可能包括 采购订单--〉订单审核生效--〉进货 这样一个业务流程。脱离了BPM纯粹从技术上讨论SOA是空洞的。


SOA主要目的是分布式和减少服务和服务之间的耦合。这种耦合性减少和以对象和对象之间关系的耦合性减少是不一样的,对象和对象之间关系的耦合性减少我们用IOC就可以很好的解决了。SOA耦合性的减少是服务和服务之间的耦合性减少。


也就是说,70年代-80年代,我们采用自顶向下分析方法做项目,80年代-90年代,我们用OO的分析和设计做项目,而现在,到了以服务为核心的分析和设计方法作项目。SOA仅仅是OO 思想的一种发展和扩充。

利用SOA思想做概要分析和概要设计,OO思想做详细设计,这就是对SOA的理解
 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值