计算机语言发展史
第一代语言
汇编语言
- 解决人类无法读懂机器语言的问题
- 指令代替二进制
目前应用
-
逆向工程
-
机器人
-
病毒
-
…
-
摩尔定律
-
当价格不变时,集成电路上可容纳的晶体管数目,约每隔18个月便会加一倍,性能也将提升一倍。换言之,每一美元所能买到的电脑性能,将每隔18个月翻两倍以上
第三代语言
高级语言
- 大体上分为:面向过程和面向对象两大类。
- C语言是典型的面向过程的语言。C++,JAVA是典型的面向对象的语言。(面向对象和面向过程相辅相成)
各种语言:
- C语言(语言鼻祖,既有高级语言的特点又有汇编语言的特点)
- C++语言
- JAVA语言(服务器的开发)
- C#语言
- Python(人工智能,大数据),PHP(快速构建一个网站),JavaScript
- …
JAVA帝国的诞生
一场旷日持久的战争
C&C++
1972年C诞生
- 贴近硬件,运行极快,效率极高。
- 操作系统,编译器,数据库,网络系统等
- 指针和内存管理
1982年C++诞生
java初生
-
1995的网页简单而粗糙,缺乏互动性。
-
图形界面的程序(Applet)
-
Bill Gates说:这是迄今为止设计的最好的语言!
-
Java 2 标准版(J2SE):去占领桌面
-
Java 2 移动版(J2ME):去占领手机
-
Java 2 企业版(J2EE):去占领服务器
Java发展
-
他们基于Java开发了巨多平台,系统,工具
-
构建工具:Ant,Maven,Jekins
-
应用服务器:Tomcat,Jetty,Jboss,Websphere,weblogic
-
Web开发:Struts,Spring,Hibernate,myBatis
-
开发工具:Eclipse,Netbean,intellij idea,Jbuilder
-
…
-
2006:Hadoop(大数据领域)
-
2008:Android (手机端)
三高:高可用,高性能,高并发
Java特性和优势
- 简单性(Java可以说是C++的语法纯净版,没有头文件,没有一些指针运算,也不用去分配内存,而且语法基于C语言)
- 面向对象(他将重点放在对象以及对象之间的接口上,万物皆对象)
- 可移植性(不用管什么系统,win,Linux,Mac,一次编写到处运行)
- 高性能
- 分布式
- 动态性(Java本身不具备动态性,但是反射机制,通过反射让Java具有一些动态性,C++语言不具备的)
- 多线程(边上qq边打游戏,这就是多线程在人们身边的一些应用)
- 安全性
- 健壮性
Java三大版本
-
Write Once,Run Anywhere(一次编写到处运行)
-
JavaSE:标准版(桌面程序,控制台开发…)
-
JavaME:嵌入式开发(手机,小家电…) -
JavaEE: E企业级开发(wed端,服务器开发…)