大家好,我是张巧龙,划水知乎,突然看到了一个这样的话题,
真是给我整笑了,进去我就想着开始***的,又在这里引战或误人子弟。
引战我不管,误人子弟我绝不允许!
先抛出观点:
如果你是在校学生或者初学入门的程序员,那么请记住,C语言很重要,不要问为什么?C语言有没有用,不是你操心的,你只要好好学就行了!
以下几个理由:
1. 学校不是来培养你作为一名螺丝钉的,而是要想着要培养你的计算机思维,而不是单单让你掌握一门编程语言。
Computer Science 和 Code Language 是有明显区别的!
通过编写C语言程序的方式理解计算机行为,计算机体系基础知识的培养用C语言来诠释是最为恰当不过的。
至于C语言语法和基本概念,一周半个月足够掌握了。
说到底,任何的编程语言都是为计算机服务的,了解计算机行为和相关基础知识之后,再来谈其他的编程语言,不是有异曲同工之妙吗?
就像我之前在星球内发的一个帖子:
什么是道,什么是术?大家可以好好思考!
2. C语言的语法不是学习的目标,它表达的内容才是。
至于为什么要用C来表达内容,而不是Java,是因为Java很少涉及底层,底层概念基本全部被封装了。
C语言来表达其他的一些核心课程最为直接和直观。比如:计算机网络、操作系统、数据结构等。
见过用java来写单片机的吗?这句话只是举例,不是硬刚。
3. 对于工科学生来说,我认为C语言是一门通识基础课。
什么是通识教育?
以下灰色部分内容来自百度学科:
通识教育重在“育”而非“教”,因为通识教育没有专业的硬性划分,它提供的选择是多样化的。而学生们通过多样化的选择,得到了自由的、顺其自然的成长,可以说,通识教育是一种人文教育,它超越功利性与实用性。
之所以要以“大学问家、大思想家”为榜样,是因为他们身上有着独立人格与独立思考的可贵品质,而这正是通识教育的终极追求。
因为,教育不是车间里的生产流水线,制造出来的都是同一个模式、同一样的思维。而是开发、挖掘出不同个体身上的潜质与精神气质。
因为通识教育是要“孕育”出真正的“人”而非“产品”。
所以大家知道了吧,学校不是想着用哪门课程去培养你去某个具体的岗位,然后去做某件具体的搬砖的事情,那样没有意义。
4. 最后。
当然,从近些年的发展来说,C语言的使用场景和应用确实越来越少了,结合就业来看,确实除了C语言,必须还要精通一门高级语言(C++、python、JAVA等)
最后推荐几本书吧:《C Primer Plus》《C语言程序设计·现代方法》《C程序设计语言》《C和指针》《C陷阱与缺陷》《C专家编程》
就说这么多,大家有不同意见可以在评论区留言讨论。
推荐阅读:
30岁了,还要去读研吗?
到底要不要考研?读完研究生就能找到好工作了吗?
一名大学老师,欢迎关注!
版权归原作者 张巧龙 所有, 如有侵权,请联系我们删除。