`
iwmd24iwmd
  • 浏览: 12718 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

Java的未来

 
阅读更多

Java的未来
2011年03月18日
  对于学习java的人来说,了解Java的历史,把握Java现在的态势,关注Java未来的发展是很有必要的!
  对Java来说,2010年是不平凡的一年,从Oracle在年初完成对Sun的收购,使大家对Java的未来充满了关注。
  在企业生根发芽 
  Java的第一次出彩是在服务器领域,这里仍然是它的主要舞台,人们总是寄希望于Java虚拟机。大 型服务器也是Oracle的看家本领,所以这里他们的组合可以轻松搭配在一起。虽然PHP程序员会喜爱MySQL,但在许多最重要的数据密集的项目中,企 业依旧会使用Java搭配Oracle,这不会很快改变,尤其是那些最严肃的企业比如银行和保险企业,因为Java的真正跨平台能力和它的快速和安全。根 据Sun的统计,GlassFish应用服务器每个月有超过100万次下载,而Tomcat等旧平台仍然很受欢迎。  
  的确,Java不再是最新最时髦的语言。一些年轻程序员开始抱怨并且转向那些更新或是更简单的语言,比如Ruby、Python或PHP,这样他们可以快速的编写一些比较简单的Web应用,因为这些语言确实方便,能够快速改变和快速成型。 
  然而这些新兴的语言都与Java有着千丝万缕的联系。Ruby的开发者常常要用到JRuby这个Java语言实现,因为Java虚拟机在处理多 线程的大量工作时做得更好。Jython,一个基于Java的Python克隆语言也采用了相似的处理方法。虽然这些语言拥有不同的名字,不同的语法和特性,但相同的一点时他们都是基于JVM的语言,并对Java API非常友好。 
  另外比如Ruby on Rails的许多简单声明模式来自于由Groovy 与Hibernate 等Java技术构建的Grails框架,直接连接到Java API。而Groovy本身添加了许多动态选择,这让Java程序员没有必要去考虑Python或Ruby,因为Groovy可以享用Java庞大的类库和牢固的虚拟机,同时又有时髦的现代语法。
  走向移动设备 
  Java手机的数字是惊人的26亿,这是因为即便是在现在市场上最简单的手机里,都会有什么地方正在运行着JavaME。运行Java的智能手机数目没那么惊人。iPhone的巨大成功让许多人重新学习Objective C,为了能控制比如内存消耗这样的更低级别的系统问题。而Java把大多数的这些底层问题都隐藏起来了,程序员不容易微观管理这些资源,但智能手机几乎比 任何其它平台都更需要底层资源管理,因为就连电池的寿命这样的问题都非常关键。
  然而Java依然会有需求,因为BlackBerry会继续使用JavaME作为新手机的平台,并且增加了对触摸屏的支持和配置文件的加速度。 Android有点特殊,Google搭建Android时使用的是开源的Apache Harmony平台及其类库,而不是Sun的JDK和JavaME,但在编写代码时看起来和Eclipse大致相同。
  在10年6月份举行的JavaOne大会上,Oracle和Sun正式启动了Java软件商店 ,这也许会为Java在手机和其他设备领域的应用开发带来新的活力和增长。
  获得桌面阵地
  很多人一再声称Java在桌面上永远不会成功,这种质疑声从来没有停过。然而事实是,尽管缓慢,但Java已经稳步的挤入了现代操作系统中。虽 然基于Swing的标准应用在为了满足各平台的不同要求时依然显得左右为难,但新选择比如JavaFX和Webstart的发展则逐渐使通过网络发布软件成为可能。 
  JavaFX支持完整的Java API,作为图形引擎已经能与Adobe的Flash一较高下,但它的开发语言却和Java与JavaScript不太一样,Java程序员需要新学它的东西。当然,新的动画类会成为高度互动的桌面工具。RIA和炫目的桌面应用将成为Java发展的一个重点。 
  Webstart试图通过浏览器把软件直接带到桌面上,它一直在缓慢的进展着,虽然软件的链接依然会因为一些奇怪不兼容而出现故障,但方向是正确的。
  什么是Webstart呢?传统情况下,通过 Web 发布软件需要用户在 Web 上查找、下载,而后在系统中存放并执行安装程序。执行安装程序后,将提示指定安装路径和安装选项,例如完全、典型或最小安装。这是一项耗时而又复杂的任务,并且在安装软件的每个新版本时都必须重复进行。相反,通过 Webstart 部署的应用程序,Web 浏览器使整个过程自动完成。没有复杂的下载、安装和配置过程,并且确保您始终使用最新版本。 
  嵌入式领域 
  Java在原先人们最不报期望的地方也持续着兴旺的势头。虽然C程序员可能永远不会承认Java虚拟机玩弄内存块的能力,但Java在低端手 机、机顶盒、嵌入式芯片和其它低功率小玩意上的成功表明,虚拟机在竞争中的表现相当不错。虽然从大铁块的平台转向小个头的嵌入式代码并不容易,但使用 Java标准比起其他工具还是要简单得多。
  事实上,不管收购的最终结果如何,Java的代码基础仍然具有相当的凝聚力,Java将运行在世界的每一个角落,台式机、手机、蓝光播放器或任 何其他地方。想象一下,早晨被Android的智能提示叫醒,在Java的桌面上工作,晚上回家后在客厅使用蓝光播放器看电视,这样的生活多么惬意。
  而有趣的是,那些躺在沙发上使用着Java应用的人可能不会想起Java的最初目标就是机顶盒,那时候它仍然叫做橡树。然而正是这样的一个目标为我们带来了一个如此强大的系统和跨平台的稳定性。
  核心平台趋势:多语言,模块设计
  Java平台的一个大趋势就是多个语言的发展,尤其是基于JVM的脚本语言。过去几年间,JVM上发展了如JRuby,Jython以及Groovy这些动态语言,以及Scala这样的静态语言。
  Java已经被公认为是非常成功而流行的语言。现在,Java也同时也被认为是非常流行的平台,而基于JVM的语言正在开始流行。类似于"Java之外,选择Scala还是Groovy? "这样的问题,在一、两年前就开始出现在Java开发者们讨论的话题中,但在现阶段,Java开发者们普遍对这两种语言了解不多。
  随着下一个核心Java平台JDK 7的推出,这种支持将变得更加强大。JDK 7中新增了一个bytecode:这是JVM上第一次新增的一个bytecode。还有其他的一些增强,这些增强将会使脚本语言这样的动态语言可以天然在 JVM上运行。这是JDK 7中最令人振奋的新特性之一。
  RIA趋势:更加R(丰富)的RIA
  RIA 具有的桌面应用程序 的 特点包括:在消息确认和格式编排方面提供互动用户界面;在无刷新页面之下提供快捷的界面响应时间;提供通用的用户界面特性如拖放式(drag and drop)以及在线和离线操作能力。RIA具有的Web应用程序的特点包括如:立即部署、跨平台、采用逐步下载来检索内容和数据以及可以充分利用被广泛采 纳的互联网标准。RIA具有通信的特点则包括实时互动的声音和图像。  
  客户机在RIA中的作用不仅是展示页面,它可以在幕后与用户请求异步地进行计算、传送和检索数据、显示集成的用户界面和综合使用声音和图像,这一切都可以在不依靠客户机连接的服务器或后端的情况下进行。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics