Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > Java > OSGi带来的规范的模块化
【标  题】:OSGi带来的规范的模块化
【关键字】:OSGi
【来  源】:http://www.blogjava.net/BlueDavy/archive/2006/09/14/69592.html

OSGi带来的规范的模块化

Your Ad Here OSGi带来的规范的模块化 - BlueDavy之技术Blog - BlogJava

BlueDavy之技术Blog

不懂理论只懂实战的粗人。
   共有人在同时阅读此Blog

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  596 随笔 :: 2 文章 :: 631 评论 :: 1 Trackbacks

规范的模块化开发是需要OSGi的重要理由之一,模块化的开发方式一直就是现在的主流开发方式,但业界却一直缺乏这样的标准,当然,如果java本身具备这样的标准自然就更好了,那么大家就会很自然的以同样的方式去设计、开发和部署模块,但目前java暂时还没有这样的标准,虽然之前的JSR 277(Java Module System)的目标是制定这样的标准,但由于该标准制定完后并没有得到业界和各大厂商的认可,所以基本上没起到什么作用,而现在JSR 291的认可则更是触动了它,目前的情况看下去,OSGi成为下一个版本的Java Module System JSR只是时间的问题而已,整个业界能够采取统一的方式进行模块的设计、开发是非常重要和有意义的事,这也是OSGi得到IBM等大公司支持的重要原因之一,说了这么多背景性质的话后开始来看看OSGi是如何规范化模块的开发的:
1、模块的定义
????? 在OSGi中模块以Bundle的形式进行定义,而对于模块中的重要概念如模块的依赖、模块的版本、模块对外提供的功能等都通过规范的Bundle的元数据信息来表达,这就使得模块的定义得以规范。
????? 而同样的OSGi对于模块的规范化的定义也是平时我们在进行模块化的定义时值得参考的。
2、模块的设计
??????在模块的设计上首先遵循OSGi Bundle的方式无疑为我们的模块设计提供了类似Best Practice的指导,这个对于构建整个系统而言具备非常强的指导意义,我们知道在进行业务架构设计时最重要的就是模块的划分和依赖的设计,而这从OSGi上都给予了非常好的指导。
????? 而对于模块本身的实现方面的设计而言,OSGi更是提供了Service-Oriented Component Model做为设计的指引和参考,这从本身上来讲已经提升了目前的很多的模块的设计方法。
??????可见,从设计这个层面上来说,OSGi不仅提供了规范化的方法,一定程度上来说更是提供了模块化设计的Best Practice。
3、模块的部署
????? 在OSGi中模块统一以Bundle的方式部署到系统中。
在以前的很多的插件式的系统中也能找到上面三个部分的影子,但最关键的是那些都不足以形成业界统一的规范,规范性才是模块化中最为重要的一点,当然,OSGi在动态性方面的优势使得它在这一领域占据了优势,也使得OSGi在模块的管理上具备很强的优势,象模块的生命周期的动态管理、模块的版本化管理以及模块行为的动态改变等。

posted on 2006-09-14 15:32 BlueDavy 阅读(205) 评论(4)  编辑 收藏 收藏至365Key 所属分类: Plugin Architecture@RIAWork
rails实战- (三)Active Record 初解:【上一篇】
文件和目录操作的常用方法:【下一篇】
【相关文章】
  • OSGi --沙漠中发现的绿洲
  • Spring and OSGi相关信息
  • 《OSGi实战》读后感
  • 为什么学习OSGi
  • OSGi成为JSR291以及OSGi对Spring产生的影响
  • OSGi Bundle Repository(OBR)
  • 发布OSGI Opendoc正式版
  • OSGI组织开始进军服务器端应用和企业应用
  • 基于OSGI做真正面向接口的开发
  • 基于osgi开发web程序的参考文章
  • 【随机文章】
  • Win32 二进制资源格式(续二)
  • 用SSL构建一个安全的Apache之二
  • 使用RMAN进行oracle备份
  • 三维虚拟跑车大制作
  • Lucene In Action
  • 宽字符标量L"xx"在VC6.0/7.0和GNU g++中的不同实现[zt]
  • 实验七 直联路由
  • 站在别人的肩膀上的开发
  • mendia player 9.0要与.net框架通信,还必须注册mendia player 9.0的pia
  • 长沙本地宽带网络建设方案(3)
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.