写点什么

Java 三十周年:一门改变世界的编程语言回顾

  • 2025-05-29
    北京
  • 本文字数:1511 字

    阅读完需:约 5 分钟

大小:696.88K时长:03:57
Java 三十周年:一门改变世界的编程语言回顾

1995 年 5 月 23 日,三十年前的加州旧金山 Sun World 大会上,Sun Microsystems 正式发布了 Java 编程语言。

 

Sun 将 Java 定义为一种:


简单、面向对象、分布式、解释型、健壮、安全、架构中立、可移植、高性能、多线程的动态语言。

 

Java 之父 James Gosling 则给出了更简洁的定义:


Java 就是除去了枪支、匕首和棍棒的 C++。

 

Java 最初的命名为 Oak(据称源于 Gosling 办公室窗外的橡树),其诞生可追溯至 1990 年 12 月 Sun 公司的 Green 项目。Gosling 与 Patrick Naughton、Mike Sheridan 希望创建一门面向消费级应用的编程语言,且具备架构无关性和面向对象的特性。1992 年 9 月,他们推出了名为 Star7 个人数字助理,该设备集成了电视遥控、电子节目指南等功能,可通过 5 英寸的屏幕图形界面操作。

 

官方吉祥物 Duke 也作为“智能代理的化身”首次亮相于 Star7 的界面。这个由 Sun 员工 Joe Palrang 设计的形象被描述为“随时提供帮助的友好伙伴”。

 

从 Applet 到泛型、Lambda 表达式、var 类型推断,再到记录类(records)和密封类(sealed)以及虚拟线程;从 Java EE 到 Jakarta EE;从平均三年的发布周期缩短至每半年一次——Java 在这三十年间也有低谷,比如包括被诟病“运行缓慢”甚至被开发者认为“已消亡”,但仍是有了重大的演进。

 

Oracle 的最新举措源自其 Java 语言架构师 Brian Goetz 在 2022 年 9 月发表的博客《铺设入门之路》。经过四轮预览,JEP 512(紧凑源文件与实例 main 方法)最终定案,该特性旨在“优化 Java 语言设计,让学生编写首个程序时无需理解面向大型程序的语言特性”。Oracle 技术顾问 Gavin Bierman规范文档对此有详细说明。

 

Oracle 通过 Java 三十岁生日的庆祝活动来纪念这一里程碑。六小时的庆典由开发者倡导官 Ana-Maria MihalceanuBilly KorandoNicolai Parlog 与产品管理高级总监 Sharat Chander 共同主持,邀请多位嘉宾就广泛议题展开讨论。

 

Oracle 的技术领袖们分别进行了专题讨论:Java 平台组首席架构师 Mark Reinhold 探讨了 Java 的管理工作;Brian Goetz 讲解了“降低入门门槛”计划和 Lambda 表达式;Gavin Bierman 带来了 Java 语言更新报告;Java 平台组软件开发高级副总裁 Georges Saab 讨论了语言发展;技术顾问 Stuart Marks(人称“Dr. 废弃特性”)则专门讲解了 Java 集合框架。

 

社区倡导者和活跃人士也分别发表了见解:被称为“巴西 Java 先生”的 Bruno Souza 讨论了 Java 社区对开发者的影响;Spotify 高级后端工程师 Mohammed Aboullaite 分享了在中东和非洲的社区推广工作;Endava 首席开发顾问 Laurentiu Spilca 则介绍了通过非英语内容吸引初学者的计划。

 

JetBrains 的开发者倡导官 Mala GuptaMarit van Dijk 提供了许多 IntelliJ IDEA 的使用技巧,比如如何使用 IntelliJ IDEA 的编程助手 Junie

 

Oracle 教育的 Java 负责人 Heather Stephens 采访了伊利诺伊州 Riverside Brookfield 高中的数学与计算机科学教师 Sandy Czajka,探讨高中阶段的 Java 教学。随后,Stephens 又采访了分别来自斯坦福大学、华盛顿大学和加州大学伯克利分校的三名学生,听取他们对 Java 的看法。

 

Agile Developer 公司总裁 Venkat Subramanian 带来了“Java 中隐藏的创新”主题演讲,内容涉及五大方法调用操作码之一的 invokedynamic、流式编程中的惰性求值,以及与 heredoc 相关的智能缩进等主题。

 

Korando 采访了 Java 之父 Gosling,后者分享了他对 Java 创建历程的回顾以及对当前发展状况的见解。

 

Java 能否再续三十年辉煌?如今的年轻 Java 开发者或许将见证这一预言是否成真。但凭借充满活力的 Java 社区及人们对这门语言的热爱,我们很可能会在 2055 年迎来 Java 的六十周年大庆。

2025-05-29 14:006236

评论

发布
暂无评论

泛互联网行业A/B测试全解析:产品优化的创新之道

字节跳动数据平台

A/B 测试

微信公众号短链实时获取阅读量、点赞数爬虫方案(不会Hook可用)

不在线第一只蜗牛

爬虫 微信公众号 工具分享 hook

华为云DTSE助力无锡云数IoT系统:打造超可靠数字化之源

华为云开发者联盟

云计算 后端 华为云 华为云开发者联盟 华为云DTSE

智能开发助手——华为云CodeArts Snap,揭开智能研发新篇章

人工智能 华为云

克魔助手抓包教程:网络数据包分析利器

ClickHouse分析效率翻倍提升,揭秘奇点云对归因分析场景的优化实践

先锋IT

“一次不过、免费再考” 限时活动开启,快来考取亚马逊云科技认证吧!

亚马逊云科技 (Amazon Web Services)

培训与认证

阿里云PolarDB开发者大会首度召开,让数据库开发像“搭积木”一样简单

阿里云瑶池数据库

数据库 云计算 阿里云 云原生 开发者大会

百度基于金融场景构建高实时、高可用的分布式数据传输系统的技术实践

JackJiang

网络编程 即时通讯 IM

Web Components从技术解析到生态应用个人心得指北

zhoulujun

国外服务器租用:如何在预算内选择最优服务

一只扑棱蛾子

国外服务器

详解KubeEdge EdgeMesh v1.15 边缘CNI特性

华为云开发者联盟

开发 华为云 容器网络 华为云开发者联盟

喜报!博睿数据荣获数据猿“年度创新服务企业奖、年度创新服务产品奖”

博睿数据

可观测性 博睿数据 运维监控

阿里云容器服务助力万兴科技 AIGC 应用加速

阿里巴巴云原生

阿里云 云原生 容器服务

克服传统企业数字化转型的十大阻力

天津汇柏科技有限公司

数字化转型

一款轻量级、基于Java语言开发的低代码开发框架,开箱即用!

互联网工科生

Java 低代码 数字化 开发框架 JNPF

一、nextjs如何使项目工程化(c-shopping电商开源)

Geek_9da61c

开源 eslint prettier husky next.js

Java 三十周年:一门改变世界的编程语言回顾_编程语言_Michael Redlich_InfoQ精选文章