260 likes | 411 Views
以计算思维为导向的 程序设计技术课程改革 课题组讨论会. 内 容 提 要. 1 、当前计算机基础教育存在的问题 2 、大学计算机课程教学改革的必要性 3 、课题的指导思想和最终目标 4 、教学体系与课程内容的改革 5 、教学手段和方法的改革 6 、实践教学体系、教学方法的改革 7 、教学资源的建设. (1) 大学通识教育( Liberal Studies )是大学人才培养的重要任务 ① 大学教育不能局限于基本知识传授,要培养: * 学生的理性思维能力 * 学生对科学精神的追求 * 学生的高尚人格
E N D
以计算思维为导向的程序设计技术课程改革课题组讨论会以计算思维为导向的程序设计技术课程改革课题组讨论会
内 容 提 要 1、当前计算机基础教育存在的问题 2、大学计算机课程教学改革的必要性 3、课题的指导思想和最终目标 4、教学体系与课程内容的改革 5、教学手段和方法的改革 6、实践教学体系、教学方法的改革 7、教学资源的建设
(1) 大学通识教育(Liberal Studies)是大学人才培养的重要任务 ① 大学教育不能局限于基本知识传授,要培养: * 学生的理性思维能力 * 学生对科学精神的追求 * 学生的高尚人格 ② 通识教育三大特征(复旦杨玉良校长) * 通识教育要同时传递科学精神和人文精神 * 通识教育要展现不同文化、不同学科的思维方式 * 通识教育要充分展现学术魅力 ③ 大学计算机教育三种能力的培养 * 使用计算机的基本能力(Computer Literacy)的培养 * 理解计算机系统的熟练能力(Computer Fluency)的培养 * 训练有素的计算思维能力(Computational Thinking)的培养 一、大学计算机基础教育的重要性
(2) 计算思维能力培养是大学通识教育的重要组成部分 ① 国家明确定位计算机基础课程是和数学、物理等同地位的基础课程。 ② 计算机不仅为不同专业提供了解决专业问题的有效方法和手段,而且提供了一种 独特的处理问题的思维方式。 ③ 熟悉使用计算机及互联网,为人们终生学习提供了广阔的空间以及良好的学习工具与环境。 一、大学计算机基础教育的重要性
2006年3月,美国卡内基·梅隆大学计算机系主任(现任NSF计算机和信息科学工程部主任)周以真(Jeannette M. Wing)教授在美国计算机权威期刊《Communications of the ACM》上给出计算思维的定义。 二、计算思维Computational Thinking 1.计算思维定义: 周教授认为:计算思维是运用计算机科学的基础概念进行问题求解、系统设计、以及理解人类行为等涵盖计算机科学之广度的一系列思维活动。 计算思维的本质是抽象和自动化。它是如同所有人都具备“读、写、算”(简称3R)能力一样,成为适合于每个人的一种普遍的认识和一类普适的技能。
周以真教授认为,计算思维具有以下特征: 是概念化的抽象思维而不只是程序设计 是基本的而不是死记硬背的技能 是人的而不是计算机的思维方式 是数学和工程思维的互补与融合 是思想而不是人造品 面向所有的人和所有地方 关注依旧亟待理解和解决的智力上极有挑战性并且引人入胜的科学问题。 计算思维特征
概念化的,不是程序化。计算机科学不是计算机编程。像计算机科学家那样去思维意味着远远不止能为计算机编程,还要求能够在抽象的多个层次上思维。计算机科学不只是关于计算机,就像音乐产业不只是关于麦克风一样。概念化的,不是程序化。计算机科学不是计算机编程。像计算机科学家那样去思维意味着远远不止能为计算机编程,还要求能够在抽象的多个层次上思维。计算机科学不只是关于计算机,就像音乐产业不只是关于麦克风一样。 根本的,不是刻板的技能。计算思维是一种根本技能,是每一个人为了在现代社会中发挥职能所必须掌握的。刻板的技能意味着简单的机械重复。 人的,不是计算机的思维。计算思维是人类求解问题的一条途径,但决非要使人类像计算机那样地思考。计算机枯燥且沉闷,人类聪颖且富有想象力。是人类赋予计算机激情。计算机赋予人类强大的计算能力,人类应该好好的利用这种力量去解决各种需要大量计算的问题。 计算思维特征
是思想,不是人造品。不只是将我们生产的软硬件等人造物到处呈现给我们的生活,更重要的是计算的概念,它被人们用来问题求解、日常生活的管理,以及与他人进行交流和互动。是思想,不是人造品。不只是将我们生产的软硬件等人造物到处呈现给我们的生活,更重要的是计算的概念,它被人们用来问题求解、日常生活的管理,以及与他人进行交流和互动。 数学和工程思维的互补与融合。计算机科学在本质上源自数学思维,它的形式化基础建筑于数学之上。计算机科学又从本质上源自工程思维,因为我们建造的是能够与实际世界互动的系统。所以设计思维是数学和工程思维的互补与融合。 面向所有的人,所有地方。当计算思维真正融入人类活动的整体时,它作为一个问题解决的有效工具,人人都应当掌握,处处都会被使用。 计算思维特征
通过约简、嵌入、转化和仿真等方法,把一个看来困难的问题重新阐释成一个我们知道问题怎样解决的方法。通过约简、嵌入、转化和仿真等方法,把一个看来困难的问题重新阐释成一个我们知道问题怎样解决的方法。 是一种递归思维,是一种并行处理,是一种把代码译成数据又能把数据译成代码,是一种多维分析推广的类型检查方法。 是一种采用抽象和分解来控制庞杂的任务或进行巨大复杂系统设计的方法,是基于关注分离的方法。 是一种选择合适的方式去陈述一个问题,或对一个问题的相关方面建模使其易于处理的思维方法。 计算思维的解析
是按照预防、保护及通过冗余、容错、纠错的方式,并从最坏情况进行系统恢复的一种思维方法。是按照预防、保护及通过冗余、容错、纠错的方式,并从最坏情况进行系统恢复的一种思维方法。 是利用启发式推理寻求解答,也即在不确定情况下的规划、学习和调度的思维方法。 是利用海量数据来加快计算,在时间和空间之间,在处理能力和存储容量之间进行折衷的思维方法。 计算思维的解析
三、计算思维认识和普及 (1)中国高等学校计算机基础课程教指委着力推动的工作 ① 2010.05:在合肥会议上讨论了培养高素质的研究性人才,“计算机基础 ”这门课程应该包含哪些内容,如何将计算思维融入到这门课程中? ② 2010.07:在西安会议上发表了《九校联盟(C9)计算机基础教学发展战略 联合声明》,确定了以计算思维为核心的计算机基础课程教学改革。 ③ 2010.09:在太原会议上决定了将合肥会议和西安会议中有关计算思维的 讨论形成书面材料,以“计算思维:确保学生创新能力”为主题向教育 部领导谏言和申请立项研究。 ④ 2010.11:在济南会议上,将在全国更大范围内,深入讨论以计算思维为 核心的基础课教学改革,并将太原会议的初步材料加以讨论和修改后正 式上报教育部袁贵仁部长,并“以计算思维能力培养为核心推进大学通 识教育改革的研究与实践”为项目,建议立项研究。
三、计算思维认识和普及 ⑤ 2011.06:在北京“以计算思维为导向的计算机基础课程建设”研讨会上 ,组织有关高校围绕“计算思维的实质”和“如何在计算机基础教学的 第一门课程中体现计算思维能力的培养”进行了广泛的讨论。 ⑥ 2011.08:在深圳召开了计算机基础课程教指委高层研讨会(第6次工作 会议),主要研究以计算思维为主题向教育部、科技部、国家自然基金 委申请立项研究计算思维事宜。 ⑦ 2011.11:在杭州召开了计算机基础课程教指委第7次工作会议,主要审 定第6次工作会议确定的三个立项报告,最终向教育部、科技部、国家自 然基金委提交正式申请报告。 ⑧ 2012.01:在深圳召开了计算机基础课程教指委第8次工作会议,会议期 间举行了“计算机素质教育论坛”,深入交流了大学计算机素质教育的 方方面面,探讨了计算文化、计算科学、计算思维在大学计算机素质教 育中的重要作用。
三、计算思维认识和普及 ⑨2012年7月在西安交通大学召开了全国第一届计算思维研讨会 ⑩2012年12月教育部批准了22个“以计算思维为导向的大学计算机基础课程研究”课题。 今年7月30-31日在哈尔滨召开全国第二届计算思维研讨会,发布“计算思维宣言” (2).计算思维课程在部分中国高校中正式开始实践 ① 2010年秋季,在上海交通大学 ② 2011年春季,在南方科技大学 ③ 2011年春季,在西安交通大学
(1)基本框架 ① 计算理论:可计算性与计算复杂性。 ② 算法和通用程序设计语言。 ③ 实践基础:计算机硬件和软件最小知识集。 (2)内容规划 ① 计算思维基础知识 * 基本概念: 什么是科学、思维、学科?科学与思维,理论思维,实验思维,计算思维。 * 科学发现的第三支柱: 科学发现的三大支柱(理论科学、实验科学、计算科学),计算科学的作用( PITAC 2005报告),名人名言(H. Davy, 化学家)。 四、大学计算思维课程总体框架
* 计算科学与计算机科学以及计算机学科: 什么是计算科学?什么是计算机科学?什么是计算机学科?计算机学科发展的 历程(EE、CE、CS、SE、IT、IS)。 * 计算思维: 什么是计算思维?例子、主要特征(它是什么?它不是什么?)、对其他学科 的影响(生物学、脑科学、化学、地质学、数学、工程技术、经济学、社会科 学、医学、法律、娱乐、艺术、体育、教育…)。 * 热身问题:20次猜测、七桥问题、国王的婚姻、汉诺塔、旅行商问题… ② 计算理论和计算模型 * 人类对计算本质的认识过程 - 计算手段应该器械化(算盘、手摇计算机、微分机、模拟机等) - 计算过程应该形式化(图灵模型) - 计算执行应该自动化(冯•诺依曼模型) 四、大学计算思维课程总体框架
* 计算理论 - 函数及其计算 - 图灵机 - 通用Bare Bones语言 - 不可计算函数与停机问题 - 计算复杂性(多项式与多项式函数,P类问题,NP类问题,NPC类问题) * 冯•诺依曼计算机模型 - 计算机体系结构 - 机器指令与机器语言 - 汇编语言程序的执行举例 - 虚拟机 * 计算学科中的数学概念 - 集合 - 函数和关系 - 代数系统 - 定义、定理和证明 - 必要和充分条件 - 证明方法 - 递归与递推 - 随机性 - 公理化证明 四、大学计算思维课程总体框架
③ 算法基础 * 算法的历史 * 算法的定义和特征 - 定义(求解问题的方法和步骤) - 特征(确定性、有穷性、可行性、输入/输出量等) * 基本的表达 - 自然语言、流程图、伪代码、程序语言 * 算法的设计 - 数值算法与非数值算法的设计,确定性算法与随机算法的设计 * 算法的分析 - 复杂度度量(时间复杂度、空间复杂度等) - 复杂度分析(最坏情况分析、平均情况分析) - 复杂度函数(上界、下界、精确界函数) 四、大学计算思维课程总体框架
④ 通用程序设计语言 * 目的与作用: - 体现算法的原理,表述算法的实现步骤。 - 不要求语言在机器上编译运行。 * 类-Algol语言: - 不要求变量类型说明等语句。 - 具有描述算法实现最基本的语句:赋值语句、循环控制语句、基本运算语 句等。 * Bare Bones基本语言 - 具有最基本的运算语句:清零、增一、减一、循环控制等语句。 - 具有通用性:能表示图灵可计算函数,根据丘奇-图灵论题,任何可计算函 数均可用Bare Bones语言编写程序。 四、大学计算思维课程总体框架
* Haskell纯函数语言 - 不同于描述计算如何进行的命令式(Imperative)语言(C、Java、ada、 pascal …)。 - 函数式语言(Functional Language)( Lisp 、Haskell、Ocam)是定义如何 将输入数据转换为输出数据的计算什么的语言。 命令式语言 Haskell语言 total = 0 for (i=1; i<=10; i++) sum[1..10] total += i 25 四、大学计算思维课程总体框架
⑤ 计算机硬件基础 * 布尔逻辑与门电路 - 布尔逻辑和运算 - 门电路基础 * 数制与运算 - 各种数制的转换 * 数据的存储与表示 - 存储容量单位 - ASCII码 - 原码、反码和补码 * 计算机组成 - CPU - 主存、外存和存储体系 - I/O设备 * 指令系统及执行 四、大学计算思维课程总体框架
⑤ 计算机硬件基础 * 布尔逻辑与门电路 - 布尔逻辑和运算 - 门电路基础 * 数制与运算 - 各种数制的转换 * 数据的存储与表示 - 存储容量单位 - ASCII码 - 原码、反码和补码 * 计算机组成 - CPU - 主存、外存和存储体系 - I/O设备 * 指令系统及执行 四、大学计算思维课程总体框架
⑥ 计算机软件基础 * 软件分类 * 操作系统 - 操作系统的定义和功能 - 操作系统的历史、分类和常见操作系统 - 竞争控制 * 数据库系统 - 数据库系统基础 - 关系模型 - 数据挖掘入门 * 办公软件简介 - Word - Excel - PowerPoint - Access 四、大学计算思维课程总体框架
梳理出课程知识单元中所涉及的计算思维 改变知识讲述的方法,对典型案例尝试利用计算思维概念 进行讲述,利用思维导图对知识进行归纳和演绎。 教学中适当引入计算思维的案例 如:图灵机、冯诺伊曼机 信息的表示 进程与调度、缓存 协议、共享、约定 算法的复杂性 关系 验证码 五、我们该怎么做
1.在教学方法上,突出实践能力和思维能力培养,通过教学方法的改革展现计算思维的魅力和基本思想方法。1.在教学方法上,突出实践能力和思维能力培养,通过教学方法的改革展现计算思维的魅力和基本思想方法。 2.探讨分层次的计算思维教学(理、工)。 3.探讨关于计算思维能力的考核标准。 五、我们该怎么做
1、支撑所有教学环节。课程资源主要有教学基本文件、教学内容设计、实施方案、教学资源和实验内容设计、实验平台等。1、支撑所有教学环节。课程资源主要有教学基本文件、教学内容设计、实施方案、教学资源和实验内容设计、实验平台等。 2、教学资源设计具有开放性和共享性。 建设开放实验平台,强化自主学习,培养创新计算思维能力 网上学习中心、教学资源共享平台、精品课程平台 3、课程的可利用共享资源。 大学计算机基础课程2012年批准为河南省省首批资源共享课程 4、创建校园计算思维氛围。 加强教学资源的建设