Java帝国的诞生

Java帝国的诞生

C & C++

1972年C诞生 (Java诞生1995)

  • 贴近硬件,运行极快,效率极高。
  • 早期程序员用C语言开发了操作系统,编译器,数据库,网络系统等
  • C语言虽好,但给程序员安装了两把沉重的枷锁,指针和内存管理,常常让普通程序员手忙脚乱,昏天暗地的去调制,他们大量的时间和宝贵的经历都被浪费在一些小心翼翼的去处理指针和内存分配上,并且针对不同的平台每个平台都要写一份,有一点小小的错误都会导致编译失败,这种“暴政”,导致许多程序员慢慢的不喜欢了

1982年C++诞生

  • 添加面向对象
  • 兼容C
  • 有了一些静态类型的检查
  • 性能比较好
  • 图形领域、游戏等
  • 但C++比起C更复杂,复杂到许多人都没办法完全去掌握这门语言,所有很多人在C++时就放弃了学习,不推荐一开始就学C++,因为需要去学习许多计算机底层相关的知识,要去操作指针和内存,比较麻烦

反抗

我们要建立一个新的语言:

​ 因为C和C++的缺点,许多人决定“闹革命”,一帮志同道合的兄弟准备离开,想建立一块清新自由的领地,为了吸引更多的程序员加入,他们要建立一个新的语言,并需要有下面的特性

  • 语法有点像C (这样大家比较容易接受)
  • 没有C语言那样的指针
  • 再也不去考虑内存管理
  • 不同于C的真正的可移植性,编写一次,到处都可以运行
  • 面向对象
  • 类型安全
  • 高质量的类库
  • ...............

​ 最开始想命名为C++--,在C++之上进行优化,去掉复杂的东西,后来发现设计理念不行,决定重新定义一门语言,起名为Oak,但发布时,Oak已被别人使用,随后谈论许久,决定将这门新的语言起名为Java

​ 为了实现真正的跨平台,他们在每个系统操作系统之上又增加了一个抽象层,叫Java的虚拟机,称为JVM,所有的平台上只要安上了Java的虚拟机就可以跑Java的程序,这样就实现了真正的可移植性

Java的初生

​ 为了吸引更多人的加入,需要向大家展示Java的能力,于是1995年,他们将眼光盯上了当时刚刚兴起的互联网时代,所有的网页当时极其丑陋,缺乏互动性,于是他们在浏览器上弄了一个小插件,把Java的运行环境放了上去,在上面开发了一个图像界面的程序(Applet),震撼了当时的程序员,它让当时的简单粗糙的东西,看起来美轮美奂,于是乎,Java活了!

​ 通过Applet,无数的程序员看到了Java这门语言,了解了这门语言的特性后,许多无法忍受C语言“暴政”的程序员纷纷加入了Java,其中也包含了微软和Oracle这样的大公司

  • 比尔盖茨(Bill Gates)说:这是迄今为止设计的最好的语言!

​ 但比尔盖茨买了Java的许可证后,他想偷偷的修改一下Java,想把Java绑死在Windows上赚钱,这会使Java变得不可移植,随后Java和微软就发起了一场战争,逼着微软退出了Java领域。后来微软自己开发了.NET

​ Java发展迅速,但大家发现Java当时除了Applet之外,似乎干不了其他事情,于是1998年,Java派出三只部队:

  • Java 2 标准版(J2SE):去占领桌面
  • Java 2 移动版(J2ME):去占领手机
  • Java 2 企业版(J2EE):去占领服务器

​ 虽然J2SE和J2ME很快便败下阵来,但J2EE取得了很大的成功,许多程序员感叹Java天生就适合服务器端,强大、健壮、安全、简单而且跨平台,非常适合团队去开发复杂的大型项目

授权BEA公司第一个使用了J2EE的许可证

Java发展

三高:高可用、高性能、高并发

​ BEA公司使用J2EE后推出了一款产品weblogic,凭借该产品的集群功能,第一次展现了复杂应用的可扩展性和高可用性,这产品确切的说是一个基于JAVAEE框架的中间件,把程序员从事务管理、安全管理,权限管理等方面解放出来,能让他们专注于业务去开发,这立刻获得了大量程序员的心,很快Java的程序员快速增加,其他商业巨头也纷纷入场,其中包括IBM,推出了websphere和eclipse,此后很多程序员基于Java开发了很多平台和工具

  • 构建工具:Ant,Maven,Jekins
  • 应用服务器:Tomcat,Jetty,Jboss,Websphere,weblogic
  • Web开发:Struts,Spring,Hibernate,myBatis
  • 开发工具:Eclipse,Netbean,intellij idea,Jbuilder
  • ..................

​ Java在发展途中也遇到了一些“新势力”的打击,2005年底推出的ruby,号称开发效率比Java快5到10倍,结合PHP和Java的一些优点,特别适合快速的开发简单的Web网站,虽然发展很快,但并未给Java带来实质性的威胁,因为真正复杂的Web系统依旧是要用Java来开发,所以Python、PHP等语言并未给Java带来实质性的冲击

2006年:Hadoop(大数据领域)

Java通过Hadoop入侵大数据领域

2008年:Android(手机端)

Java通过Android入侵手机端领域

一个伟大的帝国诞生了!

posted @ 2021-03-02 16:14  djh学习历程  阅读(135)  评论(0)    收藏  举报