双向自由升级的详细说明

 
假设companyA向外发布了一个处理机procA,procA支持两种数据,dataA和dataB。而且procA的真正实现implA放入一个proca.dll中。(把procA看作一个接口,能更好的理解procA和implA的关系,但procA不是接口。)如果这个procA已被好多家其它的公司使用。
 
有一天companyA发现procA有必要添加对dataC的支持,那么companyA就可以在implA中添加对dataC的处理,并把dataC和新的proca.dll向外发步,而不用对那些已经使用了前一个procA的公司的程序担心,兼容问题。
 
上面说的是处理机提供方的自由升级,下面来说一说使用方的自由升级。
假设有一天,使用procA的一家公司companyB觉的有必要添加一种数据dataE让处理机procA处理。那么companyB就可以添加一种dataE传给procA来处理。因为procA能接受dataE。所以companyB针对新数据dataE的编程,调试,测试就都可以进行。同时companyB可以通知companyA,请求升级处理机procA。这样两家公司就可以并行工作。
可是如果因为companyA很牛,戓者其它的什么原因最终没有完成procA对dataE支持的升级。那么companyB怎么办呀?
在这种情况下,匹配器就能帮上companyB的大忙。companyB可以针对dataE对procA的匹配器进行<<和>>进行重载。以做出和procA支持dataE一样的效果来。companyB就可以慢慢的等待companyA对prcoA的升级了。即使companyA的升级永远不完成也没有关系。
 
 

 感谢前几位朋友的留言。你们的留言对我帮助很大,鼓舞很大。

希望新来的朋友们也能不吝指教。

 




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值