大家谈18岁的Java——李刚:Java需要引入更多的新的探索

2013年,已经进入第18个年头的Java仍然是InfoQ上最受欢迎的话题,最近的《详细分析Java中断机制》、《关于Java性能的9个谬论》、《深入理解Java内存模型》等系列文章,一直占据InfoQ阅读热榜的首位。同时,今年7月的JavaOne购票入口)再次选择了中国,7月22-25日将在上海世博中心举行连续4天的会议,话题涵盖核心Java平台、JavaFX与用户体验、Java EE和Web服务/云,以及Java ME/Java Embedded/Java Card等技术领域。

\

2013年,在云计算、大数据、移动互联网等话题占据了人们所有的注意力的时候,Java的状态到底如何?近期,InfoQ中文站将对业内几位资深Java项目作者与书籍作者进行采访,了解他们眼中Java的现状,以及他们对Java未来的看法。

\

今天受邀参与采访的嘉宾是疯狂Java创始人,广州为学教育科技有限公司疯狂软件教育中心教学总监李刚老师(@疯狂Java李刚)。

\

InfoQ:Java语言给您留下的最初印象是什么?您最初的Java项目是什么样的?

\
\

李刚:大约在1999年的时开始接触Java时,当时感觉Java仅仅只是在网页上做一些有趣的Applet动画, Applet可以让传统静态的HTML网页“动起来”,而且能响应用户动作,因此这些Applet动画极大地吸引了我,于是我开始学习Java语言。至于第一个Java项目,那时候还在大学读书,我所做到第一个有印象的Java项目是完全用JSP兼职做的一个客户收集、跟踪、反馈系统。当时的JSP还停留在Model 1的层次,后来看那个项目在很多地方都存在问题,所以后来对,J2EE许下的“承诺”无比欣羡,又义无反顾地投入J2EE、EJB的怀抱。

\
\

InfoQ:您现在接触的Java项目跟那时相比,有怎样的变化?

\
\

李刚:无论早期的Java项目,还是现在的Java项目,它们本身的业务规则会随着市场、客户的改变会存在一些变化。从技术实现的角度来看,现在的Java语言明显要成熟多了,无论是前端技术,还是各种中间层技术,以及各种规则引擎之类,现在的Java语言明显更加成熟和稳定。而且现在许多软件企业已经对各种开源技术进行过一些定制,往往能更快、更稳定、更大限度地适应项目的业务。

\
\

InfoQ:您是否会推荐您在Java项目中的年轻程序员去掌握其他编程语言?您的首选推荐语言是什么?

\
\

李刚:对于一个真正的程序员而言,很难永远只用一门语言。对于已经掌握了Java这种强类型、静态语言的年轻程序员而言。至少还应该掌握一门弱类型、动态语言,通过掌握两种不同类型的编程语言,这样才能更好地进行对比。实际上,弱类型、动态语言也有很多,比如Ruby。

\
\

InfoQ:对于一些从新锐编程语言开始入行的年轻程序员,比如Ruby程序员,您是否会推荐他们了解Java?为什么?

\
\

李刚:毋庸置疑,Java是一门应用最广泛、最有价值的编程语言,就目前的趋势来说,大型应用的服务端编程的首选是Java,而且目前移动互联网的Android平台的开发语言也是Java,无论从哪个角度来看,Java都是发展前景最好的编程语言,因此我推荐所有程序员都应该了解、学习Java。

\
\

InfoQ:JVM下多语言协作开发是否能够最大化地发挥Java自身的优势?

\
\

李刚:在Java平台,目前已经存在多语言协同工作,多种语言植入Java平台后能够充分发挥各自的优势。各种脚本语言之所以能够流行,是因为脚本的修改、发布更加方便。而Java在服务端,已经成为了各种脚本语言的宿主环境,为脚本语言在企业中的应用提供了稳定、灵活的基础平台。其实这对Java而言不是一种替代,而是一种补充、加强。实际上JVM已经为多语言协同运行提供了平台,不同语言可以专门用于实现特定的组件,同时这些组件都运行在相同的JVM环境下,因此不同组件之间能以透明的方式调用,就像调用本身语言的API一样。

\
\

InfoQ:您觉得Java语言自身存在的挑战是什么?

\
\

李刚:就我个人感觉来看,Java目前已经发展得比较成熟和稳定。但也许正因为这种现状,导致Java语言在各种新技术的探索,不如以前活跃。而任何一门技术,必须保持快速的生长和更新,不断注入新的血液。对于目前的Java语言来说,即使有些不成熟的探索,也会随着市场沉淀慢慢趋于理性,这样才能更好地保持Java的生命力。但Java目前最大的问题在于:Java需要引入更多的新的探索。而Oracle对Java的重视程度似乎不够,每2年一次的更新也往往很难如期发布。而且这几年开源技术社区也不够活跃,很少见到真正影响力广泛的技术。

\
\

InfoQ:一旦Java 8走向成熟,是否可以支持现有系统向Java 8的成熟迁移?

\
\

李刚:当Java 7发布之后,我们已经在第一时间升级了《疯狂Java讲义》一书,全面介绍了Java 7的各种新特性。在Java 7成熟之后,在不少软件公司的技术咨询中,我都会推荐他们去尝试使用Java 7平台,尤其是Java 7新引入的G1垃圾回收器。当Java 8真正发布后,我们也会在第一时间升级了《疯狂Java讲义》,全面介绍Java 8的各种新特性。至于在公司的技术咨询服务上,我会评估从原有平台迁移到Java 8所需的成本和风险,以及Java 8能给现有系统带来的好处。是否应该把一个现有系统迁移到新平台,往往是一个综合、折衷的考虑,很难直接给出答案。

\
\

InfoQ:能否谈谈目前Java开源社区的一些变化?开源社区对Java发展起到了哪些推动?

\
\

李刚:总体来说,现在Java开源技术社区发布的新技术太少,很少听到影响广泛的开源技术,让人感觉Java不如前几年活跃。在这方面,其实Oracle应该多做一些技术前瞻性的引导,同时也可以加强与开源技术社区的互动,从而为Java语言注入更多的血液。就像以前Sun公司,他们推出的J2EE平台,他们的各种前瞻性的设计思想和理念,直接催生了后来的Hibernate、Spring等各种开源技术。希望Oracle能通过Java发布一些更前沿、更先进的技术,这样也能激发开源社区对Java的热情,让Java不断融入新的技术热点。

\
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值