`
jiopi
  • 浏览: 32670 次
  • 性别: 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...

    企业员工薪酬关系系统 2024免费JAVA毕设

    系统的开发采用了模块化设计,将系统分为多个功能模块,例如用户登录模块、薪酬计算模块、报表生成模块、数据管理模块等。这样的设计不仅方便了系统的扩展和维护,也为用户提供了清晰的操作界面和流程。在数据库方面...

    疫情居家办公系统 2024免费JAVA毕设

    启动教程的链接是针对如何启动整个系统进行讲解,系统讲解视频则是对系统各个模块进行深入的介绍,而二次开发教程则指导学生如何对系统进行定制化的开发以满足特定的需求。 该系统的标签是vue.js、springboot、java...

    管理系统+计算机毕业设计项目+Java项目+Mysql数据库

    该图书管理系统的设计采用了模块化思想,将系统功能划分为多个模块,比如用户管理模块、图书信息管理模块、借阅管理模块等。用户管理模块负责处理用户的注册、登录、权限分配等操作;图书信息管理模块则负责图书信息...

    基于ssm的个性化商铺系统源码(java毕业设计完整源码+LW).zip

    同时,系统设计PPT的提供,有助于用户更好地理解系统架构和功能模块设计,为项目答辩或展示提供了资料准备。 基于SSM的个性化商铺系统是一个集用户管理、商品管理、订单处理于一体的综合电子商务解决方案,其源码及...

    JSP论文格式化系统_——后台模块的设计与实现(源代码+论文)(2024gk).7z

    首先,系统后台模块的设计需要考虑到模块化和可扩展性。这意味着后台系统应该由多个独立的功能模块组成,每个模块负责特定的功能,例如用户管理模块、格式化规则模块、内容解析模块等。通过模块化设计,可以方便后续...

    基于java的蛋糕甜品商城系统设计与实现.docx

    在当今信息化迅速发展的时代,管理系统正在逐步实现智能化和系统化。然而,面对市场体量和信息量的日益增长,传统的手工管理方式已显得力不从心。在此背景下,一个基于java的蛋糕甜品商城系统应运而生,旨在提高工作...

    基于java+ssm+mysql的客户关系管理系统.doc

    随着信息化时代的到来,传统的客户关系管理模式已经不能满足现代企业的需求。因此,基于Java、SSM(Spring, SpringMVC, MyBatis)框架和MySQL数据库开发的客户关系管理系统应运而生,它能够极大地减少人力和财力的...

    实习管理系统 2024免费JAVA毕设

    本文将详细介绍一个为计算机科学与技术专业的学生准备的免费毕业设计成品——实习管理系统 2024免费JAVA毕设。 该毕业设计成品包括完整的源代码、数据库设计以及往届优秀的论文资料。这不仅为学生提供了一个可以...

    基于java+springboot+vue+mysql的医院药品管理系统设计与实现.docx

    在当今信息化时代,医院药品管理作为医疗服务的重要组成部分,对于提升医院工作效率和患者用药安全有着不可忽视的作用。本文旨在探讨基于java、springboot、vue和mysql的医院药品管理系统的设计与实现,通过现代信息...

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

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

    基于java语言的医疗设备管理系统-434p9oe1-论文.zip

    综合以上信息,本文强调了Java语言在医疗设备管理系统开发中的关键作用,并详细探讨了系统开发过程中涉及的多个重要方面,包括数据库设计、开发文档编写、项目整体说明、以及演示材料的准备。通过对这些文件内容的...

    基于Java微服务架构的高校餐饮网购与配送系统设计源码

    本项目采用Java语言开发,微服务架构的设计理念让系统具有了更好的灵活性和可维护性,实现了服务的独立部署和运行,有效提高了系统的稳定性和可扩展性。 系统的设计涵盖了多个微服务组件,如employee-server(员工...

    【java毕业设计】水稻朔源信息系统源码(ssm+mysql+说明文档).zip

    在信息化时代背景下,通过这样的系统,可以有效地提升水稻种植的管理水平,加强农产品质量的追踪和监控,为消费者的食品安全提供了更为可靠的保障。 系统的设计不仅仅局限于技术层面,还涉及到农业管理的业务流程。...

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

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

    基于java+ssm+mysql的服装店销售管理系统开题报告.doc

    在当今信息化时代,随着经济的发展和生活水平的提升,服装行业的普及程度不断上升,市场竞争也日益加剧。为了提升经营效率,实现服装销售管理的信息化变得至关重要。传统的行业管理软件在功能、性能和准确性方面存在...

    java 耿祥义 课件

    面向对象的思想是现代软件开发的核心,通过理解这些基础概念,学习者能够逐渐掌握如何组织代码,使其具备更好的模块化和复用性。 随着学习的深入,学习者将接触到更高级的主题,例如异常处理、集合框架、输入/输出...

    【计算机程序设计项目源码】ssm网上办公自动化系统.zip

    在当今信息化快速发展的时代背景下,计算机程序设计已经成为众多行业不可或缺的一部分。尤其在企业办公管理领域,自动化系统的设计与实施对提高工作效率、优化管理流程具有重大意义。本次提供的项目源码“ssm网上...

Global site tag (gtag.js) - Google Analytics