仓酷云

标题: JAVA编程:与Josh Bloch切磋Java将来仓酷云 [打印本页]

作者: 深爱那片海    时间: 2015-1-18 11:32
标题: JAVA编程:与Josh Bloch切磋Java将来仓酷云
你总不能说你写框架吧,那无疑会加大工作量,现在大多企业采取的是折中的办法,就是改别人写好的框架,可要改框架,前提是你对这个框架足够的了解,这就更难了。JoshBloch在Sun公司多年为Java平台作出了出色奉献(假如你用过JavaCollections框架就会懂得这一点),如今Google就任,是获奖图书《EffectiveJava》及《EffectiveJava第二版》的作者。比来他在基于Web的RedHat两头件2020年夜会上做了一场演讲,其大旨是对Oracle所办理的Java平台的将来暗示出谨慎悲观和忧愁。InfoQ采访了Josh以懂得其在这方面的更多设法。由于有很多分歧的、实际的概念交叉在一同,此次会商(特别思索到Sun人才网从Oralce流掉日趋加重和为Oracle怎样办理社区和Java智力资产而担心)是比来以来最强烈热闹的一次。我们很乐意能与Bloch一同会商这些成绩。
InfoQ:你最关心的是甚么?
这不是个单选题,已往几年有良多要素胶葛在一同,招致了Java风向产生了变更。
InfoQ:为何你会以为Java的开展措施慢上去了?
InfoQ:关于Sun所不克不及及,Oracle有更好的办理计划吗?
Oracle有撑持JCP变革以闭幕争真个汗青。并且他们在经济上也比Sun更有气力,以是他们可以承当起中兴这一平台的重担,并且他们也公然宣扬要这么做。终极,因为此次易主,一些汗青遗留成绩迁就此闭幕。关于Sun来讲不成承受的一些变更,Oracle也许会从全新角度往对待——“为何稳定呢?”
InfoQ:是不是一切关键都回结为允许成绩?
不,允许成绩只是个中的次要成绩,但另有其他成绩。正如我之前提到的,关于资本、向导力、核心的缺少也都是成绩。
InfoQ:ApacheHarmony项目(被作为Android类库的基本)的景况可承受吗?(在Google接纳Harmony作为Android类库基本之前,Harmony与Sun就TCK允许成绩奋斗得很剧烈。Google决意利用Harmony而非OpenJDK对Harmony的TCK允许争端影响其实不年夜,却对Sun决意其OpenJDK利用GPLv2允许影响很年夜。假如没有更宽松的允许协定,Google的互助同伴不会批准利用。Apache构造一度被授与了一个受限的TCK允许,但其仍被回绝,由于利用范畴的限定对Apache和JCPEC来讲都是不成承受的,他们以为这一限定违背了JCP协议。)
不克不及承受。正如之前我所提到的,它拦阻了平台的安康发展。并且它给浩瀚公司带来了伟大的事情压力,形成在Harmony和OpenJDK之间不用要的资本拆分。
InfoQ:你但愿Oracle对Harmony这类工具做出何种反响?
我但愿他们能实行在2007年12月12日JCPEC集会上所提出的决定:
[quote]决定1(Oracle发起,BEA附议)
“实行委员会以为JCP应当成为一个开放的、自力的、厂商中立的尺度化构造,在这里一切成员介入的公允合作场合具有以下特性:
别的,假如这一厘革实践对Java社区影响较小,EC应当尽快为此制订企图。”
至于说“新的、简化的常识产权政策”,假如一切Java标准的一切组件都采取像Apache或BSD如许被普遍承受的宽松的开源允许,我以为这将十分有益于全部社区开展。
[/quote]InfoQ:你怎样看Oracle的脚色?
我很乐见他们可以改正Sun向导力不敷及Java平台开展迟缓的成绩。固然如今的情形有点分歧了,天下已改动了。其他构造将奉献更多的资本并享有更年夜的把持权。
InfoQ:你以为像Dalvik如许的工具能顺应新的OracleJava情况吗?
在极新的开源天下里,有多个相干平台是既定现实。有很多类Unix操纵体系及很多Linux变种(为多种用处做了优化)。我以为Dalvik作为VM,有着一模一样的计划方针,而且遭到HotSpot或JRockit的制约。
InfoQ:别的,你怎样看JavaME的开展?完全被代替了?Sun会“祝愿”Android成为下一代JavaME吗?在Android/iPhone当道的明天,JaveME怎样与之合作?
我以为我不合适就此作出推想,可是必要指出的是,在开辟界“功效手机——featruephones”(相对“智妙手机——smartphones”)仍有一席之地,而JavaME恰是为功效手机而计划的。
InfoQ:比来,Tiobe言语排行不止一次显现出Java利用率下落的趋向。你怎样看?
其显现Java利用率稍微下落,响应的C利用率却在上升。我不断定这是实在情形的仍是某种统计非常,可是看到一个已存在35年之久的“通用汇编言语”排在了第一名还蛮风趣的。固然,我供认C在我内心是一软肋。
InfoQ:这一点也许能够证实,可是你以为是自己JVM利用率下落了,仍是因为Ruby/Scala/Jython/Groovy的增加招致了Java份额的下落?
实践上你提到的这几门言语都没有排在前20。这其实不意味着他们不主要或没有代价。但他们还不是支流。不外,近年言语研讨和计划开展的数目让我感应震动,出现出很多好的头脑,更难以想象的是人们正在探究这些言语。
InfoQ:你以为Java在阑珊吗?我们应当为此而感应担心吗?
我以为,公允地说Java正处在坚苦期。可是我不以为该平台或言语在阑珊。我以为其有阑珊的伤害,可是我但愿Oracle和Java社区可以避免这一情形呈现。没错,我以为它让人人感应担心。我以为一个壮大的Java对编程公共是无益的:包含公司、初等教导、K-12、开源社区。
InfoQ:依你之见,谁有但愿替换它(并且不在JVM上)?
除过CLR(实在际上仅是Windows上的平台)以外,还没有哪个能与JVM处在统一程度线上。实践上,还没有谁能真正替换Java编程言语。是有很多很好的编程言语,可是没有一个有一样的“计划中央”。言语是工具,我们应当针对分歧事情利用准确的工具。没有包治百病的药。
InfoQ:有没有发放JRE允许的贸易案例?
也许有一些一目了然的变相案例。可是我以为坚持JRE被普遍利用切合Oracle的好处,这和在Sun的时分一样。
InfoQ:接着上一个成绩,固然也是独自一点:关于在JRockitJVM、SunJVM及其他各色VM手艺之间举行和谐的概念,你怎样看?
实际上,我以为把各个JVM的长处抽掏出来组分解一个更好的工具是一件十分好的事变。可是请记着Sun乃至从未乐成将客户端和服务器真个分歧HotSpot加以整合。整合多个体系长短常难的,能够完成但毫不简单。一旦失利本钱将十分奋发。
InfoQ:另有甚么要增补的吗?
我只想提示一下人人,很多近期的Java乐成案例都被吞没在出路昏暗的声响之下了。这些案例中包含GoogleCollections、Guice、你后面所提到的JVM言语、和Android。有了Oracle方疾速、判断的举动,加上Java社区的普遍互助,我以为Java平台的远景十分光亮。
检察英文原文:ADiscussionwithJoshBlochontheFutureofJava
本文来自:http://www.infoq.com/cn/news/2010/05/bloch_java_future

最后我再次声明,我并没有说不看好java,实际上我对java很乐观的,毕竟她正在不断改进中,我相信她总有一天会和.net网页编程并驾齐驱的
作者: 第二个灵魂    时间: 2015-1-21 09:36
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
作者: 小妖女    时间: 2015-1-25 12:00
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
作者: 小魔女    时间: 2015-1-25 16:48
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
作者: 兰色精灵    时间: 2015-1-26 23:07
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
作者: 再见西城    时间: 2015-2-4 16:49
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
作者: 愤怒的大鸟    时间: 2015-2-6 07:25
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
作者: 变相怪杰    时间: 2015-2-6 16:19
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
作者: 精灵巫婆    时间: 2015-2-17 04:00
象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
作者: 透明    时间: 2015-3-5 15:42
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
作者: 莫相离    时间: 2015-3-6 19:51
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
作者: 谁可相欹    时间: 2015-3-6 21:16
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
作者: 若相依    时间: 2015-3-11 08:28
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
作者: 飘飘悠悠    时间: 2015-3-15 13:35
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
作者: 深爱那片海    时间: 2015-3-15 14:42
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
作者: 若天明    时间: 2015-3-16 03:45
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
作者: 因胸联盟    时间: 2015-3-19 07:08
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
作者: 只想知道    时间: 2015-3-25 13:47
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
作者: 不帅    时间: 2015-3-27 22:08
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
作者: 活着的死人    时间: 2015-3-28 19:12
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2