`
jiopi
  • 浏览: 32142 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

进入Java模块化系统时代,你准备好了么?

阅读更多

使用JIOPi构建工业化模型的Java模块系统系列文章之一

——进入Java模块化系统时代,你准备好了么?

 

系统模块化是趋势,工业产品是这样,程序设计亦然。

 

编程语言大致经历了 机器码->汇编->面向过程->面向对象

 

每一次前进,都向模块化系统化迈进了一步

 

那么我们的系统模块化了么?对比工业化产品的模块化程度,显然没有,但探索的步伐没有停止

 

OSGi给我们展示了嵌入式系统中的模块化系统模型,在嵌入式环境中,很成功。但是,这个模块化系统模型却不适合用于嵌入式系统之外的WEB应用。

 

那么什么是工业化的模块化系统呢?我们首先来看一个工业化产品的模块化程度吧。

 

特别说明:下文中的标准化模块并不是说超级标准,而应理解为在一个范围内的标准,大可到世界范围,小可能只存在于一个特定的系统之中

 

PC,这是一个大家非常熟悉的工业化产品,当然里面用了大量标准化模块,比如CPU,主板,显卡,硬盘,内存。。。PC的模块化程度到了什么地步了呢?你可以任意替换一个PC的这些组成部分,任意排列组合,他们都还能正常工作。

 

虽然大部分模块在运行时不能热插拔,但是部分模块还是提供了热插拔功能,比如硬盘。

 

当然,这是我们看到的一个层面,就一个显卡而言,里面又是一个模块化系统,主芯片是nvidia,ati,加工方又是其他厂商。

 

这是我所能理解到的层次,nvidia的主芯片内部是否又存在一套模块化体系呢?我就不知道了。

 

以上我能叫得出模块名的,他们其实不是模块,而是蓝图,只有具体到一个具体型号的产品时,才是模块,因此我们说 把CPU插到主板上,这其实是 蓝图 被设计可以这么做,而不是由模块决定的,不同的模块都在执行同一个行业标准,从而使得PC系统成为了一个通用模块化的系统。

 

如果PC的这些部件都不通用,那即便是模块化了,又有什么意义呢,用户还是只能买某个厂家的品牌机,而且还不能自己升级部件,因此,模块化系统的另一体现是在一定范围内的标准蓝图架构。

 

工业化产品的模块系统模型给我们展示了一个庞大的,可复用的,可自由组合的 模块化系统架构,以及可灵活局部升级系统的机制(升级内存,硬盘等),你希望你的Java系统也像工业化产品一样可以随时更换零部件来提升功能么?

 

现在,如果你愿意,你已经可以将你的Java系统升级成这样的一个工业化模块系统了。

 

你要做的就是在你的工程的lib下方一个50k的Jar包和一个配置文件,下载地址如下

http://dl.iteye.com/topics/download/f2ee9c4a-4f3d-387e-b3cd-0756c5e42599

 

 

欢迎各位一同探讨,你希望的 Java模块化系统 是什么样子?

分享到:
评论
22 楼 wangzaixiang 2012-04-24  
leonranri 写道
jiopi 写道
wangzaixiang 写道
不会写文档,是吧,那你就给一个Example吧?

连Example也不会,写个readme是否会呢?

再说,如果不会写文档,咋写起帖子来,字数一点都不少,除了废话,就是屁话,一点都切不入主题,这等抽象能力,实在怀疑素质。


丢人啊,怪不得国外人觉得中国人没素质,都是被极个别人给丢的

Example 已经一堆了,readme 在 下载包里,实现原理一篇没少,函数说明完完整整,你去找了么?你去看了么?




这种人太让人鄙视,不管是谁发帖,都本着共同学习共同探讨的原则。即使楼主有什么思路或者哪个地方有问题,可以指出来,哪个地方不好,该如何改进,大伙共同进步。
一上来不管37 21就开始喷,这些人都是用下半身思考问题的,为了净化技术论坛,这种人建议禁止进入。还国外人,时代在进步,国外人不是唯一标准,切记不要怀着“外来和尚会念经”思想。要取其精华,弃其糟粕,不要“崇洋媚外”式的好坏通吃

我还忘记在这里发个言,后面喷的人,你们知道当时这个帖子上提供了什么东西?有文档吗?有例子吗?有代码吗?什么也没有,倒是有一个罗罗嗦嗦的帖子。
21 楼 leonranri 2012-04-23  
jiopi 写道
wangzaixiang 写道
不会写文档,是吧,那你就给一个Example吧?

连Example也不会,写个readme是否会呢?

再说,如果不会写文档,咋写起帖子来,字数一点都不少,除了废话,就是屁话,一点都切不入主题,这等抽象能力,实在怀疑素质。


丢人啊,怪不得国外人觉得中国人没素质,都是被极个别人给丢的

Example 已经一堆了,readme 在 下载包里,实现原理一篇没少,函数说明完完整整,你去找了么?你去看了么?




这种人太让人鄙视,不管是谁发帖,都本着共同学习共同探讨的原则。即使楼主有什么思路或者哪个地方有问题,可以指出来,哪个地方不好,该如何改进,大伙共同进步。
一上来不管37 21就开始喷,这些人都是用下半身思考问题的,为了净化技术论坛,这种人建议禁止进入。还国外人,时代在进步,国外人不是唯一标准,切记不要怀着“外来和尚会念经”思想。要取其精华,弃其糟粕,不要“崇洋媚外”式的好坏通吃
20 楼 kazy 2010-06-08  
支持楼主,起码比起光说不做要强的多,先下载源码看看
19 楼 jiopi 2010-06-04  
SoloTerran 写道
要推这种标准没有大厂商的支持都是死路一条


个人兴趣,无欲则无求
18 楼 SoloTerran 2010-06-04  
要推这种标准没有大厂商的支持都是死路一条
17 楼 jiopi 2010-06-04  
whh121 写道
下载包里除了一个jar文件和一个properties文件,并没有sample和readme啊

下载包也分 min版,标准版 源码版

去这里下
http://code.google.com/p/ibean/downloads/list


我没任何义务进行有效使用培训,有问题去
https://jiopi.dev.java.net/ 问,我尽量回复

例子什么的请关注我的博客,我会慢慢添


最后声明:我做的是开源软件,不是教学者,不是收了钱的教育机构,更不是来卖软件的。
16 楼 whh121 2010-06-04  
下载包里除了一个jar文件和一个properties文件,并没有sample和readme啊
15 楼 jiopi 2010-06-04  
wangzaixiang 写道
不会写文档,是吧,那你就给一个Example吧?

连Example也不会,写个readme是否会呢?

再说,如果不会写文档,咋写起帖子来,字数一点都不少,除了废话,就是屁话,一点都切不入主题,这等抽象能力,实在怀疑素质。


丢人啊,怪不得国外人觉得中国人没素质,都是被极个别人给丢的

Example 已经一堆了,readme 在 下载包里,实现原理一篇没少,函数说明完完整整,你去找了么?你去看了么?
14 楼 mp_juan 2010-06-04  
OSGI很多可能是未来的一种趋势,不过现在就那么几个成熟的平台可供选择,有些还需要收费,实际上的应用也不是那么容易就迁移到OSGI的
13 楼 wangzaixiang 2010-06-04  
不会写文档,是吧,那你就给一个Example吧?

连Example也不会,写个readme是否会呢?

再说,如果不会写文档,咋写起帖子来,字数一点都不少,除了废话,就是屁话,一点都切不入主题,这等抽象能力,实在怀疑素质。
12 楼 jiopi 2010-06-04  
phlsbg 写道
更期待module关键字来解决这个问题,而不是利用框架层面。


JIOPi构建的是POJO风格的模块化系统,JIOPi的模块本身也是POJO,无需任何修改即可运行在非JIOPi环境中

也就是说,按照JIOPi标准开发的模块,不用做任何修改,既可以作为 JIOPi模块化系统的模块,也可以作为普通Java系统的类库使用


PS,@Module 好像是用于 JDK模块化 的,不是用于开发人员构建自己的模块化系统的
11 楼 jiopi 2010-06-04  
comsci 写道
JAVA的CLASS不是一个个模块嘛? 程序设计本来就是模块化的。。。
一个又一个组件和运行库一起组成一个应用系统,本来就是模块化的呀
好像并不是什么创新的想法吧?


正如我在最初所说的,系统模块化是趋,到了面向对象的编程时代,系统的模块化程度确实达到了一个较为不错的水平

但是相对 工业化产品 的模块化程度而言,我认为还是不够

因此JIOPi提出的是忽略实现类的模块化系统,因为忽略了实现了,也就忽略了Classpath

和 JDK7 的模块化相似,“类路径永远不会出现了。”Reinhold(Java SE和OpenJDK的首席工程师)说。(英文原文:Class path is dead)

JIOPi构建的Java模块化系统一样忽略了 实现类所在的 Classpath

如果你将JIOPi的实现类部署在 JDK级别,那么你可以做到运行环境的ClassPath中没有一个Jar包,你要做的,就是在JIOPi的配置文件中配置一个远程模块库地址
10 楼 comsci 2010-06-04  
JAVA的CLASS不是一个个模块嘛? 程序设计本来就是模块化的。。。
一个又一个组件和运行库一起组成一个应用系统,本来就是模块化的呀
好像并不是什么创新的想法吧?
9 楼 jiopi 2010-06-04  
kazy 写道
连一点文档都没有,怎么用?

所以这是系列文章之一罗

有兴趣加入么?写文档比写程序都累
8 楼 phlsbg 2010-06-04  
更期待module关键字来解决这个问题,而不是利用框架层面。
7 楼 freej 2010-06-04  
changkunyang 写道
构想非常好,不过具体到实现的时候不知道效果怎么样?就像OSGi提倡的插件式开发都嚷嚷几年了,到现在好像效果。。。



OSGi是针对应用框架和工具化软件来讲的,对于业务应用软件来讲并没有太亮眼的东西。所以大多数业内人士并不容易看到OSGi的成就。
6 楼 kazy 2010-06-04  
连一点文档都没有,怎么用?
5 楼 jiopi 2010-06-04  
changkunyang 写道
构想非常好,不过具体到实现的时候不知道效果怎么样?就像OSGi提倡的插件式开发都嚷嚷几年了,到现在好像效果。。。


好不好你试试了,目前iBean v0.3.0.0 已经做了 JIOPi v0.3的参考实现,基本实现了我上面说的 工业化模块系统模型,教学文档继续中。。。
4 楼 changkunyang 2010-06-04  
构想非常好,不过具体到实现的时候不知道效果怎么样?就像OSGi提倡的插件式开发都嚷嚷几年了,到现在好像效果。。。
3 楼 huzhenyu 2010-06-04  
说了一堆,不知所云。

相关推荐

    汽车销售管理系统(java web)源代码

    cars.sql文件很可能是预先准备好的数据库脚本,用于创建系统所需的表结构和初始化数据,如用户表、车辆信息表、销售记录表等。 系统功能方面,用户管理是基础,包括用户注册、登录、权限控制等。车辆管理则是核心,...

    基于java的企业进销存管理系统

    在信息化时代的今天,企业进销存管理系统的存在至关重要,它能够帮助企业高效地管理库存、销售和采购等核心业务流程。本系统以Java技术为核心,结合JSP(JavaServer Pages)进行前端展示,为用户提供直观、便捷的...

    java web ssh 网上订餐系统源码(含数据库脚本).rar

    在当今数字化时代,网上订餐系统已经成为日常生活中的重要组成部分,尤其在高校、企业等场所,便捷的订餐方式极大地提高了效率。本系统采用Java Web技术栈,结合SSH(Struts2、Spring、Hibernate)框架,以及MySQL...

    基于java知识图谱的科技政策管理系统源码+运行说明.zip

    在信息化时代,科技政策的管理和应用已经成为提升国家科技创新能力的关键环节。基于Java的知识图谱技术为科技政策的系统化、智能化管理提供了可能。本系统源码的实现,旨在帮助用户高效地检索、理解和运用科技政策,...

    Java Web 图书馆管理系统(DOC).docx

    - **系统背景与重要性**:在当今数字化时代,图书馆管理系统对于提高图书馆工作效率、优化读者服务体验至关重要。通过有效的信息化手段,不仅可以提高图书资源的利用率,还能帮助图书馆更好地进行资源规划与管理。 -...

    网上订餐管理系统

    《网上订餐管理系统详解》 网上订餐管理系统是现代餐饮业与互联网技术深度融合的产物,它为消费者提供...对于餐饮企业来说,引入这样的系统不仅可以提高运营效率,还能提升品牌形象,更好地适应数字化时代的市场环境。

    Beijing-started-office-automation.rar_Office_办公_办公 Java_部署

    在数字化办公的时代背景下,北京起步办公自动化系统以其高效、便捷的特性,成为众多企事业单位提升办公效率的重要工具。本篇将深入探讨该系统的部署流程,以及其中涉及的关键知识点,帮助读者更好地理解和实施这一...

    驾考培训系统 驾考答题系统 科目一科目二科目三科目四模拟考试培训系统源码.zip

    在当今数字化时代,驾驶考试培训系统已经逐渐从传统的纸质教材转向了在线模拟考试系统。本篇将深入探讨“驾考培训系统”以及“驾考答题系统”的核心组成部分,特别是针对科目一至科目四的模拟考试源码。这些系统旨在...

    javaweb电影购票系统开题报告.doc

    在当今数字化时代,网络已经成为人们生活中不可或缺的一部分,对各个行业产生了深远影响。电影购票系统正是这种影响的体现,尤其是基于Java Web的在线购票系统,它为用户提供了极大的便利,使得人们不再需要亲临电影...

    基于springboot的高校心理教育辅导系统源码数据库.rar

    在当今信息化时代,教育领域不断探索新的教学模式和管理方式,其中心理教育辅导作为高等教育的重要组成部分,也需要与时俱进。本篇文章将深入解析一个基于SpringBoot框架开发的高校心理教育辅导系统,旨在为计算机...

    Java Web课程资源建设与探索.pdf

    Java Web课程资源建设是当前教育领域关注的重要议题,特别是在信息化高度发达的时代,传统的教材已无法满足学生的学习需求。本文主要探讨了如何构建适应现代学习环境的Java Web课程资源,旨在建立一个开放、进化的...

    Java SSH框架整合搭建Web系统(Struts1.2+Spring2.5+Hibernate3.2)

    ### Java SSH框架整合搭建Web系统(Struts1.2+Spring2.5+Hibernate3.2) #### 一、准备工作 在开始构建基于Struts1.2+Spring2.5+Hibernate3.2的...这种架构不仅能够提高开发效率,还能够使代码更加模块化和易于维护。

    互联网+平台下的高职《JAVA程序设计》课程教学改革.docx

    2. 考证模拟模块:为帮助学生准备相关资格证书考试,如Oracle Certified Associate或Java Programmer认证,平台提供模拟试题,让学生在实践中熟悉考试格式,提高应试能力。 3. 在线交流模块:鼓励学生之间的互动,...

    基于Android云计算的移动点餐系统设计.pdf

    在数字化时代,移动点餐系统作为一种创新的应用场景,为餐饮行业带来了深远的影响。基于Android云计算的移动点餐系统融合了云计算的强大计算能力和Android平台广泛的用户基础,通过无线网络实现数据的交互与处理,...

    图书馆管理系统的设计及实现.doc

    本文档主要探讨了图书馆管理系统的设计与实现,旨在解决传统图书管理中存在的效率低、操作复杂等问题,并适应数字化时代的需求。 1. **系统设计的重要性** - 提高反应速度:图书馆管理系统能够快速响应图书流通...

    物业管理系统-开题报告

    传统的人工管理方式已经不能适应信息化时代的需求,存在诸多问题,如效率低下、信息查找和更新困难。随着科技的进步,计算机为基础的物业管理信息系统将成为趋势。 未来发展趋势主要包括计算机技术的进一步应用,如...

    网上订餐系统

    在当今数字化时代,此类系统已经成为餐饮业不可或缺的一部分,尤其在高校、办公区和居民区等地方广泛应用。本毕业设计项目旨在构建这样一个网上订餐系统,包括前端用户界面和后台管理功能,以满足不同用户的需求。 ...

    springboot556医院档案管理系统的设计与实现代码pf.rar

    在当今信息化时代,医院管理系统的构建对于提升医疗服务质量和效率具有重要作用。本文将围绕“springboot556医院档案管理系统的设计与实现”这一主题,深入探讨该系统的核心技术和实现细节,旨在提供一个高效、安全...

Global site tag (gtag.js) - Google Analytics