展开讨论

经验与复盘经验摘录 · 机器翻译

我认为当你把调试看作一个科学过程时,你是对的

我认为当你把调试描述为一个科学过程时你是对的。这确实涉及到观察和测量,同时以某种方式对系统进行扰动,以促使系统向你提供观察结果。但如roenxi指出的那样,学术界并不认为编程是他们应该教授的内容。学术界认为编程是一种职业技能。应该在‘工作中’学习,或者由‘其他人’(不管是谁)来做。他们认为他们的工作主要是教你建模软件和系统行为所需的数学知识。我认为我曾经接触到的最实用的东西是系统设计/建模。至于展示学术界如何糟糕地保持自身更新,我们所学的方法,毫无疑问,都是已知的不实用、过时和浪费的。没有谁会将这门课所学的东西应用到以后的生活中。计算机科学有点奇怪。如果你成为了一名建筑师(那种画房子的人),人们会理解你不会真的去建造房子。…

源讨论为什么学校不教调试,或者更根本地说,不教基础知识呢?原帖 154 条评论 · 导入时统计
2

这条内容在回应什么?

父级讨论 · 节选

RC

在调试的情况下,我认为学术界可以从教授调试的基本原理中受益:因为调试本质上就是科学,即通过测量和扰动系统来了解其工作原理。你可以教别人gdb,但如果他们不了解基本原理,他们将难以真正调试任何东西

完整原文

社区评论 0

还没有社区评论,来聊聊你的看法。

原讨论中的回复 2

仅展示本次导入中包含的直接回复。中文为机器翻译,可查看英文原文。

JL

学术界教授的是实用编程。计算机科学系通常不会,因为这不是他们的职责。 你可以看到数学系也有类似的情况。他们教授数学,而不是做计算。如果另一个系需要更多的实用数学技能(通常以物理为例),他们通常会自己开设课程。 像学术界中的许多其他偏见一样,这主要是自我选择的问题。如果你想从事软件行业,行业显然是更好的选择。如果你想专门从事计算机科学领域,学术界是为数不多的不错选择之一。这意味着计算机科学系里的人往往对软件没有特别的兴趣。

完整原文
RT

这让我觉得非常奇怪。我的计算机科学学位有很多实践课程,但这些都是你所学内容的应用,因为作为一种准职业培训,学习编程最好的方式就是通过实践,所以编程学习的部分是通过课程作业来完成的。我们有很多课程;标准的 Java 入门课程,第二阶段我们使用早期的 Google Nexus 手机,尝试开发小应用程序[0],然后有一门关于开发方法的课程,其中有一个实验/小组项目部分,我们正在为一个小型的数字健康文档系统添加功能,这个系统实际上在每届学生之间传递,每次都会采用每个学期的最佳版本,并在下一次学期中继续添加,最后有一个高级项目。每个学期通常至少有一门主要是实践的课程。 > 就好像你期望建筑师(设计房屋的那种)去建造...…

完整原文
在 Hacker News 阅读

尊重不同观点,分享具体经验。

登录后即可发帖、评论、转发和引用。