JAVA开发(史上最完整追本溯源JAVA历史发展和学习)
Posted 茅河野人
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA开发(史上最完整追本溯源JAVA历史发展和学习)相关的知识,希望对你有一定的参考价值。
(第二次世界大战1931-1945)
世界上最先进的技术往往是由于战争催生,在第二次世界大战中除了飞机,坦克和大炮的武器较量外,在隐秘战线的情报工作其实更为重要,在军队将领来往的电报中,为了防止军事情报的泄漏,不得不将电报进行加密传输。第二次世界大战,德国使用的顶顶有名的恩格玛加解密码机。那时号称无人能破解。
( 图灵机1937)
道高一尺,魔高一丈。天才图灵,提出了图灵机。图灵,他英国数学家、逻辑学家,被称为计算机科学之父,人工智能之父。在英国和德国的战场中,英国人为了破解德国的恩格玛密码机,重用了图灵。图灵发明的图灵机,在比较短的时间内破译了恩格玛机。图灵的贡献很大,可谓天才,但是由于他从事的都是机密工作,很少对外披露。后来还因为同性恋的事情,被迫害忧郁,吃了有毒的苹果致死。现在的苹果手机的苹果,传说为了纪念图灵就是图灵咬了一口的苹果,计算机领域最高奖也以图灵奖命名。现在的人工智能测试机,也叫图灵机。
(美国曼哈顿计划1946)
在美国战场,主要是美国和日本的较量,特别是在太平洋战争中。美国启用了一项非常重大的计划,叫曼哈顿计划。曼哈顿计划的目标就是使用原子能制造一种大规模杀伤性武器。主导人是奥本海默,团队里有爱因斯坦,冯诺依曼这些牛人。其中爱因斯坦大名鼎鼎,像冯诺依曼并不是很多人知道。但是冯诺依曼的贡献其实可能比他们都大,主要是冯诺依曼主要不在物理学,而在数学上。可能这是爱因斯坦比冯诺依曼出名的原因。还有一个原因是冯诺依曼喜欢东搞搞西搞搞,每一项都是世界顶级,数学,计算机、经济学。他提出的计算机冯诺依曼体系结构,奠定了经典计算机的基础。他提出的这个理论,就是为了解决计算机可编程的问题。
(天才.冯诺依曼1946)
美籍匈牙利数学家、计算机科学家、物理学家,是20世纪最重要的数学家之一。冯·诺依曼的逻辑和计算机思想指导他设计并制造出历史上的第一台通用电子计算机。他的计算机理论主要受自身数学基础影响,且具有高度数学化、逻辑化特征,对于该理论,他自己一般会叫作“计算机的逻辑理论”。而他的计算机存储程序的思想,则是他的另一伟大创新,通过内部存储器安放存储程序,成功解决了当时计算机存储容量太小,运算速度过慢的问题。
(1945年第一台计算机ENIAC)
世界上第一台现代电子数字计算机埃尼阿克(ENIAC),诞生于1946年2月14日的美国宾夕法尼亚大学,并于次日正式对外公布。 ENIAC长30.48米,宽6米,高2.4米,占地面积约170平方米,30个操作台,重达30英吨,耗电量150千瓦,造价48万美元。它包含了17,468根真空管(电子管)7,200根水晶二极管,1,500 个中转,70,000个电阻器,10,000个电容器,1500个继电器,6000多个开关,计算速度是每秒5000次加法或400次乘法,是使用继电器运转的机电式计算机的1000倍、手工计算的20万倍。
(大名鼎鼎的贝尔实验室,操作系统的摇篮)
自1969年在贝尔实验室的阁楼上诞生以来,Unix操作系统的发展远远超出其创造者们的想象。它带动了许多创新软件的开发,影响了无数程序员,改变了整个计算机技术的发展轨迹。现在的Linux操作系统就是类Unix操作系统。是在李纳斯(linus)等人的重写下逐渐丰富起来的操作系统。除了Unix,贝尔实验室还发明很多的操作系统,贝尔实验室可以称作计算机操作系统的摇篮。
(操作系统的蓬勃发展1969)
有了可编程的操作系统,各种商业公司蜂拥而至,苹果、IBM,微软。苹果和微软的操作系统其实都是别人的系统。二者曾还为谁抄袭谁的操作系统打官司。最后其实是二者都同时借鉴了1973年施乐公司帕洛阿尔托研究中心The Xerox PARC的施乐奥托(The Xerox Alto)。最后才有了现象级的操作系统Windows和Mac操作系统。微软也让比尔盖茨登顶世界首富好多年!而苹果的产品,也在改变无数人的生活方式
(低级语言汇编)
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址。在不同的设备中,汇编语言对应着不同的机器语言指令集,通过汇编过程转换成机器指令。特定的汇编语言和特定的机器语言指令集是一一对应的,不同平台之间不可直接移植。
(高级编程语言百花齐放)
(JAVA之父詹姆斯.高斯林)
Java 的发明开始于1991 年, 由 Sun 公司带领的开发小组, 想设计一种小型的计算机语言,主要用于有线电视转换盒这类的消费设备。 由于这类设备的处理能力和内存都非常有限,所以语言就必须设计的非常小且能够生成紧凑的代码。 另外,由于不同的厂商会选择不同的 CPU, 因此很重要的一点就是这种语言不应该与任何特定的体系结构绑定。这个项目被命名为 “Green”。 Sun 公司的人都有 Unix 的应用背景, 所以开发的语言用了 C++ 为基础。并把这种语言称为 “Oak”, 后来, Sun 公司的人后来发现, Oak 是一种已经有的计算机语言的名字, 于是, 将其改名为 “Java”
詹姆斯·高斯林 (James Gosling)是一名软件专家,1955年5月19日出生于加拿大,Java编程语言的共同创始人之一,一般公认他为“Java之父”。
(JDK版本发展历程)
(JAVA语言运行机制)
Java程序的运行机制分为编写、编译和运行三个步骤。 1.编写 编写是指在Java开发环境中进行程序代码的编辑,最终生成后缀名为“.java”的Java源文件。 2.编译 编译是指使用Java编译器对源文件进行错误排查的过程,编译后将生成后缀名为.class的字节码文件,该文件可以被Java虚拟机(JVM)的解释器正常读取。 3.运行 运行是指使用Java解释器将字节码文件翻译成机器代码,执行并显示结果。 字节码文件是一种和任何具体机器环境及操作系统环境无关的中间代码,它是一种二进制文件,是Java源文件由Java编译器编译后生成的目标代码文件。
(SUN公司背后的故事)
sun公司其实就是斯坦福大学校园网。是孵化java的公司。
(美国硅谷与大规模集成电路的发展)
之所以叫硅谷,因为这里有大量的硅,这是生产半导体和芯片的原料。没有大规模集成电路就没有个人计算机。
(大名鼎鼎的网景公司)
浏览器的发展是JAVA语言快速普及的催化剂。
浏览器的先主:网景浏览(Netscape )在1994年,推出的第一款商用浏览器,此时浏览器只能写一些简单的页面 , 只能展示一些 简单的 html 元素 。
(浏览器大战,互联网的开始 )
两次浏览器大战:
第一次浏览器大战发生在上个世纪90年代,微软发布了它的IE浏览器,和网景公司的Netscape Navigator大打出手,最后网景不得不将公司卖给AOL一走了之。世界由此平静了。但平静并没有能够持续太久,日益壮大的Mozilla Firefox从2004年又开始重新叫板微软地位。
第二次大战并不像第一次那么简单。这次不只是IE和火狐狸的斗争了。一些新的基于不同引擎的浏览器也加入了阵营,比如挪威的Opera (基于Presto引擎)和中国的Maxthon。Opera的主要战场在移动设备,大部分的智能手机都配有Opera的移动浏览器。而Maxthon的主要阵地在中国,根据百度的统计,15%的百度用户都在使用这个浏览器。
(SUN公司的JSP技术1997)
JSP(全称Java Server Pages)是由Sun Microsystems公司主导创建的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。JSP技术以Java语言作为脚本语言,为用户的HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。 JSP将Java代码和特定变动内容嵌入到静态的页面中,实现以静态页面为模板,动态生成其中的部分内容。JSP引入了被称为“JSP动作”的XML标签,用来调用内建功能。另外,可以创建JSP标签库,然后像使用标准HTML或XML标签一样使用它们。标签库能增强功能和服务器性能,而且不受跨平台问题的限制。JSP文件在运行时会被其编译器转换成更原始的Servlet代码。JSP编译器可以把JSP文件编译成用Java代码写的Servlet,然后再由Java编译器来编译成能快速执行的二进制机器码,也可以直接编译成二进制码。
(马云的1995与中国黄页)
1995年的一天,马云接到了浙江省交通厅的派遣通知:到美国催讨一笔债务。在西雅图,对电脑一无所知的马云学会了上网。朋友让他输入一个词,他输入了Beer(啤酒),结果电脑上显示了许多国家的啤酒,包括美国、德国等,而他就是没有看到中国的啤酒。马云非常好奇,又输入了China(中国),计算机上显示:“没有数据”。而当输入中国历史的时候,显示的只是一段仅有50个字的短文。马云很奇怪:为何没有中国的信息资料呢?于是他想到了为自己的翻译社在网上做一则广告,上午10点他将广告发布到网上,中午12点之前便收到了6封E-mail,分别来自美国、德国还有日本,说这是他们看到的关于中国的第一个网页。马云感到很惊奇,并敏感地意识到“这里有大大的生意可做”!
(中国互联网的发展1995-2023,竞争已形成格局)
(招聘网站对JAVA人员的技能要求)
(开始学习JAVA-学习成长)
(开始学习JAVA-基本数据类型)
public static void main(String[] args)
byte a = 20; // 声明一个byte类型的变量并赋予初始值为20
short b = 10; // 声明一个short类型的变量并赋予初始值为10
int c = 30; // 声明一个int类型的变量并赋予初始值为30
long d = 40; // 声明一个long类型的变量并赋予初始值为40
long sum = a + b + c + d;
System.out.println("20+10+30+40=" + sum);
(开始学习JAVA-引用数据类型)
在 Java 中,除了有 8 种基础类型,还有引用类型。引用类型一般情况下统称有 3 类。 分别是: 类、接口、数组。不过也可以说, 除了基础类型外,其余的都是引用类型。在 Java 的引用类型有点类似 C 和 C++ 的指针概念。引用类型是一种对象类型,它的值是指向内存空间中的引用。 对应的是引用的地址。 并且在 8 种基础类型上又为每种基本类型提供了对应的封装类型。
(开始学习JAVA-代码风格)
JAVA代码以.java为后缀。以类作为一个文件体。类中包含变量,构造函数方法。JAVA的执行入口为main函数。
(开始学习JAVA-学习路线)
以上是关于JAVA开发(史上最完整追本溯源JAVA历史发展和学习)的主要内容,如果未能解决你的问题,请参考以下文章