1、简单的定义
在计算机语言当中,其实号称“简单”的语言有不少。
那么,这个简单的定义是什么呢?
在编程圣经《Unix设计哲学》有个定义,我绝对挺好。它说,简单就是半页纸。如果一个语言的基本语法,能够在半页纸上面写出来,人们能一眼看过去就能记个七七八八,这个语言就可以成为一个“简单”的计算机语言!
其中Python就符合这个特征。
C语言其实也符合,但是指针让这个“简单”变成了复杂,让一些初学者想深入学习,就要学习一次底层知识,这样才能更加了解C语言!
2、母语的作用
从另外一个角度来讲,我们是中国人。
如果是一个英语为母语的人,其实编程里面的那些关键字if、else、for、while都是英语一年级就能学到的内容。
所以,外国人发明的编程语言,其实并没有那么高深。如果他想深入编程,其实计算机语言是非常容易学习的东东。
从这点来讲,计算机语言的语法元素是非常简单的。
对我们而言,则是外文。
3、有些语言确实难
那么为什么有些语言会让人感觉特别难呢?
是的,我在这里点名的是Rust。
非常坦诚的来讲,我其实也没有入门Rust。我看了Rust的教程,感觉Rust就是一条静静流淌的河流,走进它,使用它,下面就充满了泥坑,感觉寸步难行!
让人感到特别困扰的一点就是,我看过Rust的代码“看起来”实在不怎么样!
我看到Rust的一些成品代码,看完之后,我心中就闪过一个念头,那就是“即便这段代码是我写的,我应该很明白这段代码的意思,并且可能这段代码的设计很优秀,功能很全面。但是如果让我以后再看这段代码,我是懵逼的。我应该是很不喜欢这种写法,简直就是一团水草,那么一堆堆的摞在一起”。
这就是我对Rust代码的印象,设计真的是太糟糕!
4、计算机语言的作用是什么?
我一直觉得,计算机语言是一种辅助,本质上来讲就是一种传达我们意图的工具,它告诉计算机我们打算让他干什么。
这是计算机语言的功能!
另外一点,程序的生命周期可能很长,编写的阶段只是它的一部分,后面还有大把的时间来进行修改!无论是最初的作者修改,还是其他人来修改,都需要明白原来代码的意图。
这就需要计算机语言有很好的“可维护性”!
Rust显然没有考虑这么深!
5、总结
所以,最后我们总结一下。计算机语言,其实语法都很简单。
如果你学习了C,但是想不到能干什么事情,也不要着急。
那不是因为计算机语言不简单,而是世界太复杂。
当你找到了需要解决的问题,而你刚好能用计算机语言来解决的时候,你就会感觉水到渠成!
我是明月,
学习计算机语言,并不复杂!