计算思维的结构
分享
课程详情
课程评价
spContent=本课程是国家级精品课程“计算机科学导论”的拓展课程,课程注重计算思维核心概念之间的逻辑关系,并借助大量的典型案例,为各学科与计算的交叉融合在思维层面上搭建一座沟通的桥梁。
—— 课程团队
课程概述

本课程讲授的主要内容有:伟大的计算原理计算思维的结构,计算机方法论概述,课程评价问题的探讨(BLOOM分类法、SOLO分类法,难度、复杂度与能力);计算学科的基本问题(算法复杂性中的难解性问题,RSA公开密钥密码系统,组合爆炸问题,程序设计中的结构问题,软硬件资源的管理问题,计算机中的博弈问题等);计算学科的抽象、理论和设计3个学科形态(计算机语言的发展及其3个学科形态的内在联系);计算学科的核心概念(算法,数据结构,数据的存储和表示,数据的编码、校验);计算学科中常用的数学方法(集合,函数和关系,代数系统,定义、定理和证明,必要条件和充分条件,证明方法,递归和迭代,公理化方法,形式化方法);计算学科中常用的系统科学方法(系统科学的基本思想,软件开发引入系统科学方法的原因,使用系统方法的思考);跨学科的若干计算问题案例,包括社会与职业中的计算问题,数学领域中的割圆术和科赫曲线,地球科学领域中的森林火灾,物理学领域中的多普勒效应,社会学领域中的小世界网络,生物学领域中的向日葵模拟,艺术领域中的烟花模拟,游戏领域中的俄罗斯方块等。除了社会与职业中的3个计算问题外,本课程给出的其他案例均采用了可视化的计算机模拟仿真实现。

 

本课程还设置了可供学生选修的与课程核心内容相呼应的实验,可以让学生在体会计算机科学编程之美的过程中进一步理解计算机科学的基础概念,提高学生问题求解和系统设计的计算思维能力。

 

“计算思维的结构”课程建设为2014年教育部高教司—微软公司校企合作专业综合改革一类项目,项目得到微软公司的资助。


               

授课目标

就哲学方法论而言,学科方法论是认知一个学科的有效工具。本课程根据计算机方法论的结构框架组织教学,旨在通过计算机方法论的学习,认知计算学科,同时,借助大量的案例,加深人们对计算机科学基础概念的理解,提高人们问题求解、系统设计和人类行为理解方面的计算思维能力,促进各学科的交叉融合。

课程大纲

第1章 绪论

【第1课时】伟大的计算原理

【第2课时】计算思维的结构

【教学文档】第1章 绪论

【习题1】

【第3课时】难度、复杂度与能力(补充知识)

【第4课时】SOLO分类法(补充知识)

【讨论1-1】

【讨论1-2】

【讨论1-3】

【1-0-控制复杂工程问题的方法讨论-贯穿课程】

【单元测验1】

第2章 计算学科的基本问题

【第1课时】汉诺塔问题

【第2课时】证比求易算法和P=NP?

【第3课时】RSA公开密钥密码系统

【第4课时】旅行商问题与组合爆炸

【第5课时】GOTO与程序结构

【第6课时】哲学家共餐问题

【第7课时】两军问题

【第8课时】图灵测试

【教学文档】第2章 计算学科的基本问题

【习题2-1】

【第9课时】实验预备知识

【第10课时】第2章实验

【习题2-2】(Raptor基础知识考查,不在测验范围内)

【单元测验2】

【第11课时】停机问题

【第12课时】找零问题、背包问题与贪婪算法

第3章 计算学科的3个学科形态

【第1课时】学生选课实例

【第2课时】自然语言与形式语言

【第3课时】自然语言形式化及实例

【第4课时】图灵机的工作原理

【第5课时】VComputer软件的演示、说明及下载使用

【教学文档】第3章 计算学科的3个学科形态

【习题3】

【第6课时】第3章实验

【单元测试3】

第4章 计算学科的核心概念

【第1课时】算法的基本知识

【第2课时】两个常见的算法

【第3课时】数据结构

【第4课时】数据的存储和表示

【教学文档】第4章 计算学科的核心概念

【习题4】

【第5课时】第4章实验

【单元测验4】

第5章 计算学科中的数学方法

【第1课时】递归与迭代

【教学文档】第5章 计算学科中的数学方法

【习题5】

【第2课时】第5章 实验

【单元测验5】

【第3课时】随机数和蒙特卡罗方法

第6章 计算学科中的系统科学方法

【第1课时】系统同构

【第2课时】实验-基于Access的简单数据库设计

【第3课时】人固有能力的局限性及使用工具后产生的力量

【第4课时】软件开发的系统化方法需要遵循的基本原则

【教学文档】第6章 计算学科中的系统科学方法

【习题6】

【单元测验6】

第7章 跨学科的计算问题案例

【第1课时】道德选择

【第2课时】检举

【第3课时】第7章 实验

【第4课时】割圆术的计算问题

【第5课时】森林火灾的计算问题

【第6课时】多普勒效应的计算问题

【第7课时】小世界网络模型的计算问题

【第8课时】科赫曲线

【第9课时】向日葵种子生长模拟

【第10课时】烟花模拟

【第11课时】俄罗斯方块游戏

【教学文档】第7章 跨学科的计算问题案例

【习题7】

【单元测验7】

预备知识


证书要求

设置“合格”(达到60分)、“优秀”(达到80分)两档课程标准,由任课教师签发课程结业证书,其中成绩“优秀”者将颁发优秀证书。

参考资料

推荐教材:

1.董荣胜.计算思维的结构.人民邮电出版社,2017.08

2.董荣胜.计算机科学导论——思想与方法(第3版).高等教育出版社,2015.07



参考网站:

“计算机科学导论”国家级精品课程网站:http://jpkc.guet.edu.cn/jsjkxdl/index.asp


参考资料:

1.董荣胜,古天龙著.计算机科学与技术方法论.人民邮电出版社,2002

2.Herbert A.Simon著,武夷山译.人工科学:复杂性面面观.上海科技教育出版社,2004

3.Jeannette M. Wing. Computational Thinking. Communications of the ACM.2006,49(3)

4.Peter J.Denning.Great principles of computing. Communications of the ACM, 2003,46(11)

5.温伯格.系统化思维导论.清华大学出版社,2003

6.温伯格.程序开发心理学.清华大学出版社,2004

7.洛林·W.安德森(Lorin W.Anderson)等著,蒋小平,张琴美等译.布卢姆教育目标分类学:分类学视野下的学与教及其测评(完整版)(修订版).外语教学与研究出版社,2009

8.约翰 B.彼格斯(John B.Biggs),凯文 F.科利斯(Kevin F.Collis)著,高凌飚,张洪岩译.学习质量评价:SOLO分类理论(可观察的学习成果结构).人民教育出版社,2010.5

9.D.Easley,J.Kleinberg,李晓明等译.Networks, Crowds, and Markets,清华大学出版社,2011

10.徐长福.理论思维与工程思维.上海人民出版社.2002

11. J.Glenn Brookshear. 计算机科学概论(11版).刘艺,等译.北京:人民邮电出版社,2011


常见问题

Q:学习这门课程的同学都必须安装特定的软件吗?

A:不是必须的。但要求选修了实验的同学下载并安装与本课程有关的2个简单易学的特定软件:本课程网站上下载vcomp_alpha软件(存储程序式计算机仿真软件),在Raptor官网上下载Raptor可视化编程软件。

Q:对于初学者,如何学习,有何建议?

A:建议问题优先,即先从第2章“计算学科的基本问题”开始学习。建议,选了实验的同学尽快开始做本课程的实验内容。不选实验的同学,可以先做习题(不计入总分),看完视频、资料后,再做测验题,最后参加课程考试。

Q: 对基于本MOOC课程,开设MOOC+SPOC+翻转课程的老师有何建议?

A:本MOOC课程,干货多多。建议以案例教学为主,开课老师可以根据各自课程的具体情况进行取舍。比如,在本MOOC下开设“C语言程序设计”课程,侧重于本课程用Raptor实现的大量算法并转换之;“编译原理”,侧重本课程第3章的内容;“数据结构”,侧重本课程第4章的内容;“数据库原理及应用”,侧重第6章的“基于Access的简单数据库设计”的实验内容。