HIT-软件构造blog-软件构造课程的内涵思考

我正在复习的这门课叫做“软件构造”。我以为,叫做“软件构造方法”可能更为合适。这样,能够让学生更能看出这门课程的本质,而不是在学习的过程中(甚至是期末)才体悟到。

其实这门课是面向工业的课程,而非面向理论问题(指计算机工业和计算机理论问题)。整门课其实是一套方法论,只是恰好用于管理软件,软件的载体恰好是计算机,所以我们计算机的学生需要上这门课。

课程的内容并非面向机器,主要是面向人类。它极力针对的不是如何帮助人类设计某种工具,而是如何让人类适应已经设计好的工具。具体地,课程的理论有助于提高开发效率,而对程序效率无益甚至有害。许多理论基于的是对人性的分析——比如永远相信人的疏忽之类。

然而,就我本人来说,虽然我擅长,也深知其重要性,但我并不喜欢学习针对人的科学,讨厌管理理论。我自以为自己做事有条理。这门课的许多思想其实十分朴素,我一直就拥有,许多指导意见其实是我一直在做的事情(只是并没有理论化和体系化)。将这些我早已为然的思想与计算机科学结合起来,总给我一种奇怪的违和感——如果软件构造能称得上是计算机科学的话。这给人一种硬造方法论,强行约定的感觉。

这种感觉并不自在,因为我感到自己并没有向真理学习,而是向人学习——不是人的知识,而是人的规定。如果我出生更早,可能我就是制定规定的人(或之一),我就能构造出达到相同效果但与现有规定有区别的规定,然后让后人学习、考试。

计算机科学就是人造的。但是,其中的理论问题也是很数学和优雅的。软件构造课程的美,在于工业之美,硬核而暴力——这与严谨的数学、优雅的理论是不同的。

我并无批判之意,不过,与其说这门课培养科学家、工程师,不如说这门课培养的是工人。虽然大多数同学未来都将成为工人,我也很大可能成为工人,但将这门课和研究理论问题的形式语言那门课一对比,到底哪个能带来知识的快乐就不言而喻了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值