Posted on 2005-11-18 12:38
publisher luo 阅读(2612)
评论(1) 编辑 收藏 所属分类:
构件技术
以框架为基础的方法
在软件开发中,使用面向对象技术开发构件并组装应用系统是当前的流行做法。由于这些构件是由对象构成的,为使对象之间能够通过相互触发的方式进行交互,需要对象来维护静态类信息和接口信息。这将导致对象之间具有隐式依赖
关系,同时还使对象依赖于外部服务(如通信中间件)。这些依赖关系不易于构件在不同平台间进行移植,使构件的组装变得更加困难。不过在统一平台上构件不存在移植和组装困难的问题。在本框架中采用IoC反射注入容器来将各个构件组合起来而且不破坏构件的结构(不需要强制构件与容器耦合,不需要调用容器的API),构件的实现类可以为普通的Java
Bean,而不需要强制实现某些接口或者方法。
以框架为基础的方法,增加了构件的可复用性,也提高了系统设计和演化的柔性。
基于总线的方法
在基于构件的软件开发中,为了解决构件之间的数据交换,SUN公司发布了InfoBus标准用于构件的动态数据共享。InfoBus符合100%纯Java认证标准,它允许通过定义少量的接口并声明使用这些接口的协议以在构件之间进行动态数据交换。在HTML页面中的Applet或者在JBuilder环境中的为JavaBeans都可以利用InfoBus进行交互。InfoBus也可以用于任意的Java类,如Applet,Servlet等等。
基于总线的方法通过严格限制系统中使用的构件形式,尽可能地避免组装不匹配的问题出现。它通常清楚地说明:构件接口如何定义;何种数据实体可以在构件之间互换:构件之间的交互机制以及使用何种体系结构风格。基于总线的方法适用于特定的应用领域和体系结构的系统构造,它解决组装不匹配问题的能力有限,它的应用范围也是有限的。