一 产生背景
时势造英雄,对于语言的流行也是一个道理,对于一个能如此流行的语言一定是基于某种时代的机遇。java高级语言的诞生也是基于于此。20世纪90年代由于互联网的兴起急需一种高级语言来做交互,java就被设计出来。
1991年 ,SUN MicroSystem公司的 Jame Gosling、 Bill Joe等人 ,为在电视、控制烤面包箱等家用消费类电子产品上进行交互式操作而开发了一个名为Oak的软件 (即一种橡树的名字 ),但当时并没有引起人们的注意 ,直到 1994年下半年 ,Internet的迅猛发展 ,环球信息网 WWW的快速增长 ,促进了 Java语言研制的进展 ,使得它逐渐成为 Int ernet上受欢迎的开发与编程语言 ,一些著名的计算机公司纷纷购买了 Java语言的使用权 ,如 Mi-croSoft、 IBM、 Netscape、 Novell、Apple、 DEC、 SGI等 ,因此 ,Java语言被美国的著名杂志 PC Magazine评为 1995年十大优秀科技产品 ,(计算机类就此一项入选 ),随之大量出现了用 Java编写的软件产品 ,受到工业界的重视与好评 ,认为 "Java是八十年代以来计算机界的一件大事 ",微软总裁比尔?盖茨在悄悄地观察了一段时间后 ,不无感慨地说 :"Java是长时间以来最卓越的程序设计语言 ",并确定微软整个软件开发的战略从 PC单机时代向着以网络为中心的计算时代转移 ,而购买 Java则是他的重大战略决策的实施部署。
因此 ,Java的诞生必将对整个计算机产业发生深远的影响 ,对传统的计算模型提出了新的挑战。
SUN MicroSystem公司的总裁 Scott McNealy认为 Java为 Internet和 WWW开辟了一个崭新的时代。
环球信息网 WWW的创始人 Berners-Lee说 :"计算机事业发展的下一个浪潮就是 Java,并且将很快会发生的"。
看来 ,使用 Java已成大势所趋 !
MicroSoft和 IBM两大公司都计划在 Internet上销售用 Java编写的软件。
Apple、 HP、 IBM、 MicroSoft、 Novell、 SGI、 SCO、 Tandem等公司均计划将 Java并入各自开发的操作系统 ,而负责开发并推广 Java技术的 SunSoft公司 (这是 SUN下属的一个子公司 ),将通过颁发许可证的办法来允许各家公司把Java虚拟机和 Jav a的 Applets类库嵌入他们开发的操作系统 ,这样各类开发人员就能更容易地选择多种平台来使用 Java语言编程 ,不同的用户也就可以脱离 Web浏览器来运行 Java应用程序 ,这无疑是很受广大用户欢迎的 ,也为 Java语言的应用开拓了极为广阔的前景。 (当然 ,各类 JavaOS之间的兼容性必须得到重视 ,好在 JavaSoft已保证将监督这种兼容性 )。
另外 ,由 JavaSoft推出的完全用 Java编写的 Internet上新型浏览器HotJava,比去年 alpha版更为实用 ,不仅能编制动态的应用软件 ,而且能编制完整的成套桌面应用软件 ,将来还会提供更多的能帮助编制动态应用软件的模块 ,显然 ,这也是为 Java的应用提供了有力的例证。
去年 6月 7日 ,由 SUN公司和台湾经济事务部信息发展局、台湾信息技术研究所等单位牵头 ,成立了一个"Java联盟 ",参加的有 22个在台湾相当著名的计算机公司 ,并在台北建立一个 "Java开发中心 ",在新竹建立一个"Java语言实验室", 以掀起台湾开发与应用 Java语言的热潮。
香港则在去年 4月就举行了全岛的 Java杯比赛 ,在计算机界掀起了学习Java的热潮 (尤其是在大学生们中 ,出现了一批 Java迷 )。
有人预言 :Java将是网络上的 "世界语 ",今后所有的用其他语言编写的软件统统都要用 Java语言来改写。
Java诞生于Sun。大家知道Sun(Stanford University Network)这个公司曾经是很风光的,主要做工作站和小型机,在微软要成为霸主的时候,Sun都是大家心目中的挑战者,而Java也是在这个时候产生的,要做跨平台、面向网络,其实也是在动摇微软的垄断。
二 对比其他语言
2020语言使用状况图表更详细的可以参考下面文章,C和java 大概占到1/3使用量。
https://fossbytes.com/most-popular-programming-languages/
三 特性
一、write once ,run anywhere:
1 面向对象
2 垃圾收集
3 支持多线程
4 没有麻烦的指针
5 支持分布式开发
6 面向对象
7 安全、简单
四 生态
java拥有成熟的社群,完善的集成框架。
在使用中不断演化其中最为著名的是Spring ,Spring全家桶:Spring+SpringData+MVC+Boot+Cloud
-
Java 语言特性的运用,如反射、动态代理、枚举、泛型、注解、ARM,Lambda 语法等
-
设计思想和模式的实现,如 OOP、IoC、DDD、TDD、GoF23 等
-
Java API 的封装和简化,如 JDBC、Transaction、Servlet、JPA、JMS、Bean Validation 等
-
JSR(Java Specification Requests)规范的适配和实现
-
第三方框架的整合和易用,如 MyBatis、Hibernate、Redis 等
五 发展方向
01.Android开发
Android是全球最大的智能手机操作系统,根据Strategy Analytics最新研究报告显示,全球智能手机出货量在2016年第三季度达到3.75亿台。Android操作系统获得了创纪录的88%全球市场份额,挤压了苹果iOS和其他平台。Android应用的主要开发语言就是Java。Android 从2010年才开始走入大众视野,最近几年发展非常快速,但人才积累却没有跟上,这也是导致Android开发人员工资高,难招人的原因。
02.web开发
Web开发语言很多,Java是其中之一。Java在开发高访问、高并发、集群化的大型网站方面有很大的优势,例如人人网、去哪儿网、美团等。
03.客户端开发
Java客户端开发主要面向政府、事业单位和大型企业,如医疗、学校、OA、邮箱、投票、金融、考试、物流、矿山等信息方面的系统。但客户端开发只是为了给自身企业的主要业务提供辅助,一般情况下开发的客户端供内部使用,很少推向市场,所以在前景方面,前两项明显更占有一定优势。
可以说,Java 在我们生活中无处不在,只要能够接触到互联网就离不开Java,目前全球有着数十亿的设备正在运行着Java,Java广泛应用于各大领域,从互联网电子商务到金融行业的服务器应用程序,从安卓系统上的APP到企事业单位的OA系统,从大数据到桌面应用程序等等,不胜枚举。