前段时间出差了,所以没有及时更新写作内容。幸好关注的人还不是特别多,我的压力不算大,自我安慰一下下。
今天我们终于切到一个程序猿/媛职业中最基本,也是最重要的部分了,那就是编程语言。对于不会编程的人来说,这个部分是最为神秘的。即便对于在校大学生来说,学过所谓的《XX程序设计语言》,编程也是一知半解,无法说清楚到底什么是编程语言。
知乎上有一篇很有意思的文章《为什么现在会有这么多种编程语言?》,建议有兴趣的同学们看看。
据IEEE spectrum统计,编程语言排名前三c、java、python。C#、php依然强大的影响力,提升比较明显的是python。
这个世界上到底有多少种编程语言?
实际上这个问题真的很难回答。有的说是600多种,有的说是1000多种,不管多少种,我们一个人能掌握的也就那么几种,其余的不会,不知,也就罢了。
还是在知乎上,有好事之徒贴了两个图,我觉得颇为形象,在此与大家分享。
这个是用来解释为啥有那么多的编程语言,或称为“编程语言进化论”
下面的这个是用来给大家一个直观的语言分支和进化图。用一种古老的LISP语言生成的。
上面说了那么多,编程语言也是那么种类复杂,应用场景繁多,那么这些语言产生的本质是什么?
编程语言的本质:它就是一种语言,与人类用于交流的语言没有区别!
所以,每一种编程语言,就是一门外语,和英语、法语、日语啥的,没两样区别。熟练掌握一种编程语言之后,就能够用自己的逻辑和分析处理能力来书写一篇优美的程序文章。
还记得 “编程 == 写作” 这个经典的等式吧。
一个程序猿如果编程语言不熟悉,就好比一个不太会讲日语的中国人,肚子里再有货,也是没办法与人交流的,也没办法用这个语言写一些高级的论述文。只能做做基本的,简单的日常交流。
所以,编程语言这个基础是重中之重,也是所有编程教学中,不可或缺的一环。
那么,编程语言需要掌握到什么程度才算打好基础了呢?
我认为,必须做到如下几点:
1.基本语法、关键词极为熟练,可以做到本能反应,直接理解含义,无需思考和翻译(母语级别)
2.常用的处理过程极为熟练,需要做到随心所欲,任意调用,包括字符串处理、文件处理、网络处理、数据库处理、图像处理(这部分需要长期反复训练,形成肌肉记忆)
3.高级算法,新语言特性能烂熟于心,随时查阅资料,快速应用
4.常用的系统框架极为熟悉,能做到闭着眼睛都不会出错
做到上面说的几点,才能说精通一门语言了。才能有成为一个大师的起点。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。