为什么现在会有这么多种编程语言?初学者应该学什么语言?

首先,我们还是先来普及一下编程语言的基础知识。不论你用任何编程语言来开发程序,都是为了让计算机工作,比如编写一篇文章,下载一部电影等,而计算机干活的CPU只认识机器的指令,都得“翻译”成CPU可以执行的机器指令。不同的cpu有着不同的指令集,这些指令集都是二进制的0和1;后来有了汇编语言,可以认为是二进制指令的助记符表示;再后来有了高级编程语言,它们通过编译器又变回了汇编语言或者机器语言;紧接着一个又一个的高级编程语言诞生了,为什么会有这么多编程语言呢?

为什么现在会有这么多种编程语言?初学者应该学什么语言?

因为编译原理和技术也越来越成熟了。语言大体上有5个阶段 :

  1. 机器编码阶段,比如卡带编码。 所有语言的鼻祖的都是二元码,也就是机器码,最终都会翻译成机器码运行。但是二元码表示非常冗长。比如说大写字母 A 好了,以二元码表示成 01000001 ,如果是小写 a 呢,则是 01100001。

  2. 汇编语言阶段,这算是比较低级的语言。

  3. 中级语言阶段,比如C语言。

  4. 高级语言阶段,比如JAVA等等。

  5. 自然语言阶段,比如sql数据库查询语言。

整体来说,语言的发展就是机器能听懂和方便程序员的统一过程。

为什么现在会有这么多种编程语言?初学者应该学什么语言?

这种发展的内在原因

一个简单的解释就是:不同的领域有不同的需求!

对于科学和工程计算领域,需要大量的处理数据的计算,像电脑版矩阵的计算,于是FORTRAN语言出现,很好的适应了这一点;对于数据需要能够很好的查询、修改等操作,可能SQL语言就是一个不错的语言;对于一些底层操作的需求,C和C++可能就很好的能够适应这一点……

于是为了适应不同的应用场景,一个一个的编程语言诞生了。

那么问题来了:那为什么不去改造一门语言,让这门语言的功能无所不能,这样就不用不停的创造新的编程语言了?

原因很简单:

  1. 创造一门新的编程语言的成本有时候会比改进一门编程语言的成本更低!如果你想创造一门编程语言,有时候只是需要几个人去写写编译器,再考虑一下其他的需求即可;一旦一门新的编程语言诞生了,这门编程语言对于编程人员来说,是一门新的语言,这门语言的语法、API等等都是全新的,编程人员不会有其他的负担;

  2. 如果去改造一门编程语言,需要曾经使用该语言的编程人员重新去适应新的改进,有时为了适应新的应用场景,可能的改变是巨大的。可以试想一下,如果将C++进行更新以适应Web网页开发,必然需要改进的很多;同样对一门语言的重大更新,还可能造成其他的影响。所以,与其对一门已有编程语言进行改进,不如重新发明一门编程语言来的清爽。

说到底,即使是那些被万千程序员“膜拜”的“伟大的”编程语言,在最初被创造出来的时候,也只不过是某个年轻的学生或者工程师脑子里的一个小小的想法,然后日夜的工作之后,终于有了一个粗糙的语言轮廓。然后由于某些方面成功的设计,确实得到了一些应用。接下来在商业环境或者科研领域获得自己的一席之地。并不断向前发展。

为什么现在会有这么多种编程语言?初学者应该学什么语言?

好了,那解释完上一话题,接下来再来谈谈,作为一个初学者应该学什么语言呢?

首先我们先来分析一下,作为一个没有计算机基础的初学者,想要学习一门语言的初衷是什么呢?因为每个人的情况都不一样,所以做出的决定也各不相同。如果选择的出发点不一样选择的结果也是不相同的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值