当前位置:首页 > 002 - 尚学堂 - 高淇 - 最全JAVA视频培训课程 - 计算机语言发展史 - java历史 - java核心优势 - java三大版本的区别
尚学堂JAVA最全教程
配合JAVA300集视频课程,一集一个文档 本文档配合:java300集第一季002集 【最新文档更新请加入尚学堂www.bjsxt.cn】
【专业JAVA培训机构,真正零首付入学www.bjsxt.com】
编程语言的发展史和发展主线
计算机语言如果你将它当做一个产品,就像我们平时用的电视机、剃须刀、电脑、手机等,他的发展也是有规律的。
任何一个产品的发展规律都是:向着人更加容易使用、功能越来越强大的方向发展。 那么,我们的计算机语言的发展也是这样,向着人更加容易使用,即更加容易写代码、更加容易实现现实逻辑的方向发展。套用奥林匹克的口号“更高、更快、更强”。那么计算机发展的主线可以总结为四个字:“更易、更强”。
这个”更易、更强”的主线,也适用于任何的产品。如果,读者朋友以后要开公司创造自己的产品或者服务(服务也是一种产品)。你的产品是否符合”更易、更强”这个规律,也决定了产品能否取得成功,能否击败现有市场上同类型的产品!当然,也直接决定了你能否发财,能否养得起老婆孩子啦!
计算机语言一般意义上划分为:
第一代语言:机器语言
我们都知道计算机的基本计算方式都是基于二进制的方式。如下就是一段典型的机器语言代码:
这种代码是直接输入给计算机使用的,不经过任何的转换!当然,在计算机刚发明的时候,计算机也是稀罕物,人却有很多。物以稀为贵嘛,人就只能迁就计算机,采用了这样一种计算机可以直接识别的代码。当然,这种代码计算机非常受用,不需要做任何转换,直接执行,太爽了! 可是,人就不爽了!这样的代码,又有几个人能写,又有几个人能读懂!如果用来解决最简单的计算问题,凑合着用,没问题。如果要解决复杂问题,需要写几千行、几万行这样的代码,估计谁写谁疯。如果现在我们仍然使用第一代语言,我相信所有程序员最终只能将精神病院作为最后的归宿了。
第二代语言:汇编语言
为了解决机器语言无法读懂的问题。很自然,我们就想到能不能使用人可以读懂的单词来代替一些二进制指令和数据,方便我们人去读、编写代码。于是,汇编语言诞生了。他使用了大量的助记符来代替二进制指令,方便我们人去编写代码。如下是一段典型的汇编语言代码:
显然,这样的代码,要比起机器语言来,对于我们程序员来说,爽了很多,至少不需要再去背诵那些难记的二进制指令了!于是,有了更好的武器,意味着我们可以解决更复杂的代码,写个几百行、几千行汇编语言代码也成为不那么复杂的事情。 【注】现在仍然有很多领域在使用汇编语言,比如:操作工业机器人、单片机编程、甚至某些计算机病毒的编写等。
第三代语言
随着晶体管、集成电路的出现,计算机的功耗越来越小、速度越来越快,计算机很快深入到了各行各业。有个很著名的定律叫做摩尔定律,他深刻的展示了计算机发展的规律: “当价格不变时,集成电路上可容纳的晶体管数目,约每隔18个月便会增加一倍,性能也将提升一倍。换言之,每一美元所能买到的电脑性能,将每隔18个月翻两倍以上”
英特尔公司创始人---戈登·摩尔
摩尔定律在我们身边有着实实在在的体验,我们现在手边用的电脑、手机比起十年前强大的很多倍,但是价格实际上确越来越低!十年前,北京房价是3000一平的地方,现在涨到了4万,涨了十多倍。十年前,一个笔记本需要两万人民币,现在只需要几千元,但是性能确更好。我们多么希望,房价也能遵循摩尔定律啊! 这样,随着计算机深入更多的企业、单位、甚至更人。我们很自然的就希望使用计算机解决我们身边的问题。这种需求越来越明确,越来越复杂。汇编语言在体系结构设计上的缺陷,根本无法胜任解决复杂问题。使用汇编语言写几万行代码,几十万行代码,那真的可以
称之为”噩梦”. 于是,各种各样,结构化设计更加优良的第三代语言诞生了。例如:C语言、Fortran、cobol、pascal、ada、c++、java、c#。 第三代语言数量众多,大体上分为:面向过程和面向对象两大类。C语言是典型的面向过程的语言。C++、JAVA是典型的面向对象的语言。 大家在学习过程中,不要有这样的误解。学了面向过程会对学习面向对象有不好的影响,影响思维。那纯属扯淡,只能说明你面向过程根本没入门!事实上,面向过程和面向对象是相辅相成的。在面向对象编程中,也离不开面向过程。关于,面向过程和面向对象的区别,我们将在面向对象章节中详细说明。
C语言
第三代语言中,C语言是最重要的!可以称之为“现代语言的鼻祖”。其他很多语言都跟C语言有千丝万缕的联系!
C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。
C++语言
显然就是C语言的升级版,看名字我们就知道了,就是C语言面向对象的版本!在C基础上,一九八三年又由贝尔实验室的Bjarne Strou-strup推出了C++。 C++进一步扩充和完善了C语言,成为一种面向对象的程序设计语言。
JAVA语言
SUN公司的JAVA也是以C/C++为原型开发的,甚至有人将JAVA称之为“C++-”(C加加减).看名字就知道是将C++中某些不太好用的地方砍掉!
Object-C语言
现在IOS和Mac开发中的主流语言。根据C语言所衍生出来的语言,继承了C语言的特性,是扩充C的面向对象编程语言。它主要使用于Mac OS X和GNUstep这两个使用OpenStep标准的系统,而在NeXTSTEP和OpenStep中它更是基本语言。
共分享92篇相关文档