编程语言发展史 ——野史

万物发展皆有其规律可循

这并不是一篇正史,里面的内容甚至为了让他更加贴切,我修改了部分真实情况,并且美化了故事。希望这是一篇大家喜欢的故事。

万物初始

我不知道当时结绳记事、在石板上画画那些野人、古代人智商是否和现在一样。他们在试图创造一种可以用来记录的语言,与后人沟通。而我们在创造一种语言,与机器沟通。

结绳记事

在小学历史课我们学到过,原始人结绳记事,比如今天只吃了一个苹果,肚子有点饿,力气小,在绳子上系个小扣子表明今天是吃了的,只是吃得太少了。第二天叔叔们(母系社会实在是不知道谁是自己爹)打猎回来吃了一顿长毛象的后臀尖,力气有了,系了个大扣子。第三天因为消化不良,拉肚子了,这事说大不大说小不小,但是觉得比较有纪念意义,也许可以提醒自己以后少吃长毛象呢?系了个小扣子。时间一长,他也就忘了这个扣子是干啥的了,那天是吃苹果啊还是拉肚子了,怎么第二天系了个这个大的扣子。

当然原始人要比我的方法严谨很多,他们有自己同意的方案,不会说吃个东西还要系个扣子,毕竟资源匮乏。

010101

计算机诞生之初,并不像现在就有编程语言可写,类比原始人,我们也用着比结绳记事高级不了多少的方法,01打孔法,不打孔表示1,打孔表示0,我们把自己的计算,连同符号、运算符号,通过打孔器,打在一条长长的纸上,插入计算机里面,睡一觉,第二天起来查看一下计算结果,心细的同学第二天能拿到运算结果,粗心的同学就拿回自己的纸条检查去吧,这是一件很恐怖的事情,想想一下,1001001110,你就忘记他是干啥的了,一点一点检查“哦,这里是符号,那下面是数字,这是125,不对,上一个0好像是下一个符号了,我们经历了原始人结绳记事的过程。

当然我没有经历过那个年代,听老师说计算机算力很差,他真的要等一晚上,算错了第二天还不一定能借到计算机。

不过我们造核弹的时候,连这么差的计算机都没有,前辈们硬生生用算盘算出来的。

象形文字

时代在发展,各大文明,古印度、古中国、玛雅文化等等几乎在同一时期发展出了象形文字,这里说的同一时期相差可能也会有几千年,但是历史长河里面也就是一瞬。象形文字比结绳记事更加系统化、具体化。

通常会有一类人来负责象形文字的记录,一代接一代,流传给下一代记录阅读的方法,服侍于统治者,为了防止图片侵权,还请大家去搜索引擎搜索一下象形文字的图片,象形文字会记录税收,农业收入,甚至是法律条纹等等。但是并不能写出辞藻优美的诗词来。

接下来让我们回到现代社会

汇编语言

大家无法忍受0101这样的出错,也因为计算机18个月发展一次的速度,算力提升,底层指令集也一改再改,需要做出一种特殊约定语言,来帮助大家写代码,于是数学家科学家兼程序员们创造了一种语言,汇编语言,是一种面向机器的语言,类比象形文字,他们确实解决问题,但并不优美,无法编写出长篇大论的程序来(误),汇编是一种很棒的语言,但是时代发展,我们需要一种简单有效,便于阅读理解的新语言。我们继续穿越回去看看人类社会发展吧。

文字出现啦

原始人是怎么交流的,在我们看各种电影的时候都会出现拍胸脯,捂住嘴巴乌拉乌拉发出喊叫,但是人类会厉害的一点就是,他们会说话,阿猫阿狗也能发出喊叫,但是却没办法像人一样唱出不同声音的歌曲,也许你会说鹦鹉学舌呀,还好,它脑子又没我们的强健。

时维九月,序属三秋。潦水尽而寒潭清,烟光凝而暮山紫。俨骖騑于上路,访风景于崇阿。临帝子之长洲,得天人之旧馆。层峦耸翠,上出重霄;飞阁流丹,下临无地。鹤汀凫渚,穷岛屿之萦回;桂殿兰宫,即冈峦之体势。

中国文化历史悠久,在学到《滕王阁序》时老师和我们讲说当时王勃属于即兴写作,滕王阁建好以后要写序,本来不应该他上的,主人家客气了一下,他是真的脸皮厚,才有了这片流传千古的文章。辞藻优美,合辙押韵。不得不佩服虽然都会说话都有个大脑,还是不得不服啊。

象形文字有一种记录用文字发展到那个年代,已经被文字代替,可以写出长篇文章了。回头看我们在汇编语言停留太久,也该前进啦

C语言出现啦

这里我直接说C语言,并不是前面没有其他用来代替汇编语言的编程语言出现,只是挑出了这个个例,在C语言前面还有B语言,甚至同时期还有其他类型语言。

C语言辞藻优美,类型准确,可以用来写出各种大型程序,比如我们常用的Linux,就是用C语言写成的,并且他有着跨平台性,只要目标机器上有他需要的库,便可以编译运行。很多大学时至今日依然把C语言当做入门语言。

在之后就是各种编程语言百花齐放的日子,这世上本就没有那个语言可以替代那个语言的,大家在各自领域充分发展,当某个领应是不在流行,可能一个语言会落寞,也可能不会。

Java语言诞生之初是Sun公司的一个电视机顶盒的项目,大家觉得现有语言都无法满足他们的跨平台要求,硬件厂商不一,换个硬件就要编译一次的C 语言明显无法满足,一拍大腿高斯林创造了Java语言,但是由于机顶盒项目过于超前这个时代,以至于项目黄了,高斯林力保Java没被和项目一同砍掉,Java语言落寞。后来互联网大兴土木,大家都不想针对不同硬件编译不通程序,跨平台的Java又一次被拎了起来,瞬间大火。

时也命也,我们学习编程语言不应该仅仅局限于语言,语言是变化的,思想是稳定的,算法,设计模式,不论在哪种语言都可以用的上的。

祝大家在喜欢的行业里越走越远。

猜你喜欢

转载自www.cnblogs.com/b612/p/12005911.html