Java帝国的诞生-创新互联
文章目录
C语言帝国的统治
C++的诞生
Java的崛起
Java的诞生
Java统治的奠定基础
Java的发展
其他语言的威胁
当前名称:Java帝国的诞生-创新互联
链接地址:http://myzitong.com/article/jpjge.html
- 前情提要
- C语言帝国的统治
- C++的诞生
- Java的崛起
- Java的诞生
- Java统治的奠定基础
- Java的发展
- 其他语言的威胁
C语言帝国的统治
- C语言最早是由贝尔实验室的Dennis Ritchie为了UNIX的辅助开发而编写的(在B语言基础上开发出来的),于1972年诞生。
- C语言帝国的强大功能(贴近硬件,运行极快,效率极高等)和它的可移植性让它能够在各种硬件上游刃有余,于是C语言帝国迅速建立统治。
- 然而,C语言帝国的建立也给程序员们安上了两个沉重的枷锁:指针和内存管理。
- 虽然指针设立的初始目的是让C语言可以想汇编语言一样对地址进行操作,然而,C语言帝国并没有给我们的指针工具做越界的检查,指针的复杂性让一些新手程序员轻易犯错。
- 至于内存管理,C语言帝国更是持完全放任的态度,自己分配空间,自己释放!
- 更要命的是:这些问题在编译期完全发现不了,只有到了运行的时候,才会突然出现问题,导致我们手忙脚乱,花费大量时间在处理指针和内存管理上。
- 于此同时,帝国欺骗了我们,它一开始许诺的可移植性,只对标准C语言函数库成立,如果遇到一些针对特定平台的调用,则只能含泪对每个平台都写一份函数库!C语言的自由性与严格性产生了矛盾,一方面,C语言是一个自由可编写的语言(它允许我们自己编写自己的函数库并调用它们),另一方面,如果在编写时产生一点点小错误,就会导致编译失败。
- 正因C语言帝国这样的“暴政”,尽管它十分高效,但人们心中慢慢对它产生意见。
C++的诞生
- 与C语言一样,C++也是在贝尔实验室诞生的,Bjarne Stroustrup于20世纪80年代在这里开发出了这种语言,名称C++表示它是C的扩充版本。
- Bjarne博士为了避免受到C语言的局限性,参考了很多的语言例如:
- 从Simula继承了类的概念
- 从Algol68继承了运算符重载、引用以及在任何地方声明变量的能力
- …
正因如此C++实在是太复杂了,尽管它在图形和游戏领域取得了一些成功,但是实在是太难学了。
Java的崛起
Java的诞生
- C语言的暴政历史显然遭受一些人的反对,他们决定联合起来,另起炉灶,开发出一款更好用的语言。
- 这款新语言显然应该满足这些特性:
- 语法有些像C,以便人们接受和使用。
- 没有指针和内存管理
- 真正的可移植性(编写一次,到处运行)
- 面向对象
- 类型安全
- 具有高质量类库
- …
- Java名称来历
- 一开始Java准备叫做C++ - -,只是去掉C语言中的“糟粕”,并添加一些好用的东西,后来随着设计发现理念偏差太大,不得不另取名字。
- 后来想将其命名为oak(以他办公室外的橡树命名)发布时发现,oak这个名字已经被占用了。
- 最后进行讨论才命名为Java
Java统治的奠定基础
- 1995年的网页简单而粗糙,缺乏互动性,于是Java将目光置于网页上,并开发出一款图形界面程序(Applet),它让之前简单粗暴的东西看起来更加美轮美奂、震撼人心了。Java语言通过Applet让更多的程序员看到并开始了解Java这门语言。
- 1998年帝国派出三支部队准备扩张
- Java 2 标准版(J2SE):去占领桌面。开发出的桌面很难看,并且如果需要运行程序还需安装一个虚拟机,导致开发桌面的程序员无法接受Java,最终以失败告退。
- Java 2 移动版(J2ME):去占领手机。手机上的J2ME更像是功能圆满,功成身退。J2ME只是软件运行平台,而后面的安卓和iOS是操作系统,J2ME只靠自身无法与操作系统对抗,只能被淘汰。(淘汰前还是挺成功的)
- Java 2 企业版(J2EE):去占领服务器。Java的各种特性(简单、强大、可移植性、跨平台等)简直是为了服务器端而生,非常适合一些团队去开发一些复杂的大型项目。
Java的发展
- BAA公司是第一个使用J2EE许可证的公司,推出一款产品(weblogic),weblogic凭借它的集群功能第一次展示了复杂应用的可扩展性和高可用性。这个后来被称为中间件的东西,把程序员从事务管理、安全管理、权限管理等方面解放出来了,让他们能够专注于业务去开发,这立刻俘获了大量程序员的心。
- 其他商业系统纷纷入场,尤其是IBM公司,他在Java上疯狂投入,他不仅开发了自己的一个应用服务器WebSphere,还推出了eclipse。
- 程序员对Java非常热爱,他们基于Java开发了如Tomcat,Maven,MyBatis等非常多的平台,系统,工具。通过这些,程序员可以专注于业务相关的开发,而不用去专注于一些事物的开发,还有一些开发工具可以帮助我们简化开发步骤,帮助他们快速的开发项目。
- 历史进程
- 2006:Hadoop(进入大数据领域)
- 2008:Android(手机端)。Java王国在谷歌的帮助下,占领了手机端,继续了J2ME当年的辉煌。(系统打赢系统)
其他语言的威胁
- Ruby on Rails,它结合了 PHP 体系的优点(快速开发)和 Java 体系的优点(程序规整),特别适合快速的开发简单的 Web 网站。它虽然发展很快,但没有对 Java 王国产生实质性的威胁,使用 Ruby on Rails 搭建大型商业系统的还很少。
- 还有 PHP,Python ,都适合快速开发不太复杂的 Web 系统。 但是关键的,复杂的商业系统开发还是 Java 王国的统治之下。
1|Java帝国故事讲述完毕
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
当前名称:Java帝国的诞生-创新互联
链接地址:http://myzitong.com/article/jpjge.html