近日国外名为「Computer Science Educators beta」的论坛有一个很火的问题,该问题是这样的:


当前的一些CS课程(特别是本科和高中时期的课程),在测试或者期末考的时候用的还是纸张而不是电脑。但作为一名学习CS课程的学生,测试时难道不应该允许使用电脑么?如果在电脑上编写代码的时候都难以察觉到的一个错误,放到纸上书写的时候岂不是更难于被发现了么?



该问题提出后,大家自发形成了三派观点进行了激烈讨论,小编在这里将他们各自观点整理如下。


一、赞成仍用纸上测试的人认为


1、通常,在纸上测试可以让你不过分担心分号,并且对你表达的算法/想法等等进行排列。如果问题很难,您将无法在计算机上正确执行此操作,那么可能在纸上写一下会更好些。


2、另外,在纸上进行“编码”,你不会像在电脑上打错别字的时候那样被分散注意力,并试图去编译。持有该观点的一类人也告诫初学者,在纸上没有清晰地算出解决方案前,不要开始编码。编码会分散算法思维,除非是你已经建立起一套相关经验了。


3、CS指代的不仅仅只是计算机,就像天文学指的不都是望远镜一样。”所以,认为纸质测试仍然适用于CS。


4、写在纸上的话,他们就不能归咎于打印错误或者自动化完成的问题。


5、在英文语境中,计算机科学的问题是这个名字造成的误导。其本身与电脑无关,它其实是关于信息自动处理的科学。例如,在意大利语语境(波兰语中也是如此)中,它被称为信息与自动化。在纸上进行测试也是理所当然的。


P.S.而且有一些人认为用打字机或一支万宝龙笔写文章的话,会更加有感觉。



二、赞成使用电脑的一派观点认为


1、为什么大多数答案都认为纸的唯一替代方法是全功能的IDE,而不是简约的明码文本,比如记事本?因为使用文本编辑器的最大优点就是它支持插入。



三、赞成同时使用的观点认为


1、今时不同往昔。早在1996年,那时学习大一新生的CS课程。会在Solaris SPARC工作站上使用cxx作为编译器,进行C++的所有编码。同时,在纸上写伪代码更便于得到答案,我们还可以选择使用我们编程的语言来回答问题。显而易见,这样我们就不必纠结于打印错误或者遗漏分号这种每个人都有可能犯的错误了。


2、这取决于你教的是什么。传统的CS课程更多的是关于理论的,所以,相关知识和对其理解力是很重要的。如果你教授编程是为了实际场景的应用。比如,一个高强度、历时三个月的iOS项目的话,那采用纸质测试的方法将是很可怕的。


那么问题来了,假设仍沿用试卷测试的话,它有什么优势呢?或者说,这是最好的测验方法么?欢迎将你的想法留言告诉我们。


你可能还想看

观点:深度学习,先跟上再说

机器学习的老炮,想把他多年的经验分享给你

百度陆奇内部最新演讲:成为优秀工程师的五个方法

全球最聪明公司排行榜TOP50,他们都是什么行业的?

128篇论文,21大领域,最值得看的资源全在这了

我面试了900多名工程师,得出了这样的结论

Stack Overflow 报告深度解析

如何用一句话噎死面试官


扫码关注CSDN程序人生

(下载iPhone或Android应用“经理人分享”,一个只为职业精英人群提供优质知识服务的分享平台。不做单纯的资讯推送,致力于成为你的私人智库。)

作者:佚名
来源:程序人生