【还有985大学在大一上C语言课?】今天看到这样一个问题:为什么现在部分985高校还是给大一上C语言课。提问者是某985CS专业学生,发现学校居然给大一教C语言程序设计,而不是现在最流行的JAVA或者Python,不由得产生了疑问。
评论区非常精彩,不少答主认为:C语言真的没什么卵用了,学校可能是教学方法太落后了,才会继续教C语言。
不得不承认不少大学计算机专业的教学方法的确有点落后,但大一学C语言还真没什么问题。
虽然现在计算机专业毕业之后用C语言的是小概率,但学习C语言好处还真的非常多。
1.培养计算机体系基础知识
好的大学、好的计算机专业的教学重点不是语言栈而是计算机体系基础知识。
但用C语言来诠释数据结构、操作系统、计算机网络、编译原理、等核心知识最直观、最简单。
同时C语言的语法在这些语言中基本是最简单的,几天就能学会,相当于掌握这个工具之后再开展其他课程,相当于用最快的速度掌握课程前置知识点的学习。
计算机专业的朋友一定要注意前置知识。
2.C语言最接近硬件
C语言中没有大量的语法修饰,C语言中的语句大部分情况下能和汇编的语句一一对应。
比如if对应jxx系列、while对应jnz语句,这种一一对应能让我们更加理解计算机是怎么运行的。
对这块感兴趣的同学可以买一本《CSAPP》,这本书完全按照C语言和汇编的对应关系来让你了解计算机工作原理,以及学习汇编语言。
同时C语言很多函数都是直接和操作系统打交道的,跟Java、Python完全不一样,这些高级语言的解释器、JVM之类,隐藏了大量硬件细节。
说到底,科班出身的人一定要对计算机底层原理有深厚的功底,在这个基础之上,Java、Python应该是可以自学的选项。
C语言接近硬件的特性能帮我们构建对计算机体系的底层认知,而这种认知很大程度决定了将来我们能否成为高级工程师甚至技术专家。
基于以上两点原因,C语言绝不是一个可选项而是必修项,洋不少非科班读者问:如何提升编码能力,我都会先问一个问题:学过C语言吗?没有的话先学习下。
学习语言除了看书之外一定要多实践多编码,可以用C语言做一些好玩的程序,比如最简单的万年历,复杂点的贪吃蛇之类的。
最后强调一点:每一个想在计算机行业长期发展的同学,无论科班还是非科班,请务必把C语言基础弄夯实,万丈高楼平地起,C语言就是必须的地基。