之前在知乎上看到这样一个问题:为什么现在部分985高校还是给大一上C语言课:
这个题主是某985CS专业学生,发现学校居然给大一教C语言程序设计,而不是现在最流行的Java或者Python,不由得产生了疑问。
没错,现在很多高校计算机专业的教学方法确实有些落后,但是作为一所985高校,大一的时候教学生C语言还真没有什么问题。
首先,我们学的是 Computer Science,而不是 Programming Language,语言真的真的真的不是重点。985/211 这种国内最顶尖的一批高校,应该注重通识教育而不是专项教育,在专业上更要注重基础、底层、偏向原理。
只有掌握了最核心的东西,学起那些偏技能的东西才会很快很轻松。
而且相对于现在比较流行的Java和Python,虽然C/C++难度更大、门槛更高,但如果你真的深入去学习的话,优势也是蛮明显的。
我觉得至少有以下几点优势:
1、能帮你打好结实的编程基础
不管你以后走什么样的技术路线,不管你用不用它做开发,一名熟悉C/C++的开发人员,假如他不是一个偏执狂的话,再学习Java或Python,都要容易得多。
2、竞争小
现在很多大学都主流教java,,因为java相对C简单,而且应用范围也蛮广的,但是java的效率不如C,正因为很多人觉得C很难所以就放弃了,也就造就了Java竞争力非常大,不少互联网大厂提前批第一天开放的时候,投递Java后端开发的应届生是最多的。
C/C++竞争力小,而且真正的高级C++程序员很抢手的,可以说是,有钱都不一定招得到。
3、工资高
C/C++程序员平均工资普遍比其他语言高,当然是在同等技术情况下,不可能一个C/C++普通程序员和一个java的老鸟比。如果普通java程序员和普通C/C++程序员相比的话,基本上都是C/C++程序员工资高一些,而且C的上限比Java高太多了。
当然每一门语言都有自己的特点,也不是说Java就不好,一门语言没有好坏,主要是看使用者如何使用了,如果能把一门语言研究透彻,无论是什么语言那也是前途无量的.
但是就就业的话,如果你是科班生,C是一个不错的选择,说实话,Java竞争力太大了,可以去各大招聘平台去看一下,对比一下C就会发现,往往很多工资很高的岗位,没有C++程序员去,但是Java岗,一个岗位去应聘的人非常多。
还是那句话,语言没有好坏,只是看使用者能把一门语言发挥到什么程度。
我这边也顺便给大家分享点C/C++的学习资料吧,希望对大家有用:
1、《C语言小白变怪兽》
既适合对计算机一窍不通的小白也适合有编程基础的读者,还可以用来进阶。这本书的作者还在不断地更新这本书,学起来通俗易懂,深入浅出,只要认真看就一定能看懂,这是C语言入门的首选教材。
2、《C Primer Plus》
畅销30余年的C语言入门经典书籍,至今无人能撼动它的地位,最符合C语言标准的书籍,作为一名C语言程序员不收藏一本都觉得自己很水。
3、《C和指针》
这本书的特点是在指针上花了大功夫,指针绝对是C语言的精髓,理解了就等同于攻克了最难的部分。
除了头尾两章,指针贯穿全书,并用了大量通俗易懂的例子来讲解,正是指针使得C语言如此之强大,所以要学习C语言的精髓,就是要精通指针。
4、《C专家编程》
这本书适合已经具备C语言基础想进阶的读者。这是一本吐槽C语言的书,基本上介绍了大多数C语言的坑,有不少精髓,在C语言界久负盛名,进阶时一定要看。
把以上4本书学透,C语言基本上就差不多了,最后强调一下:不管学习哪门语言,实践都是在第一位,因为最终我们都是要上手写代码,解决具体问题的,所以大家在学习的过程中一定要多实践、多写代码。
C语言很重要,不管你以后想从事什么方向,如果你想在程序员这条路上走的更远,C语言都是要重点掌握的!
你好,我是厂长谭庆波,就读于哈工大,计算机系博士生,曾经的学渣,现在的学霸,拿过各路编程大奖 。 求学20载,从农村到C9博士,上学期间通过副业收入超 100 万,点击蓝字查看我的成长之路。 同时,我也是知乎博主:谭庆波,日常分享高质量程序员认知,学习资料、技术干货等,欢迎围观。