《OSGI实战》——BlueDavy写的《OSGI Opendoc》学习笔记

借助OSGI可以实现我们公司平台的基础架构的蓝图。要好好学习一下。

OSGI实战

1 概述:

这篇文章是BlueDavy2006825日完成的,距离现在正好3年。一方面,我在这方面确实路后了。另一方面,我也有幸站在巨人的肩膀上来思考。国外在软件领域,特别是开源领域,已经取得了很大的成就。我们公司在引进开源技术上有些畏首畏尾,主要的担心在于对开源技术的畏难心理。后面的开发思路,除了提高重用性,另外一个就是要引进开源技术提高开发效率,加强整合。

还有一个很重要的一点,就是让我们公司的软件开发(特别是业务软件开发)进入“整合”的轨道中。这是一种开发思路的转换。更具体一点:平台(软交换,as,设备)软件开发重在重用,业务软件开发重在整合(区别于重用,整合不单是整合自己的,包括整合开源的)。

序中提到了一种插件体系结构,和我对我们公司的平台的蓝图异曲同工。触发我对我们公司软件开发平台(框架)蓝图灵感的,正是Eclipse的插件体系结构,而这个体系结构就是构筑在OSGI基础之上的。所以,OSGI我要好好研究一下了。(虽然模型驱动开发有可能是未来主流的开发模型,不过,我认为,OSGI会是模型驱动的一个很好的基础。)

 

2 体验OSGI

       类似于Eclipse,只要见插件放置于某目录下,就可以在程序运行的时候加载。我认为一点很重要,就是OSGI框架对插件的管理(存储,索引,引用)能力很重要。这样会有利于整合。

OSGI相对于传统的开发方式,优势在于模块的组织、复用、宽展。

“不过Equinox 吸取了Eclipse Extension Points的设计,使得 Bundle 的扩展变得完全可行。”

3 OSGI带来什么

Ø         从需求实现方面,OSGI为动态扩充、修改系统功能和改变系统行为提供了支撑。

Ø         从技术角度方面,OSGI 带来了规范化的模块组织以及统一的开发方式,这为传统的模块的组织、模块开发以及模块积累提供了一种全新的指导以及支撑。

具体来说:

1、  可插拔的系统。

2、  可动态改变行为的系统。

3、  稳定高效的系统。基于 OSGI 的系统采用的是微核机制,微核机制保证了系统的稳定性;OSGI 的动态性原则保证了系启动相应的 BundleService。微内核是一个很不错的设计思路,可以提高系统的稳定性、扩展性、重用性。我的流程引擎开发也是基于微内核机制的。

4、  规范的、可积累的模块。模块的积累是软件公司发展的基础,只有公司独特的竞争力的项目经验模块被积累下来了,公司的发展才能一直的持续和高速,而在形成了规范的模块开发、部署方式后,模块的积累自然水到渠成。

看了有必要研究一下OSGI框架的源代码了。

 

未完,待续。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值