• 要想学好编程,必须要先学好C语言吗?
  • 发布于 2个月前
  • 205 热度
    0 评论

前言:

很多初入程序员行业的朋友经常会问的一个问题就是要想学好编程,必须要先学好C语言吗?其实要想学好编程,成为一个优秀的程序员,精通C语言可能不是必须的,因为不同的编程领域有不同的编程语言。


但是,C语言对于系统级编程和嵌入式系统等领域非常重要,掌握C语言可以让你更好地理解计算机底层的工作原理,这对于高性能程序和系统级开发至关重要。此外,C语言也是许多其他编程语言(如C++、Java、Python、JavaScript等)的基础,因此掌握C语言可以为你学习其他编程语言打下坚实的基础。因此,作为一个优秀的程序员,学习C语言是值得投入时间和精力的。

看行业,不是每个行业的优秀程序员都需要精通c语言,甚至有些方向的优秀程序员没有必要学习c语言,理由和事实如下:


1 不少优秀程序员是中途转行,通过自学或培训班入行,入行后干的是java或python,真可能一直到拿到50w或更高薪资时,还是不熟悉c。

2 c语言有的,其它语言,比如python或java都有,有些人或许会说,通过c语言能了解内存和os细节,那么为什么不干脆去学汇编?

3 大多数的开发工作是用现有工具,比如用jvm管内存,用api写功能,而不是所有功能细节都自己写。如果要用c开发项目,真可能连一个界面都手动画,这就好比,当下是通过拼装多个组件造成一辆车,而不是在造车过程中还得做炼钢等活。

4 c语言是一种能帮助小白快速入门的语言,事实上其它语言,比如java和python也能帮大家快速入门IT,比如某人通过精通c语言成为了优秀程序员,但更多的人可以是通过java或python等入门成为优秀程序员。所以反过来其实并不成立,即优秀程序员需要精通c语言。

5 再说下c语言的优点,本人能想到的,可能还真只是能直接和内存和OS打交道,这点上文也提到了,而一些面向对象思想,或者是软件开发的原则(比如开闭原则),在c语言上是很难体现的。所以通过c入门编程,确实可以,但论效率其实真未必能比得上java或python等语言。

6 再分析这个观点,即“学了c语言后学其它语言能更加高效”。比如某程序员打算走java开发路线,先用1个月时间学了c语言,达到了精通,然后本来该用1个月学java语言的,现在由于精通c,只用了半个月就学好。但事实上如果直接学java也就一个月。所以其实还是看需求,有必要再学c语言。

技术是不断发展进步的,在上个世纪80,90年代,在还有DOS操作系统的时候,c语言绝对是独占鳌头,在00年代,c++,c#等开发工具也还流行,所以精通c语言也有一定的用处,但在当下,并不是每个IT行业,都需要精通c语言,甚至有些IT行业,不会c语言也没事。 比如Java高并发这块,或者Python AI这块,不少高手其实是不会c语言的。

所以分析c语言时需要结合需求,结合行业,没必要过于神话c语言,至少不能说优秀程序员一定要精通c语言,更不能出于某种动机,向初学者灌输一定要通过c语言入行IT等不符实际的观点。C语言说到天上,也就是一门编程语言,而当下优秀程序员,更需要关注架构、模型和算法等方面。
用户评论