编程与证明写作的关联及Web组件测试优先级方法探讨
1. 编程与证明写作的教学建议
编程和证明写作有诸多相似之处,它们的成果都需被他人阅读并用以说服他人,这就为编写模块化、可读性强且简洁的代码提供了更多理由,学生应时刻牢记这一点。
1.1 编程与证明写作的联系应用
- 转换训练 :证明写作和编程存在相互交织的步骤,学生应接受将证明和形式定义转换为程序的训练。离散数学或集合论课程是训练此类技能的理想场所,这些课程提供各种引理、定义和证明,可作为将形式描述直接转换为代码的训练基础。
- 代码推理训练 :编程过程中也包含类似证明写作的步骤,学生应更直接、深入地接受相关训练,学会对代码进行推理。以下是一些典型的问题:
- 所选变量在不同运行时间的状态如何?
- 是否能找到特定变量的实例,使程序出现意外行为?
- 是否存在副作用?
- 程序将使用多少空间和时间?
- 能否用更少代码行的程序解决当前问题?
- 能否用更长但可能更优雅的解决方案解决当前问题?
1.2 教学现状
目前,大多数编程课程侧重于编程教学,而忽视了对代码的反思。深入推理代码的能力对程序员技能的提升可能比现在认为的更为重要。
2. 编程与证明写作的结论
从知识获取角度看,撰写数学证明和计算机程序的思维过程都可归类为知识获取活动。从历史视角,从
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



