写点什么

《Java 20 年:道路与梦想》迷你书发布

  • 2015-05-26
  • 本文字数:2531 字

    阅读完需:约 8 分钟

互联网与 Java 的诞生

1995 年春天,那是我第一次亲眼见证并体验互联网的魅力,当时网景公司刚刚发布了 Navigator 浏览器。因为我有 C 语言和 SQL 的软件开发背景,所以我立刻问自己——如何进行互联网编程?应该使用哪种计算机语言?虽然这些问题一时还找不到答案,但有一点我非常清楚:我应当投身于互联网,到那里去学习互联网编程。

同样是在 1995 年,Sun Microsystems 公司正式推出了 Java 1.0.2 版本。我马上就被其简洁的语法及内置的各类网络功能所吸引。当然,我也被其语言扩展性和跨平台能力深深折服。遥想当年,软件工程师们已经被跨平台这一老大难问题困扰了数十年之久,Java 则利用虚拟机解决了这个难题。我希望能在 DLL、DCOM 以及难于使用但又将自己牢牢锁定的其它开发工作之外找到新的编程乐趣。紧接着,我就搬到了硅谷,开始在众多项目中使用 Java 语言。坦率地讲,Java 当时还没能成为主流的开发语言。不过我认为它代表着一种新的趋势。

Sun 公司加大了对 Java 项目的投入,为 Java 迎来了快速发展期。此后不久,Java 1.1(又一主要版本)发布,让 Java 的下载量很快就突破了 100 万。然后微软公司也决定顺应这股潮流,并由此发布了微软的 Java 语言—Visual J++,而这进一步提升了 Java 的人气。不过问题来了,微软加入自己的私有扩展的 Java 语言只能运行在 Windows 平台之上,而非 Linux/Unix 环境下,这导致了一场旷日持久的官司,最后微软败诉。不过微软方面并没有因此而放弃努力,他们转而着手开发.Net 与 Java 分庭抗礼。

Java 的下一个五年

2001 年互联网泡沫破裂,Java 语言的普及速度也开始放缓。在这段低迷时期,有一家公司开始成长并在电子商务领域取得了卓越的成绩,它就是 eBay.com。我有幸能够在 eBay 公司领导技术平台的重新设计并根据 Java 平台对其进行全面调整。值得一提的是,面对 C/C++ 平台的各种挑战,eBay 仍然成为发展速度最快的电子商务网站。当时的问题在于,随着网站流量的不断增长,Java 语言编写的应用程序能否扛的住?毕竟 Java 当时的性能很有问题。这一切在调优后能否得到改善?Java 在开发效率方面是否有机会压倒其它编程语言?

经过三年的平台重组工作,Java 全面地完成了所有的承诺,之前的问题也烟消云散了。到 2005 年,eBay 已经成为全球规模最大的 Java 业务平台。那时,我们已经全面完成了由 C/C++ 代码库到 Java 的迁移工作。在此过程中,我们接连经历了从 Java 1.1 到 Java 1.3,再到 Java 1.5 的几次颇具难度的版本升级。JVM GC 算法随着时间的推移而不断改善,Java 在 eBay 的成功已然成为 Java 在第一个发展十年内出色能力与巨大潜力的最有力证明。

在开源领域的巨大成功

2006 年,Sun 公司开源了 Java。在接下来的十年中,整个开源社区在利用 Java 构建开源项目方面获得了巨大的推进与发展助力。InfoQ、JUG、JCP 等社区赞助方在 Java 平台与开发的促进方面起到了积极作用。原本的开发者社区逐步成为 Java 成果的重要载体,并从多个方面推动着 Java 的发展。开源社区中有越来越多高质量的 Java 框架出现,然后这些框架吸引了更多开发人员到 Java 平台中。社区培育出了一系列以 Java 为基础的工具与框架,使得整个生态丰富多彩。在由 Java 构建而成的项目当中,最为成功的当数 Hadoop 技术。Hadoop 已经在 Java 开发者当中获得了极高人气与信赖。Hadoop 的大数据概念当前正推动着众多行业寻找新的发展模式。时至今日,Java 开源社区中的活跃开发者数量超过 100 万,全世界 Java 开发人员的总数更是突破了 1000 万。

发展的生命周期

如果在诞生后的第一个十年,Java 走过了从婴儿到儿童的历程,那么如今的 Java 已经成为能够独挡一面的成年人,其语言功能已经全面成熟,开发人员拥有丰富而友好的开发环境。在使用 Java 与基于 JVM 的其它语言(如 Groovy、Scala、Clojure、JRuby 以及 Jython 等)时,开发人员的工作效率要远高于使用其它语言——特别是 Java 拥有大量开源框架及工具支持。Java 在开发后台服务方面一直领先于其它语言,这主要是由于 Java 代码拥有良好的可维护性与可管理性。在生产环境中,以 Java 为基础的解决方案拥有运营可追溯性优势以及更出色的社区支持力度。在招聘工程技术人才时,企业往往能够从 Java 开发者群体中更好地找到应聘对象——得益于 Java 的庞大开发者群体。

Java 的未来二十年

时至今日,Java 的身影在设备、云计算以及数据技术领域可谓随处可见。Java 对众多行业的发展产生了深远的影响,例如 ERP、电子商务、移动、社区、金融、游戏乃至一些我们想不到的领域。虽然自 Java 面世以来又有众多其它语言陆续出现,但它们在普及程度上仍然无法与 Java 相提并论。Java 对我的早期从业经历产生了巨大影响,在过去二十年中培养出整整一代开发人员,并将在未来继续为新生代程序员们指明发展方向。

尽管当下仍不断有新语言出现,但毫无疑问,未来二十年,Java 仍将会是最受欢迎的编程语言。如大家所知,Java 不仅仅只是一种主流编程语言,它同时也代表着一整个活跃的生态系统。Java 开发者们将自己的聪明才智投入到这个平台上,而平台则回报给他们工作岗位与相应薪酬。要打理好现有的 Java 解决方案,我们需要 Java。而为了顺利推动未来的业务发展,我们必将打造出更多 Java 应用程序。

随着移动互联网的井喷式发展,市场上出现了非常多的 Android 应用程序。而其发展依靠的正是 Java 的强大力量。随着科技的发展,越来越多的物联网设备将在未来几年中与我们见面。而 Java 也将继续在应用程序及服务的开发当中扮演重要角色,进而通过 Android 等技术方案实现网络设备互通互联。这种趋势目前刚刚起步并拥有可观的发展动力。随着整套开发平台的成熟与改进,Java 必将在未来的技术创新领域找到属于自己的定位。

携程网 CTO 叶亚明

携程网高级技术总监 吴其敏

目录

卷首语一:Java 20 年,道路与梦想

卷首语二:Java 20 岁生日快乐

Java 20 年:转角遇到 Go

Java 20 年:历史与未来

Java 20 年:JVM 虚拟化技术的发展

借助开源工具高效完成 Java 应用的运行分析

双重检查锁定与延迟初始化

Gradle 在大型 Java 项目上的应用

深入理解 Java 内存模型——锁

深入分析 ConcurrentHashMap

HotSpot 虚拟机对象探秘

Java 字节码忍者禁术

DukeScript:随处运行 Java 的新尝试


点击此链接下载

2015-05-26 06:213175
用户头像

发布了 219 篇内容, 共 149.8 次阅读, 收获喜欢 195 次。

关注

评论

发布
暂无评论
发现更多内容

超级应用平台(HAP)起航

明道云

一文弄懂竞品分析 - 竞品分析是什么| 从哪些方面分析 | 竞品分析报告怎么写?

彭宏豪95

效率工具 产品经理 在线白板 竞品分析 SWOT

如何系统、科学地自学编程知识?

代码生成器研究

智能汽车的山海之盾

脑极体

智能汽车

12 月 3 日北京,时序数据管理前沿技术+行业应用尽在 IoTDB 用户大会!

Apache IoTDB

软件测试/人工智能|一文教你如何配置自己的AutoGPT

霍格沃兹测试开发学社

2023年datafun随手记(1)

Hua

大数据 AI GPT LLM

LED驱动控制专用电路

芯动大师

IDC最新报告,增速减缓+AI增势,阿里云视频云中国市场第一

阿里云CloudImagine

云计算 视频云

跃见书单 | 一文带你读懂《人工智能简史》

码上跃见

AIGC #人工智能

登陆 Azure、发布新版本……Zilliz 昨夜今晨发生了什么?

Zilliz

azure Milvus Zilliz zillizcloud

软件测试/人工智能|教你如何使用ChatGPT的API

霍格沃兹测试开发学社

E往无前 | 海量数据ES 扩展难?腾讯云大数据ES 扩展百万级分片也“So Easy~”

腾讯云大数据

ES

只需3分钟!组织架构图如何简单快速制作

职场工具箱

组织架构图

为什么 Mac 适合编程?

代码生成器研究

全链协同,链接未来|端点科技联合IDC重磅发布新一代ERP白皮书

科技热闻

Puppeteer是什么?如何使用Puppeteer实现浏览器自动化

爱写字的阿城

自动化 批量 puppeteer

几种常见的排序算法总结

不在线第一只蜗牛

算法 排序算法 教程分享

我干嘛要去学Python???!!!

代码生成器研究

百度大模型安全解决方案获WitAwards 2023 年度大奖

百度安全

安全 大模型安全

核药供应链创新:远大医药策略与明道云实践

明道云

软件测试/人工智能|AutoGPT原理与架构介绍

霍格沃兹测试开发学社

喜讯!云起无垠成为国家信息安全漏洞库(CNNVD)技术支撑单位

云起无垠

淘宝商品详情API接口文档(API SDK)

tbapi

淘宝商品详情数据接口 淘宝API接口 淘宝商品详情页面数据 淘宝商品详情数据采集方法 天猫数据接口

铭文聚合交易平台 Scorpio:铭文赛道狂潮的新引领者

股市老人

鸿蒙学堂·创新实训营再度启航深圳,中国移动、国家电网等40余家企业参与

最新动态

北京同仁堂签署鸿蒙生态合作协议,加速推进鸿蒙原生应用开发

最新动态

拼多多商品详情数据接口应用在哪些场景?

tbapi

拼多多 拼多多商品详情接口 拼多多API接口

SQL 通配符:用于模糊搜索和匹配的 SQL 关键技巧

小万哥

MySQL 数据库 程序员 sql 后端开发

《Java 20年:道路与梦想》迷你书发布_Java_小盖_InfoQ精选文章