当前位置: 首页> 为什么大学c语言课不顺便教一下Linux,Makefile,git,gdb等配套工具链呢?> 正文

为什么大学c语言课不顺便教一下Linux,Makefile,git,gdb等配套工具链呢?

还有vim,cmake,了解gcc、llvm,计算机程序运行的底层原理。熟悉shell的使用。毕竟码农是要会这些的。
  • 用户2532480966用户2532480966
  • 2023-07-03
  • 23
  • 共9人回复
在鱼厂
「在鱼厂 」发表看法
2023-07-09

想多了!

c语言最初24周,每周4课时,这点课时只能教会学生基本的语法和基本的算法。

然后开始教学改革,从24周变18周、16周、14周,现在是12周,每周四节。现在的课时量已经到了连最基本的内容都讲不完的地步,还加其他?你觉得可能吗?

总之,现在的教学改革就一个方向:减课时量。

一叶障目0001
「一叶障目0001 」发表看法
2023-07-03

这些应该是在以后熟悉了计算机相关基础的情况下学一下。在大一刚开C语言的时候很多学生连Hello world都写不出来的情况下就开始搞这个容易打消学生的积极性。刚开始学C语言的时候哪个学生能分清什么是编译,什么是链接,又怎么链接各种库的。用VS的学生可能花一个小时写完实例程序点一下编译程序就跑起来了。用gcc的学生中途可能写代码一小时你把它编译出来可能要一天。工具不重要,重要的是写出代码。

像gcc shell cmake之类的完全可以在大二或者大三单独开一门课,没必要跟C语言混着学

麻雀爱努力
「麻雀爱努力 」发表看法
2023-07-11

个人认为呢!

大学课堂上仅仅只能让你入门,想要学会学精。首先,必须私底下找找第三方学习平台。哔哩哔哩就不错,上边免费的学习视频绝对让你大饱眼福。再一个,就是自己去购买相关书籍。语言技术更新迭代很快,大学课本上的知识点严重落后。

那就禁掉冰淇淋
「那就禁掉冰淇淋 」发表看法
2023-07-11

定位原因,大学的教育不是职业教育。大学里学的是原理性的东西,编程语言课也就一到两门,其目的是为了后面的数据结构等理论课能够顺利展开(举个例子,后面的数据结构如果是C描述的,前面一学期会学C,如果是Pascal描述的,前面一学期会学Pascal)。至于汇编语言课纯纯是为了给你讲CPU的(个人理解)。至于那堆工具链,适合校外培育班或自学,或者学校里有老师擅长这个可以开个选修赚点课时费。

杭州记
「杭州记 」发表看法
2023-07-03

Linux,Makefile,Git,GDB等配套工具链是以Linux为平台的开源编程工具,在软件开发和系统管理中有着至关重要的作用。其中Linux是一个类Unix操作系统,分布在个性化设备(如PC,手机,网络服务器,嵌入式系统等)上,是当今互联网关键技术之一,被广泛使用,是屈指可数的最重要的技术之一。Makefile是构建、编译、调试Linux系统的一个文件,它包含了一些构建安装和编译命令,可以帮助开发者快速安装和编译Linux系统,是Linux应用程序和软件的基础。Git是一个版本控制系统,它可以让开发者保存软件代码的历史,让开发者可以轻松的查看、恢复、分享自己写的代码,也可以帮助合作者之间平滑的协作开发,发挥出最大的效率。GDB是一个强大的调试工具,它可以调试应用程序在Linux系统上的任何C编写的程序,这意味着开发人员可以轻松的发现和修复Linux系统上的程序错误,提高程序的健壮性。

然而,大多数大学的C语言课程却没有涉及以上 Linux,Makefile,Git,GDB等配套工具。有很多原因导致这种情况,首先,与更多高级语言相比,Linux,Makefile,Git,GDB等配套工具这些系统技能更加深入,学习起来需要时间和经验,而大多数大学生没有足够的经验和时间去深入学习。其次,由于开发语言发展得很快,以上技能必须随时更新才能和时代相匹配,因此大学不太可能推出课程长期让学生学习,且每次更新时都需要对教材进行修订,增添教学成本。

最后,Linux,Makefile,Git,GDB等工具虽然在软件开发和系统管理中有着重要意义,但是一般大学生只会使用它们来完成简单的作业,未必能充分发挥这些工具的全部作用,所以,综上所述,大学C语言课并不便集成学习Linux,Makefile,Git,GDB等工具。

但是,掌握Linux,Makefile,Git和GDB等配套工具,仍是一个软件开发者从业的基本技能,因此我们建议,学生可以自学和使用这些技术,为软件开发和系统管理打下扎实的基础。掌握上述技能,也可以帮助学生在以后的职业发展中取得成功。

DeveloperPeer
「DeveloperPeer 」发表看法
2023-07-05

大学的 C 语言课程,基本上是学生第一次接触编程的偏理论,外加一些实践的软件语言课程。在这之前,几乎都没有接触过编程的,在 C 语言之前,可能会有一门计算机基础的偏理论的课程,主要介绍计算机构成,程序运行的流程,网络等知识。

计算机程序语言对第一次接触的人来说,就像接触一个崭新的事物一样,需要一个相对长期的过程,里面的概念,方法论可能都是之前不曾接触过,因此,接受,理解需要一段时间。

C 语言课程就那几十个课时,这么点时间用来掌握第一门语言就显得紧迫。

Linux 是一个比 Windows 难掌握的操作系统,学习 Linux 需要相当长的时间,完全可以当做一门独立的课程来对待。

Makefile, git,gdb是软件开发工程中用到的编译,调试,版本管理工具,对初学者来说,全部融入到第一门编程语言课程中也不太现实。

师傅领进门,修行靠个人。虽然不适合在 C 语言中教授这些内容,但是可以对之有些介绍,这样有兴趣的学生,可以自己在课下根据兴趣来学习。

BG6VDC
「BG6VDC 」发表看法
2023-07-07

我觉得最根本的原因,是大学学习跟培训班学习目标不同。

大学学习,更注重理论知识,告诉你各种编程的原理,而且目前的编程原理上都大同小异,学精一种编程,其他编程上手都非常快。同时,编程的各种相关理论知识课程,也会开设,所以学一种编程是非常消耗精力的。另外,对于工具来说,老师应该是站在公正角度一视同仁,而不会有特别的倾向性引导,这才是合适的。

而培训班类型的学习,就是告诉这种应该怎么应该,应该在哪里应该,讲究的是时效性的应用性能。所以你说的这些配套工具,大学里会偶尔演示一下,但不会讲的特别透彻,而培训就业班里会具体讲工具的应用和使用技巧。

弈秋的美好生活
「弈秋的美好生活 」发表看法
2023-07-08

大学 C 语言课程通常注重教授 C 语言本身的基础语法和逻辑思维,目的在于帮助学生掌握一种基础的程序设计语言。虽然 Linux、Makefile、git 和 gdb 等配套工具也是 C 语言程序开发中必不可少的工具,但它们并非 C 语言的基础概念,更可以说是软件工程师的日常工具。

由于学生在大一或大二阶段的专业课程学习时间有限,通常注重基础知识的学习,而对于软件工程步骤的技能、命令操作等只能是从实践中逐渐学习。此外,Linux、Makefile、git、gdb等工具在学习起来比较复杂,需要更多的时间和精力去理解掌握。如果将这些工具链纳入 C 语言课程内容中,会使课程内容过于冗杂、难度过大,影响学生的学习效果。

Linux、Makefile、git、gdb等工具链的学习并不局限于 C 语言的开发,这些工具对于其他程序语言的开发也是必不可少的,因此将这些知识点扩展到其他课程中也是可以的。更何况,学生的兴趣和职业方向各有不同,部分学生未来职业路线没有涉及开发工具链,学习这些工具的时间和精力是不必要的浪费。

目前计算机教育中已经有专门教授软件工程等工具链的相关课程,比如软件工程、操作系统等相关专业课程,这些课程通过详细讲解操作方法和各个工具的使用,可以更好地帮助学生掌握和应用这些工具。

综上所述,大学 C 语言课不顺便教 Linux、Makefile、git、gdb等配套工具链是合理的,因为这些工具对于 C 语言的基本语法和逻辑思维基本没什么关系,不应该占用太多课堂时间。而且,这些工具对于软件工程师来说是必不可少的,学生可以在相关课程中学习掌握。

长安老皮
「长安老皮 」发表看法
2023-07-06

很多大学在教授C语言时确实会涉及到一些与其相关的工具链,例如Linux、Makefile、git、gdb等。但是,教授这些工具的具体深度和范围可能因教授C语言的目的和课程设置而有所不同。

一些大学可能更注重基础的C语言语法和程序设计,而对与其相关的工具链只是简单地进行介绍。这是因为,在学生还没有掌握C语言的基本概念和编程技巧之前,过多地介绍这些工具可能会分散他们的注意力,甚至会对他们造成困扰。

另一些大学则可能更加注重实际应用,会在教授C语言时介绍一些实际应用的场景,并结合相应的工具来进行讲解。这种方法能够更好地让学生了解如何在实际应用中运用C语言,并且更好地掌握与其相关的工具链。

总的来说,大学C语言课是否需要顺便教一下Linux、Makefile、git、gdb等配套工具链,需要根据教学目的和学生的需求来决定

欢迎发表您的看法