要想成为牛人,推荐学习哪种编程语言?

本文探讨了编程语言的多样性与定位,重点强调C语言的重要性,指出不同语言对程序员技能的差异,并提到了TIOBE排行榜和现代语言的优劣比较。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

程序员绝大多数时间,都在与编程语言进行亲密接触,写代码,读代码,改代码,调试代码,分析代码,测试代码......
因此,精通编程语言,是成为技术牛人的必备功力。


自从发明计算机后,各种编程语言层出不穷,多达数百种。编程语言之间的竞争,极其激烈,新的编程语言还在不断推出,已有的编程语言还在不断扩展和增强。
TIOBE公司,每月会发布一版编程语言的流行度排行榜,见 https://www.tiobe.com/tiobe-index/

哪种编程语言是世界上最好的语言,程序员之间的争论从未平息。因此,本文的观点,也仅是个人见解而已。


应该说,不同的编程语言,有不同的定位,用于解决不同的问题。但是,不同编程语言,对程序员的要求,是存在非常大差异的。


我们可以把编程语言大致分为两类:
A类:面向机器,致力于提高程序的运行效率:通常这类语言的学习曲线陡,上手困难,要掌握的知识非常多,开发效率低,但运行效率非常高,资源消耗少。
B类:面向人,致力于提高人的开发效率:学起来容易,生态丰富,很短时间就能做出一个产品原型,但运行效率和资源占用等方面就差​了。


A类编程语言的典型代表是汇编语言、C语言、C++等。
B类编程语言的典型代表是Java,C#,Python,Javascript等。


国外有一篇对主流编程语言进行优劣点评的文章《These Modern Programming Languages Will Make You Suffer》,非常精彩,强烈建议看一下。对其中Meta Language部分的翻译,见 《一文解决现代编程语言选择困难:响应式编程》。


从计算机最底层的硬件开始,按照贴近硬件的程度,主流编程语言的层次依赖关系图,如下:


​我们跨过汇编语言之后的第一步使用的就是C语言,说明C语言在计算机技术中有其它任何高级语言不可替代的作用。所谓“0/1生汇编,汇编生C,C生万物,乃编程之本”,任何想立志学好计算机的人都不可能跨过C语言。


C语言是面向内存的编程语言,用C编程的时候,需要知道每个数据在内存中样子,是直接在和计算机对话的。而其它语言,都是做各种各样的封装,屏蔽掉了底层的各种概念,让你都不知道计算机是怎么工作的。


知乎上有人给了一个比喻:
如果不会C语言,以为自己学会了编程,其实嘛,在“编程”这个“城市”里是没有买“房子”的,没有房子就没有门,说白了,就是没入门,也就是门外汉。


系统地学习C语言,在实际产品研发中大规模使用C语言,会使你深刻掌握计算机底层的原理与机制,这才是是否能成为“牛”人的根本所在。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值