|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
恰恰证明了java的简单,要不怎么没有通过c/c++来搞个这种框架?Sun公司的首席工程师——MarkReinhold一向主意将SunJDK模块化。他举例申明了庞大性怎样伤害这个平台,和JDK6update10版的JavaKernel和Quickstarter的功效只是办理了JDK临时联系关系发展招致的外表诟病。
Mark起首注释了JDK为什么会成为如今如许复杂的形态:JDK十分年夜,但还没有像宇宙这么年夜。
JDK很年夜是由于在已往13年里,JavaSE平台已从一个最后盘算用于嵌进式设备的小体系开展成为高出宽广范畴、服务于宽大需求的一套丰厚的库汇合。具有如许一个复杂且功效壮大的瑞士军刀真是难以相信的便利,不外尺寸却分歧适。 他接着注释了由此招致的弱点:JDK很年夜——同时也是严密联系关系的。它作为一个全体的软件体系构建。在这类开辟形式下,当编写新代码大概改善老代码的时分,很天然地会使用平台的其他部分,依托Java假造机的天真链接机制包管运转时统统都一般事情。
可是多年来,这类开辟情势招致了API之间的意想不到的联系关系——和API的完成之间——这又增添了启动工夫和内存占用。比方,一个复杂的命令行“Hello,world!”程序,如今加载和初始化凌驾300个独自的类,只管做出了更优异的工程优化(好比类共享),可是在最新的桌面体系上仍旧必要100毫秒。固然,关于更年夜的使用来讲,情形会更糟。 Mark仿佛以为JDK6update10版中的JavaKernel和Quickstarter功效是不敷的:JDK6update10版的JavaKernel和Quickstarter功效切实其实改良了下载工夫和(冷)启动工夫,最少对Windows用户来讲是如许。这些手艺也的确办理了临时联系关系发展的外表诟病,可是,没有办理基本成绩。 模块化JDK——最有但愿改善下载工夫、启动工夫和内存占用这些关头值的办法是正面办理基本成绩:把JDK分别为一系列界说优秀的、独自的、可是相互依附的模块。 他又议论了模块化对平台的优点:把JDK分化为模块的历程会强制一切意想不到的联系关系公然化,然后经由剖析,多半会被埋没大概打消。这反过去,会削减加载类的总数,从而改良启动工夫和内存占用。假如我们有一个模块化的JDK,鄙人载时,我们就会供应启动特定使用所需的那些模块,而不是全部JRE。JavaKernel是这类办理计划的第一步,利用界说优秀的模块的进一步优点是下载流能够依据以后使用的特定必要提早定制。 Weijun对最后的帖子宣布了定见,以为JDK的全体特征是因为Java没有办理依附的符合体例招致的:JDK很年夜是由于Java历来没有指定任何办理软件依附的产业级办法。因而,独一牢靠部署java栈的举措就是把它打包成一个伟大的怪物。
特地说一句,只要SUN和其JDK是如许的。这类短少依附性办理的最坏了局不是招致JDK痴肥,而是一切带有硬编码类路径和大批分支的没法办理的使用(由于假如你没法自力的办理和更新依附,你大概会分付出一个自愿绑定到使用的公有拷贝)。
你应当很简单了解为何Java只存在于J2EE服务器中(服务器供应了基本java平台所短少的办理功效) GeekyCoder以为模块化的JDK对年夜多半开辟职员来讲大概不是最急需的:固然这很“酷”,但我嫌疑这对年夜多半开辟职员来讲是不是是最急需的。
我有一种欠好的感到,就是你大概会被多数对你博客的主动回应所影响,而不管他们是不是代表了全部Java开辟社区。
即便只是修复一个票数最多的bug也比仅仅弄“酷”要好很多。我以为“聆听你的客户”只是一个过期的、关闭的、已被完全丢弃的设法,可是,看一看好的方面...你如今具有两名宣称乐于助人的开辟职员。祝你好远。 SimilarlyMichaelB仿佛以为企业用户不体贴模块化JDK:模块化的JDK(或更切实地说JRE)对企业用户完整有关。我以为,企业用户喜好JDK它如今的模样,由于模块意味着依附,这听起来像“DLL天堂”。如今JDK很简单分发和打补钉,这很主要。别的,Java具有优秀的向上兼容性:不但“编写一次,各处运转”,并且还“编写一次,永久运转”,这意味着伟大的投资报答率(ROI)。这是人们更喜好Java而不是.NET的缘故原由之一。MS的计谋一向是:“这是增加了最新功效的新版本,请修正和兼容你的一切使用。”MS手艺太夭折了。Java平台今朝已模块化:模块是我的使用所必要的第三方库。我喜好SUN的形式——只要这些库充足成熟了才会酿成平台的一部分。强健性和牢靠性是Java乐成的关头。以是,请归去持续办理那些残剩的bug吧。我真的很喜好JDK6update10版的这方面功效。 检察英文原文:TheMassive,MonolithicJDKshouldbecomeModular
本文出自:http://www.infoq.com/cn/news/2008/12/modular_jdk
学习JAVA的目的更多的是培养自身的工作能力,我觉得工作能力的一个核心就是:独立思考能力,因为只有独立思考后,才会有自己的见解 |
|