在年,美国贝尔实验室的D.M.Ritchie在B语言的基础上最终设计出了一种新的语言,他取了BCPL的第二个字母作为这种语言的名字,这就是C语言。
在过去近半个世纪,C语言成为每一个计算机系学生必须学习的语言,成为计算机行业飞速发展的见证者之一。
但相当多的计算机系学生在毕业后却转向了另一种编程语言,他们在大学的时候通过Sun公司的大学合作计划接触到它,深深被其社区文化、开源精神、优异的跨平台性和成熟的生态系统所吸引,在经过简单易学的上手过程之后,将其选定作为自己的主要编程语言之一。
这些人将自己称之为“Java程序员”,这种编程语言,正是Java。
不过,与他们中大多数人以为的不同,Java的历史远比C要“新鲜的多”,就当今演艺界对男演员们的标准来评价,Java是当之无愧的“小鲜肉”:
年,以詹姆斯·高斯林为领导的技术开发团队在历经多年没日没夜的工作后,发明了当今世界最为重要的编程语言之一的Java,这一当前与C同等重要的编程语言,发明至今,才刚刚20岁。
也就是说,詹姆斯·高斯林、阿瑟·凡·霍夫、安迪·贝克托克姆、比尔·乔伊、约翰·盖吉、帕特里克·诺顿、韦恩·罗斯因和埃里克·斯库米等人共同创造了一个“90后的编程语言”。
Java:编程语言中的独特存在与Java休戚相关的诸位“大神”:斯科特·麦克尼利、詹姆斯·高斯林、比尔·乔伊、安迪·贝克托克姆等人。
在过去的20年,Java一直是编程语言中极为独特的存在,他以较低的学习门槛为大量开发者所熟悉,以强制面向对象的设计思路被市场认可,分布性、健壮性、安全性和体系结构中立的特点为人所称道,而更关键的是,Java是编程语言中,设计早期就提出“可移植性、跨平台性”的编程语言之一。
Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是Java企业应用编程接口(JavaEnterpriseAPIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。
好在过去二十年,计算机行业有Java的存在,否则,天知道今天我们要怎样才能设计出那么多跨平台、高性能、面向对象的动态程序。
但如今20岁的Java,在一些人心中却变得好像不那么重要了,PHP、Go、Ruby等一干编程界新兴语言带来的冲击自不必说,针对Java的讨论也越来越多的集中在它的缺陷而不是优点上,有人说“Java世界需要改造与完善、需要和过去说再见,但更需要稳定与统一,否则必死无疑”也有人说“问题变得越发不能容忍了,我开始想,是时候慢慢离开Java了”。
20岁的Java,才至成年,却已迟暮?作为Java如今的“拥有者”,Oracle怎么做?
Java改变了世界,现在,则是改变JavaSharatChander,甲骨文公司Java平台开发事业部Java开发人员关系团队总监及JavaOne大会主席,在甲骨文中国庆祝Java20周年的活动上说,在过去20年,Java在全球共计建立了个Java用户组、50多个JUG为JCP投稿,全球有超过万Java开发程序员。
在他的职位中,有一个极为特殊的部分,就是“Java开发人员关系团队总监”,与其他编程语言不同,Java来自与一家商业公司,如今更是在被全球最大的IT供应商之一的甲骨文所运营管理,但它确实最早以开源及社区概念改变了全球编程语言格局的产品。
Java生态环境中最重要的组成部分就是Java社区,SharatChander表示:“Java最大的成功就在于Java社区,Java社区的蓬勃发展,以及Java社区的所有开发人员为Java过去二十年所做出的贡献,是Java生命力最重要的来源。”
JDK8中做出的改变,看得出来,甲骨文对Sun的收购对Java的发展还是有积极的作用的,至少迭代速度比以前要快了许多。
那么,Java又如何深刻的改变了这个世界呢?
甲骨文公司Java平台组开发副总裁GeorgesSaab引述Java架构师MarkReinhold的话:“可读性、简洁性、通用性和兼容性;Java光辉历史和美好未来的关键”表示,过去20年,Java在万开发人员的共同努力下,在超过40亿部设备中运行并存在于97%的企业计算机中。
在程序员社区之外,大多数人接触Java都源自于“Java游戏”,一些在非智能手机时代,可以通用在多种不同手机上运行的游戏的统称,而这也正是Java最大的优势之一,随着Java不断演进,JavaCard、JavaMEEmbedded、JavaSEEmbedded、JavaSE以及JavaEE等不同版本被推出,Java帮助嵌入式系统、桌面电脑、移动终端和服务器等设备实现了更好的兼容性和运行特性,极大的改变了原本复杂的、需要多次编译的传统编程语言所面临的问题。
特别是JavaEE,EE代表“EnterpriseEdition”,即用来开发和部署可移植、健壮、可伸缩且安全的服务器端Java应用程序,它提供Web服务、组件模型、管理和通信API,可以用来实现企业级的面向服务体系结构(service-orientedarchitecture,SOA)和Web2.0应用程序。
除了详细介绍了JDK8在核心库、安全性、Java通用升级、客户端、工具、企业等多个领域的升级,GeorgesSaab着重提到了Java当前两个非常重要的项目,一个是Lambda,被称为“Java语言、Java库现代化过程中的一次重大飞跃”以及“Java编程模型最重大的一次升级”;另一个是Stream,包括全新的关键Java库抽象、更便捷地对序列执行聚合操作、更轻松地为应用引入并行机制等等。
GeorgesSaab表示,Java在甲骨文公司的管理和运营之下,会持续的在现代化、性能、简易性和安全性方面前进,特别是在Java9中,更多的模块化源代码、模块化运行时映像以及进程API更新会让Java进入全新的发展时期。
在努力之下,Java的优势从未改变众所周知,Java的一个最重要特性,就是它的跨平台性,这不仅对于不同设备(嵌入式、桌面或是服务器)等有着极为重要的意义,在不同的服务器环境以及未来的云环境中,甲骨文公司认为,“Java的跨平台性仍然是它最重要的特性”。
GeorgesSaab表示:“过去二十年的经验告诉且不断地证明给我们,如果用Java语言来进行编译的话,能够最大程度上保护你所付出的辛勤工作,能够在技术不断革新的过程当中,给你提供更好的保障。”
他谈到,当时提出的“一次编译,随处运行”是在九十年代中期的背景下提出的。因为当时有不同的操作系统,大家都是在桌面机的环境下使用不同的操作系统,所以说当时Java有这样的优势。
但确实随着市场的发展,整个情况稍微跟当时有一些不同。现在我们看到世界上绝大部分的服务器都是在Java基础之上搭建的。虽然整个大的环境发生了变化,大部分的Java目前应用在服务器上面。
不过,“一次编译,随处运行”的意义仍然重要,比如说,处理器在不断的更新,英特尔或甲骨文自己也在不断更新软件。如果你不是用Java,而是用低水平原始语言在编程的话,很难去利用芯片或硬件不断更新带来的优势。但是如果用Java的话,就可以不断利用芯片或其他硬件更新带来的技术优势。
“不断地在和世界各地制作硬件和操作系统的厂商保持密切合作,来确保所有新的硬件以及操作系统的技术革新一旦出现后,Java能够充分被这些支持。而且可以充分地利用硬件和操作系统所产生的技术进行优化。”
但Java的跨平台性在当今世界的重要意义还不止于此。
GeorgesSaab表示,物联网、云服务,以及各个行业及工业界的革新,都需要Java所提供的“一次编译,随处运行”特性:“工业自动化是最直接的领域。包括未来的智能家庭、汽车行业的发展,以及医疗、教育等等行业的发展,在未来可能都会有很多应用的空间。”
甲骨文物联网云服务,在这其中,Java很可能是串起所有珍珠的那根金线。
当然,除了前端界面上能够看到的Java,大量后台都是以Java为基础运行的,其广泛应用在包括IT、互联网、制造业、航天科技、深海探测的不同的领域,而随着工业4.0、物联网以及云计算的发展,设备之间的融合与连接也变得越来越多,甲骨文全球集团副总裁、中国研发中心总经理熊光樑表示,“就中国来说,不止是工业、物联网行业,在农业等IT应用较少的行业,Java都有着极大的潜力。”
毕竟,Java很容易被编写出来,而且,“一次编译,随处运行”。
治白癜风专业医院白癜风皮肤病