全国服务热线:400-035-8011

位置:珠海达内IT教育培训学校 > 学校动态 > 你不知道的Java过去和未来发展的趋势

你不知道的Java过去和未来发展的趋势

来源:珠海达内IT教育培训学校时间:2019/11/24 9:03:26

Java一直位居编程语言的榜上首位,近的榜显示的使用率又有大幅增长。这个20多年的语言在焕发第二春。

回首Java过去的20年,首先是经历了微机时代的兴与衰,然后进入服务器领域及智能电话领域,继而在DHS的“不安全”定义下艰难前行,后投入Oracle怀抱。


你不知道的Java过去和未来发展的趋势


Java的诞生

1991年,James Gosling带领着名为“Green Team”的团队着手研发一种新的语言以及专为下一代数字设备和计算机使用的网络系统。历时4年辛勤工作后,该项目发布,取名为Java。

Java有着类似于C的语法并有“一次编译,随处运行”的灵便性。透过虚拟机机制,可以使代码在底层平台进行运行时编译。

回首Java过去的20年,首先是经历了微机时代的兴与衰,然后进入服务器领域及智能电话领域,继而在DHS(美国土安全部)的“不安全”定义下艰难前行,后投入甲骨文(Oracle)怀抱现正蓄势迸发第二春。

Java推出后,Sun发现市场上存在着一个问题 —— 计算机领域与非计算机领域彼此是隔断的。Sun认为这是一个机遇,如果能把两者连接起来将会带来一场计算机革命

当时的市场,两个领域的厂家各自为政,没有形成统一的网络。因此很多时候不得不重复大量的实验,问题的所在是电子消费品制造者没有考虑使用网络,例如跨平台的公共APIs或者代码复用。所有软件都只能不断地被重复创建,Java提出的模块概念将改变这一局面。

成功非

Java面世的头五年,成为当之无愧的编译器高性能代言人。而过后五年,所有人都把重心转向了企业应用。在90年代,大多数开发者都把精力投入到桌面应用的编写之上。

到了2000年,Pet.com的成功吸引了大批的跟风者。业界又把焦点从桌面转移到了HTML应用。随着智能电话和平板的到来,基于触摸屏的移动应用又站在了风口。

Java 2 Micro Edition(J2ME)在1998年引入并把Java划分了三个平台:Java 2 Standard Edition(J2SE)、J2ME以及Java 2 Enterprise Edition(J2EE)。

ME的意思是小型设备和嵌入系统。ME在翻盖手机上得到推广,成为当时的标配。Gosling说,“ME已经做得足够好了,在当时是强大的智能电话开发平台。不过现在渐渐被遗忘,因为Android太耀眼了。”

作为一个独立平台,Java  ME被边缘化了。

未来趋势1 Java9的发布,形成更好复用性

Java 9将是自被Oracle收购后发布的重大版本。Java 9的主要目标是大限度实现模块化以帮助人们实现积木式的应用编写。

目的是帮助人们从JAR的束缚中解脱出来。该特性将贯穿整个Java库,并以单依赖图的方式重新整理依赖。

Java 9会把所有三个Java开发平台统一起来,模块化特性会使得Java ME的可复用性得到增强,这将是反击Android和iOS的有力武器。

新的APIs和性能特性:

1、轻量级的JSON API

2、HTTP 2Client支持HTTP 2.0和WebSockets,替代传统的HttpURLConnection

3、Process API更新提升对操作系统进程的控制和管理

此外还有一些小的特性和性能提升:

1、Improvecontended locking,提升访问对象时的线程竞争处理

2、Segmentedcode cache更好的性能、更短的扫描时间,更少的碎片

3、Smart Java compiler,或者叫sjavac,用于更大项目的构建

Java的本地接口也被重新作为Java Native Runtimeproject的一部分,将支持多GB堆和一个自调整的JVM

模块化的源码

如果你对上述特性不感兴趣,Oracle还承诺modular source code,目的是重新组织JDK的源码,使之模块化,以及项目Jigsaw的结构化实现。

未来趋势2 Java对物联网的支持越来越好

虽然现在的Java技术还不能完全满足物联网发展的需求,但是物联网为Java带来了新的希望,让已经边缘化的J2ME再次看到了曙光,作为物联网中跨平台的解决方案,J2ME拥有着得天独厚的优势。

Java的跨平台兼容性、为数众多的开发者群体、活跃的技术社区和“沙箱”模型等优点,都使得它成为了物联网应用开发平台的选择。

作为用户而言,大家都希望能将物联网应用采集到的大数据集成到企业的客户端系统,让这些数据变成企业的数据资源,输出到企业ERP、CRM等管理系统之中。

未来趋势3 Spring框架在大量应用中升级到Spring 4

Spring框架初发布于2004年,距今已经过去10多年了。在过去的10年间,Spring随着Java的变迁也得到了长足的发展,从一开始的IoC与AOP框架到现在涵盖各个业务领域、各种技术场景的一站式服务平台。目前的Spring拥有众多子项目,如Spring Batch、Spring Data、Spring Mobile、Spring Boot、Spring Security等等,基本上针对各种业务场景都提供了相应的解决方案。

做一个开心的程序员,很多开发者都喜欢使用的技术。将所用的框架升级到版会激发他们的生产力,他们也会因此学习到新的技术并改进自己的技能。

未来趋势4  Java微框架逐步流行

随着语言的成熟,每次发布都会增加一些库。时间一久,对于大部分项目而言,包含在这些库中的许多功能都不是它们真正需要的。微框架就是要解决这个问题,其思想是:创建一个专用而又灵活的解决方案,满足生产过程的基本需求。

三种当前较为流行的Java微框架。

Ninja是一个用于创建Web Service和应用程序的全栈Java微框架。它综合Play和Ruby on Rails的优点,并以纯Java格式提供。作为一个综合性软件栈,Ninja提供了大量开箱即用的功能,如JSON解析、HTML渲染,使得它简单易用。

在扩展性方面,Ninja采用了无状态设计,只需要增加服务器就可以实现横向扩展。不过,内置大量功能和简单易用的代价是,用户选择减少,工具本身占用空间较大。总之,Ninja重新设计了Java框架,提供了简单、可扩展、易于使用的功能。

Spark(注意不要同Apache Spark混淆)的设计初衷是,可以简单容易地创建REST API或Web应用程序。它是一个灵活、简洁的框架,大小只有1MB。

Spark允许用户自己选择设计应用程序的模板引擎以及选择适合他们项目的库,比如,HTML解析功能就有Freemarker、Mustaches、Velocity、Jade、Handlebars、Pebble或Water等选项可供选择,而且很少需要配置或样板文件。不过,灵活简单的代价是,用户可选的功能减少。

总之,Spark剔除了许多Java的臃肿之物,提供了一个小化的、灵活的Web框架。但由于精简程度较高,它缺少了一些功能,不适合用于大型Web应用程序的开发。

Jodd是一个Java微框架、工具和公用程序的集合。所以,它同上面两个框架可能不具有直接可比性,比如,Spark可以作为Jodd的一个组件。

Jodd的目标是减少许多Java工具和框架的空间占用,提高它们的速度,提供一个超级轻量级的框架和工具精选集合。Jodd中的每个库都是单独提供的,用户可以选择使用。这样一个提供若干功能的框架集合似乎与微框架背道而驰,但实际上,Jodd大小总共不过1.5MB。

总之,Jodd是一个框架和工具的集合,用户可以对它们自由组合,形成自己的解决方案。但同时,这种灵活性也增加了使用的复杂度。

未来趋势5 Java促进大数据的大发展

没有Java,甚至不会有大数据的大发展,Hadoop本身就是用Java编写的。当你需要在运行MapReduce的服务器集群上发布新功能时,你需要进行动态的部署,而这正是Java所擅长的。

领取试听课
每天限量名额,先到先得

尊重原创文章,转载请注明出处与链接:http://www.peixun360.com/1780/news/110003/违者必究! 以上就是珠海达内IT教育培训学校 小编为您整理 你不知道的Java过去和未来发展的趋势的全部内容。

温馨提示:提交留言后老师会第一时间与您联系!热线电话:400-035-8011