这4种难学又“没用”的语言!

开发 开发工具
你可能主要用Python, Java, Go, JavaScript这些语言编程,把他们作为吃饭的家伙,除此之外,我建议你考虑学习这几种短期看起来没用的语言。

 你可能主要用Python, Java, Go, JavaScript这些语言编程,把他们作为吃饭的家伙,除此之外,我建议你考虑学习这几种短期看起来没用的语言。

[[273162]]

首先是C语言, 说实话,学习C语言不能给你带来立竿见影的、直接的好处,因为它是一门非常基础的语言,用它来写的都是一些系统级的软件,如操作系统,虚拟机,TCP/IP协议栈等等。

但是当你开始学习计算机底层的原理性知识,例如操作系统,网络,数据库,总会接触到C语言,比如和应用层结合紧密的IO多路复用,要想真正地理解,还得靠C语言去展示。

C语言贴近硬件,它的指针可以直接操作内存,配合汇编,可以帮你在脑海中建立一个程序是怎么在机器级别执行的图景:函数是怎么调用的,参数怎么传递的,对你以后学习各个虚拟机也大有好处。

但问题是什么时候学呢?要学到什么程度呢?

我是在大学学的C语言,学之前连计算机都没怎么用过,连Turbo C的菜单是什么意思都理解不了, 老师讲的东西像天书一样,悲催至极,过了两个月才慢慢缓过劲来。

工作后用C/C++写COM组件,勉强靠C语言混口饭吃。后来自学操作系统,看《操作系统:设计与实现》,真正体会到了C的重要性,因为底层的进程管理,内存管理,IO管理,都是C语言搞定的。我对C语言并不是非常精通,但是看C语言的代码应该是绰绰有余,我觉得这就足以让我在底层的世界中遨游了。

科班出身的,建议在大学把C语言搞定,转行过来的第一门语言可以考虑Python。

然后是Lisp,学习Lisp不仅仅是为了学习函数式编程,因为在很多语言中函数式编程已经得到了支持。

Lisp之强大只有亲自深入学习以后才能感受得到,这种“变态”的,在运行时可以改变自身的能力,这种数据和代码一致的表示,会刷新你对编程语言的认知。

Raymond说得好:Lisp之所以值得一学是基于另外的理由——当你最终掌握了它的时候,你将会获得巨大的启迪。它将使你成在今后为一个更好的程序员,即使你实际上很少使用LISP本身。

第三种语言是英语,因为编程世界,英文大行其道。

IT界的新概念,新技术主要是美国人发明的,我们还处于跟随阶段,阅读技术文档,需要用到英文,和翻译版相比,它们更加及时和准确。

英语有听、说、读、写,对程序员来说,读最重要,如果你参与了开源的项目,对写的要求会高一些。只有你在外企,或者和国外有合作项目,听和说才会变得重要。

考过四级的,词汇量应该差不多,要多去读英文的技术资料,锻炼自己的阅读能力。

第四种语言是汉语。 难道我学了十多年的语文,还得学习?有没有搞错?

其实我这里想说的是写作能力,有人戏称,高考作文就是你人生写作的巅峰,我发现还是有一定道理的,很多人写出来的东西,确实是有点惨不忍睹。

在码农翻身知识星球中,有不少提问都让我摸不着头脑,得多次交流才能准确理解,这个方面确实得加强。

如果你认为在这个行业只要凭代码说话就够了,那你的眼光就太狭隘了。在对内的工作中,你需要写邮件和别人沟通,写设计文档让别人理解你的思路,写PPT给领导做汇报。在对外的宣传中,你会写博客,写公众号,写一切能宣传公司,宣传自己的东西。写作是不是很重要?

不一定要妙笔生花,妙语连珠,但总得准确、清楚地把自己的想法给表达出来吧。

写作输出是建立影响力的一种重要方式,要慢慢地锻炼出来。

【本文为51CTO专栏作者“刘欣”的原创稿件,转载请通过作者微信公众号coderising获取授权】

 

戳这里,看该作者更多好文

责任编辑:武晓燕 来源: 51CTO专栏
相关推荐

2020-10-27 15:01:25

编程语言PythonJava

2020-09-11 06:39:29

ThreadLocal线程

2010-01-26 09:24:53

C++语言

2021-12-29 10:18:46

编程语言PythonJava

2021-02-17 23:49:56

编程语言PYPLPerl

2020-11-09 13:46:24

C语言代码重要

2020-09-08 18:01:58

预算削减成本首席信息安全官

2019-07-19 15:21:00

SQL编程语言NOSQL

2014-07-23 10:19:02

小米4

2020-06-24 08:26:10

编程语言Perl技术

2019-11-11 13:40:45

Python 开发编程语言

2021-01-12 07:43:13

编程技能编程开发

2022-12-15 22:01:04

TLog日志标签

2019-03-14 10:34:35

设计UI设计师产品

2020-09-22 15:03:39

编程语言RubyCOBOL

2023-09-25 09:27:31

编程语言可视化

2020-06-22 07:55:31

编程语言

2018-08-17 05:09:29

电脑软件清理电脑

2021-08-07 15:29:48

区块链比特币技术

2021-01-29 12:28:13

编程语言开发代码
点赞
收藏

51CTO技术栈公众号