本课程讲授的主要内容有:伟大的计算原理,课程评价问题的探讨(BLOOM分类法、SOLO分类法,难度、复杂度与能力);计算思维、理论思维和实验思维,计算思维概述,有代表性的3种计算思维结构,计算机方法论概述;计算机科学的基本问题(算法复杂性中的难解性问题,RSA公开密钥密码系统,组合爆炸问题,程序设计中的结构问题,软硬件资源的管理问题,计算机中的博弈问题等);计算机科学中的抽象、理论和设计3个学科形态(计算机语言的发展及其3个学科形态的内在联系);计算机科学中的核心概念(算法,数据结构,程序,软件,硬件,计算机中的数据等);计算机科学中常用的数学方法(集合,函数和关系,代数系统,定义、定理和证明,必要条件和充分条件,证明方法,递归和迭代,公理化方法,形式化方法);计算机科学中常用的系统科学方法(系统科学的基本思想,软件开发引入系统科学方法的原因,结构化方法,面向对象方法);从计算思维的视角理解社会和职业的问题等。
本课程还设置了可供学生选修的与课程核心内容相呼应的十组实验(建议至少选修4组),可以让学生在体会计算机科学编程之美的过程中进一步理解计算机科学的基础概念,提高学生问题解决和系统设计的计算思维能力。十组实验分别为:分支和循环结构的简单程序设计、RSA公开密钥密码系统、存储程序式计算机的简单程序设计、递归算法和迭代算法及其比较、数组实验、栈的基本操作:push和pop、归并排序与折半查找、蒙特卡洛方法应用、简单的卡通与游戏实验、基于Access的简单数据库设计等,实验均有“热身”,可以让学生尽快将注意力集中于问题解决的建模和算法上来。
在本MOOC课程的基础上,教师们可以很方便地构建大学第一门计算机“MOOC+SPOC”课程,比如,大学计算机基础,计算机科学导论,甚至还可以构建不同学科领域的更多培养学生计算思维习惯的大学本科或研究生的SPOC课程。本课程的建设得到微软公司的资助。
设置“合格”(达到60分)、“优秀”(达到85分)两档课程标准,由任课教师签发课程结业证书,其中成绩“优秀”者将颁发优秀证书。
无
推荐教材:
1.董荣胜.计算机科学导论——思想与方法(第3版).高等教育出版社.2015
2.董荣胜,古天龙著.计算机科学与技术方法论.人民邮电出版社,2002
参考网站:
“计算机科学导论”国家级精品课程网站:https://ocw.guet.edu.cn/dept3/jsjkxdl/
参考资料:
1.Herbert A.Simon著,武夷山译.人工科学:复杂性面面观.上海科技教育出版社,2004
2.Jeannette M. Wing. Computational Thinking. Communications of the ACM.2006,49(3)
3.Peter J.Denning.Great principles of computing. Communications of the ACM, 2003,46(11)
4.温伯格.系统化思维导论.清华大学出版社,2003
5.温伯格.程序开发心理学.清华大学出版社,2004
6.洛林·W.安德森(Lorin W.Anderson)等著,蒋小平,张琴美等译.布卢姆教育目标分类学:分类学视野下的学与教及其测评(完整版)(修订版).外语教学与研究出版社,2009
7.约翰 B.彼格斯(John B.Biggs),凯文 F.科利斯(Kevin F.Collis)著,高凌飚,张洪岩译.学习质量评价:SOLO分类理论(可观察的学习成果结构).人民教育出版社,2010.5
8.D.Easley,J.Kleinberg,李晓明等译.Networks, Crowds, and Markets,清华大学出版社,2011
9.徐长福.理论思维与工程思维.上海人民出版社.2002
Q:在本MOOC课程的基础上可以构建哪些SPOC课程
A:计算机科学源于欧美,目前,美国在计算机领域占据领先地位,美国大学的第一门计算机课程(不分专业)的名称一般为“计算机科学导论”,有的也称为“计算思维导论”。计算思维的培养是美国大学计算机教育的第一任务。在中国,由于历史等多种原因,这类课程有很多名称,常见的有:大学计算机基础,大学计算机文化,计算机应用基础,计算机导论,计算机专业导论,计算概论等。经过多年的探索与实践,2016年1月,教育部高等学校大学计算机课程教学指导委员会推出了《大学计算机基础课程教学基本要求》,明确将计算思维能力的培养作为“大学计算机基础”课程的核心内容。本课程通过学科方法论的讲授来提高学生的计算思维能力,无论是从方法上,还是从内容上,都完全符合《大学计算机基础课程教学基本要求》的要求。因此,广大教师可以在本MOOC课程的基础上,从学科方法论的高度来构建富有挑战性的并与国际接轨的大学第一门计算机课程,比如,大学计算机基础,计算机科学导论,计算思维导论等SPOC课程。本课程另外还设有“跨学科的主要问题”、"计算思维的结构问题"、“计算学科的基本问题探讨”、“抽象、理论和设计三个学科形态的划分问题”、“计算学科的核心概念”、“计算学科中的数学方法”、“计算学科中的系统科学方法”、“社会和职业的问题”、“BLOOM分类法与课程评估”等9个高级主题,围绕这些主题,还可以构建一些针对不同学科领域培养高年级本科生或研究生计算思维习惯的大学SPOC课程。
Q:学习这门课程需要安装特定的软件吗?
A:是的,需要下载并安装2个简单易学的软件:本课程网站上下载vcomp_alpha软件(存储程序式计算机仿真软件),在Raptor官网上下载Raptor可视化编程软件。另外,选了第十组实验,即“基于Access的简单数据库设计”的同学还请到微软官网上下载并安装Microsoft Access 2013数据库系统软件。
Q:对于初学者,如何学习,有何建议?
A:建议问题优先,即先从第2章“计算学科的基本问题”开始学习。实验贯穿于整个学习的过程中,建议,尽快开始做课程的实验内容。
Q: 对基于本MOOC课程开设“大学计算机基础”和“计算机科学导论”SPOC课程的老师有何建议?
A:本MOOC课程的内容非常丰富,建议开课老师根据各校课程学时等具体情况抽取内容,可以适当增加一些基础的操作实验,讨论区“栏目”的设置也可以更为具体,比如,可以设置“递归和迭代”这样的栏目,可以将汉诺塔问题,斐波那契数列等内容放在这个栏目讨论,甚至还可以将与递归有密切联系的数学归纳法也放在这个栏目讨论。