IOC-->IOC+AOP-->热插拔的系统架构实现演化
2015-05-25 11:46
281 查看
这段时间通过对Spring源码的研究,大家都清楚Spring中最重要的两个概念IOC、AOP这两个是形影不离的两个东西。通过Spring让我们一步一步的推出软件架构从IOC-->IOC+AOP-->热插拔系统架构演化。
第一步:
我们一开始两个对象直接调用的时候是用直接调用的方式调用如下图
这种的调用方式如果两个对象只要有一个对象更改就要改变所以这样的调用方式不够灵活。如何解决这个问题呢?接下来下一步介绍。
第二步:
上面说了我们把两个对象绑死了现在我们就要打破这个“死”关系,如何改变这个状态了加入第三方让第三方来实现两个对象直接的调用管理。如下图:
这样一来我们就可以把各个对象直接不用绑死了加入了第三方的东西来实现两个对象直接的调用。现在解决了对象与对象直接调用的耦合。但是当对象一多了我们在对象中有一些公共的方法这时候我么会将怎么做了?没错将这些公共的抽出来然后将这些公共的方法放到一个公共对象中。例如每个对象都用到日志这个方法插入到每一个对象的方法中。下面我就为大家介绍如何做到这个的。
第三步
上一步给大家讲了我这一步将要吧公共的方法或者对象抽出来然后再动态的加入到业务对象中。如下图:
对没错就是用AOP来实现了动态的给业务颗粒对象加入公共颗粒对象。为了让这个更灵活我们下一步就加入XML配置文件。
第四步
上一步让业务颗粒在代码上灵活了现在为了让灵活更加完善我们就加入XML来读取对象把这些对象放入到不同的两个对象颗粒池中如图:
第五步
完善XML的读取和实例化对象实现热插拔。如下图:
总结:
从一开始一个对象到大规模业务颗粒和公共颗粒的解耦造就了软件的灵活,如果再加上可视化的配置界面我们就可以让软件的开发成本降为0元。只要有个项目过来我们配一配我们就可以弄出一个软件来。
转载请注明来源:http://blog.csdn.net/gwblue/article/details/45967793
第一步:
我们一开始两个对象直接调用的时候是用直接调用的方式调用如下图
这种的调用方式如果两个对象只要有一个对象更改就要改变所以这样的调用方式不够灵活。如何解决这个问题呢?接下来下一步介绍。
第二步:
上面说了我们把两个对象绑死了现在我们就要打破这个“死”关系,如何改变这个状态了加入第三方让第三方来实现两个对象直接的调用管理。如下图:
这样一来我们就可以把各个对象直接不用绑死了加入了第三方的东西来实现两个对象直接的调用。现在解决了对象与对象直接调用的耦合。但是当对象一多了我们在对象中有一些公共的方法这时候我么会将怎么做了?没错将这些公共的抽出来然后将这些公共的方法放到一个公共对象中。例如每个对象都用到日志这个方法插入到每一个对象的方法中。下面我就为大家介绍如何做到这个的。
第三步
上一步给大家讲了我这一步将要吧公共的方法或者对象抽出来然后再动态的加入到业务对象中。如下图:
对没错就是用AOP来实现了动态的给业务颗粒对象加入公共颗粒对象。为了让这个更灵活我们下一步就加入XML配置文件。
第四步
上一步让业务颗粒在代码上灵活了现在为了让灵活更加完善我们就加入XML来读取对象把这些对象放入到不同的两个对象颗粒池中如图:
第五步
完善XML的读取和实例化对象实现热插拔。如下图:
总结:
从一开始一个对象到大规模业务颗粒和公共颗粒的解耦造就了软件的灵活,如果再加上可视化的配置界面我们就可以让软件的开发成本降为0元。只要有个项目过来我们配一配我们就可以弄出一个软件来。
转载请注明来源:http://blog.csdn.net/gwblue/article/details/45967793
相关文章推荐
- IOC-->IOC+AOP-->热插拔的系统架构实现演化
- 电子通讯系统 >> BAS系统在地铁环境控制中的应用及实现
- Android再学习-->Android系统架构
- Android Camera 系统架构源码分析(3)---->Camera的显示流程
- <5>Andriod4.2 Camera 架构与实现
- IOC&AOP学习和探索(一)——AOP基本理论及实现
- 向架构师进军--->系统架构设计基础知识
- IoC~MVC3+EF+Autofac实现松耦合的系统架构
- 向架构师进军--->系统架构设计基础知识
- IoC~MVC3+EF+Autofac实现松耦合的系统架构 [转载]
- 第二周(项目三)——文件+结构体实现实用系统。<总是不对,求大神指点迷津!!>
- 向架构师进军--->系统架构设计基础知识
- Spring AOP的实现原理之<aop:aspectj-autoproxy />的解析
- 简洁经常使用权限系统的设计与实现(一):构造权限菜单树的N(N>=4)种方法
- Android Camera 系统架构源码分析(1)---->Camera的初始化
- Android Camera 系统架构源码分析(4)---->Camera的数据来源及Camera的管理
- java jdk1.5、 windows 32位字节 ----->实现系统托盘功能
- 本书已出版<拨云见日:基于android的内核与系统架构源代码分析 >
- 记录我开发鞋服行业供应链软件的历程<设计系统技术架构>
- 两步实现Log4j记录java控制台输出的系统所有异常信息和自定义记录日志---->非常实用,强烈推荐阅读