查看原文
其他

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

码农翻身刘欣 码农翻身 2021-04-20

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


首先是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给领导做汇报。在对外的宣传中,你会写博客,写公众号,写一切能宣传公司,宣传自己的东西。写作是不是很重要?


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


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



码农翻身公众号开放投稿,可能是全网最高片酬:

用故事讲技术 ,稿费1000

技术/职场/感悟/面试等,稿费700

翻译类文章,每千字200

联系方式:onlyliuxin97(微信)

详情猛戳: 可能是全网最高片酬,速来!



往期精彩回顾

我是一个线程

我是一个Java Class

面向对象圣经

函数式编程圣经

TCP/IP之大明邮差

CPU阿甘

我是一个网卡

我是一个路由器

一个故事讲完HTTPs

编程语言的巅峰

Java:一个帝国的诞生

JavaScript:一个屌丝的逆袭

负载均衡的原理

阅读源码的三种境界

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存