2024年,在风云际会的编程世界里,窥探Java的前世今生,都说它穷途末路,我认为是柳暗花明!

2024年,在风云际会的编程世界里,窥探Java的前世今生,都说它穷途末路,我认为是柳暗花明!

文编|JavaBuild

哈喽,大家好呀!我是JavaBuild,以后可以喊我鸟哥,嘿嘿!俺滴座右铭是不在沉默中爆发,就在沉默中灭亡,一起加油学习,珍惜现在来之不易的学习时光,等工作之后,你就会发现,想学习真的需要挤时间,厚积薄发啦!

截止2024年1月,全球程序员人数预计达到2800万,其中热门的程序语言高达几十种,在此之中包含着太多太多的传奇故事,作为程序员,鸟哥想说:工欲善其事必先利其器!想要真正掌握一门语言,必须要先了解它的历史,今天!作为Java语言的追随者,想和大家聊一聊Java的前世今生!

"Java"名字的由来

Java是一个简单、健壮、可移植、安全、高性能、面向对象的编程语言,于1995年由Sun公司牵头开发。

Java期初并非叫Java,甚至于这个名字都没有进入备选前三行列,最初架构搭建的时候这套语言被命名为"Greentalk",因为,当时这个项目组的名字叫Green很随意的起名。

后来改名为Oak,翻译成中文为橡树,在欧美很多国家,橡树因其高大、强壮、枝繁叶茂被视为国树,而恰巧的是,詹姆斯.高林斯( James Gosling) 的窗外就有一颗,什么?詹姆斯.高林斯是谁?

不会吧不会吧,准备学Java了还不认识他?那就附个图出来吧,就是下图这位红光满面,大脑袋锃亮的大叔,Java的主要开发者,被誉为"Java之父"

因此,Java的第二个名字就应运而生了,天公不作美,Oak已经被其他公司捷足先登了,无奈之下高林斯团队只能重新起名,新名字需要具备dynamic(动态的)、revolutionary(革命性的)、Silk(像丝绸一样柔软的)、Cool(炫酷的)等特点,有人说用"Silk",也有人说用"Lyric",但最终都没有被律师团队认可。

有一天,团队中的一个工程师Mark Opperman去咖啡店喝咖啡,得到启发想将他们的语言命名为"Java",这个单词在英文中的意思是印度尼西亚爪哇岛,而比较巧的是,这个地方盛产咖啡。

马克回去将自己想到的名字与团队成员分享之后,大家一拍即合,Java之名从此诞生,并寓意:希望后世之人可以通过Java过上舒适,惬意的生活。

Java的版本变更史

上个世纪90年代,单片计算机诞生,推动了电子产品的智能化,为抢占市场,Sun公司高层紧急会议,推出"Green"计划(绿色计划),由詹姆斯·高斯林(James Gosling)牵头,开发出一种可以在多种电子产品上运行的程序架构。

由此Green项目组正式成立,决定采用C++进行程序开发,但随着项目深度的进行,大家逐渐发现了C++的弊端, 庞大且复杂的C++无法满足他们丰富的跨平台需求,高林斯项目组经过深度讨论,最终咬牙跺脚,决定以C++为底层开发出一套简单,高效,跨平台的程序语言。

1992年Oak雏形诞生(此时的Java还要这个名儿),东西搞出来了,Sun公司经过多方洽谈,联系了不少的硬件公司进行商业展示,悲伤的是这一次Oak没有让金主爸爸们满意。

时间很快来到了1994年(这一年,鸟哥出生啦),Green项目用Oak开发出了可以在网页上嵌入小程序的Applet技术,此举让很多公司看到了Oak的价值,Oak活了下来。

1995年,Sun公司将Oak正式更名为Java,同年发布了Java1.0版本,提出了那句"Write Once, Run anywhere",一次编译,随处运行,这句口号注定会写入世界编程史。而这一年也成为了Java的元年,此后Java正式进入了版本迭代时代。下图为鸟哥整理的Java版本发展的时间轴。

现在Java基本稳定在了每半年一个版本,每三年一个LTS(长期维护版本),如今仅Java8,Java11,Java17,和去年9月发布的Java21为LTS版,其他版本皆属于过渡版,使用者不多。

Java的特点

那么作为编程语言界的常青树,Java究竟有哪些魅力呢?

  1. 简单易学(哈哈,这个俺不好评价,反正Java之父的发量在众多语言创始人中数得着的稀疏)
  2. 面向对象(封装,继承,多态)
  3. 平台无关性( JVM实现平台无关性),一次编译,随处运行
  4. 支持多线程
  5. 可靠性,安全性,高效性
  6. 支持网络编程
  7. 编译与解释并存
  8. 以上种种,在下看来都不足以让它经久不衰,强大的生态才是它的立身之本!

Java的应用

那么学了Java之后可以从事哪些工作呢?也是大家最关心,也是最重要的问题。鸟哥大致将Java的应用分为如下几点:

  • 桌面应用程序
  • Web应用
  • 企业级应用
  • 移动端,主要为安卓开发
  • 嵌入式系统
  • 游戏开发
  • 金融数据服务
  • 物联网
  • 大数据
  • 机器人
    如上行业均可,但不止于此哈

Java的钱途

除了学了能干啥之外,还有个更重要的问题是,干了能赚到米吗?答案是肯定的!如下2023年Java秋招的薪资待遇水平,可以作为参考。

但最近也在很多平台看到大量唱衰Java的文章,确实随着其他语言的强势崛起,以及很多应用场景的逐渐升级,Java的热度确实在降。

这份统计图统计的是近三年受欢迎编程语言排行,由此可看出,Java的排名逐年下降,但!目前在国内,Java仍然是使用人数最多的语言,仍旧拥有着庞大的市场。对于每年都要凉一次的Java,我们应给予足够的信心(当然,这里也想吐槽Oracle公司,商业化没问题,想赚钱也理所当然,但请你吃相好点!)

最后,用标题的一句话总结此篇:2024年,在风云际会的编程世界里,窥探Java的前世今生,都说它穷途末路,我认为是柳暗花明!

相关推荐
JavaBuild8 天前
面试官:DNS解析都整不明白,敢说你懂网络?我:嘤嘤嘤!
java成长计划
JavaBuild2 个月前
《一篇就够系列》之HTTP详解,覆盖高频面试考点!
java成长计划
JavaBuild2 个月前
坑爹面试官,一个网络连通性,把我干哑火了,无理取闹还是我太菜?
java成长计划
JavaBuild2 个月前
优秀的面试官!通过一个问题考察了所有网络编程知识点
java成长计划
JavaBuild3 个月前
NIO实现聊天室之:一切都要从网络编程的基础开始聊起!
java成长计划
JavaBuild5 个月前
NIO的三大核心组件详解,充分说明为什么NIO在网络IO中拥有高性能!
java成长计划
JavaBuild6 个月前
面试官:transient关键字修饰的变量当真不可序列化?我:烦请先生教我!
java成长计划
JavaBuild6 个月前
面试官:告诉我为什么static和transient关键字修饰的变量不能被序列化?
java成长计划
JavaBuild6 个月前
关于面试被面试官暴怼:“几年研究生白读” 的前因后果
java成长计划