我对编程语言的一些看法

各个编程语言都是图灵兼容的,因此其能力从数学而言是一致的。

我所在意的是编程语言的抽象能力、表述能力。

表述能力好的语言,看起来比较简单,但是从实质上讲是比较容易理解。这意味着用这种语言编写的代码会比较容易理解,并不意味着用这种语言进行开发会比用其他语言开发更容易。因为要做的事还是一定的,我们只是换了一种语言进行表述而已。做这件事本身的难度并不会因为我们换了一种语言而增加或减少。相反的,我们用一种表述能力较强的语言来编写代码,可能单位时间内要实现更多的功能。从这一点来看,用“较容易”的语言编写程序,反而是一种更加困难的事情。

当然,上面说的都是一些理想情况,即我们编写的代码完全没有错误。一旦出现错误,使用表述能力强的语言由于其更容易理解,所以也更容易修复缺陷。也就是说,使用“较容易”的语言所需要的排除缺陷的能力稍弱一些。

有这样一个现象,即C/C++语言的“专家”比C#的“专家”更“牛”一些,我认为这是由于使用这两种语言的领域不同所导致的,前两者更倾向于开发系统应用,因此对于计算机的理解通常要更深一些,而后者更倾向于做企业开发,因此对于架构方面的认识更深一些。

 

只是对我思考的一些零碎的记录,欢迎拍砖

posted @ 2011-04-28 15:27  HCOONa  阅读(1538)  评论(1编辑  收藏  举报