美国高中计算机教育对我国相应教育的启示
2021-04-23杨晓春蔡美玲胡子达陆玟冰
杨晓春,张 锦,蔡美玲,胡子达,陆玟冰
(1.上海成趣信息科技有限公司,上海 200000;2.湖南师范大学信息科学与工程学院,湖南长沙 410081)
0 引言
计算机科学是推动世界发展的技术、生产力和创新引擎,其思维方式、问题解决方式和创造方式极大地改变了我们的世界。随着计算机科学影响的不断深入,为适应基础教育的需求,21 世纪以来,中国和美国都发布了针对中小学教育的计算机科学框架。2000 年,我国教育部提出在中小学中普及信息技术教育[1],同时发布的《小学信息技术课程指导纲要(试行)》指出中小学信息技术课程的主要任务为培养学生对信息技术的兴趣和意识,让学生了解和掌握信息技术基本知识和技能,了解信息技术的发展及其应用对人类日常生活和科学技术的深刻影响。通过信息技术课程使学生具有获取信息、传输信息、处理信息和应用信息的能力,教育学生正确认识和理解与信息技术相关的文化、伦理和社会等问题,负责任地使用信息技术;培养学生良好的信息素养,把信息技术作为支持终身学习和合作学习的手段,为适应信息社会的学习、工作和生活打下必要的基础[2]。2017 年,我国发布《普通高中信息技术课程标准》,指出普通高中信息技术课程是一门旨在全面提升学生信息素养,帮助学生掌握信息技术基础知识与技能、增强信息意识、发展计算思维、提高数字化学习与创新能力、树立正确的信息社会价值观和责任感的基础课程[3]。
2016 年10 月,美国K-12 计算机科学框架(K-12 Computer Science Framework)正式发布[4],该框架在美国新版国家计算机科学教育标准的基础上描述了计算机科学概念和实践的主要集合。同年,美国在K-12 计算机科学框架的基础上发布了《CSTA K-12 计算机科学暂行标准》(简称“K-12 暂行标准”),其中规定了K-12 计算机科学课程的一系列核心学习目标。
针对两国的计算机教育框架,国内研究者进行了相关研究。卢蓓蓉等[5]介绍了美国框架的核心概念和核心实践,并提出美国框架对我国的启发是推进我国计算机科学教育应提高中小学计算机科学课程地位,在学前教育中恰当引入计算机科学教育,注重中小学计算机科学课程的系统性与实践性,强调重视计算机科学教育研究及其成果的运用。赵中建等[6]以美国框架为基础,梳理了计算机科学在美国成为一门正式学科的背景要素,同时详细阐述了计算机科学在美国K-12 阶段的核心概念和核心实践,介绍了美国中小学开设计算机科学课程的实施条件,并从宏观角度提出美国框架的面世是信息社会技术发展的必然需求,是美国教育倡导公平的一项举措;美国框架的面世符合作为一门学科存在的内在要素和逻辑,并且源自于政府、企业和教育三方的合力,对中国中小学计算机教育有一定启发。赵蔚等[7]通过解读框架和梳理核心概念、核心实践、实施过程,挖掘计算思维培养在中小学计算机科学教育中的重要性,以及科学、技术、工程和数学(Science,Technology,Engineering,Mathematics,STEM)教育在节约时间与师资、减轻学生学习负荷、强化知识技能等方面的作用,并在此基础上提出该框架对我国中小学信息技术教育的启示是:融合STEM 教育,拓展计算思维培养空间;多学段多年级联动,构建计算思维培养体系;创设仿真环境,完善计算思维培养过程。邱美玲等[8]深入分析和解读了美国框架的背景、特点和主要内容,并结合框架的特点和我国当前中小学信息技术教育存在的问题,总结得出我国中小学信息技术教育的努力方向,即注重对学生计算思维的培养,规范信息技术课程设置、评估与实施途径,提升教师专业发展能力等。谭静仪等[9]研究了两国大学计算机先修课程的基本内容及特点,并对比了中美两国在计算机科学原理课程评估、目标、内容等方面的主要差异,指出我国大学先修课的问题,即计算机课程在我国先修课程体系中地位较低、计算机大学先修课程体系尚未统一、高校间对大学先修课的标准及学分认证机制未达成共识、线上考试分数不具高说服力等。针对我国大学计算机先修课程制度的改革方向,谭静仪等[9]提出教育部门需要提高计算机相关科目的地位,使之具备先修课考试资格,并且明确计算机先修课建设中不同主体(包括高校、高中、教育管理部门等)的职责,特别是需要完善学分互认制度,理清大学计算机先修课程与高中信息知识体系之间的关系。
综上所述,研究者们均对美国的计算机教育框架进行了详细解读,同时结合我国中小学计算机教育的实际情况,提出了提升计算机课程地位等决策层建议以及发展计算思维等宏观理念,并对大学先修课程的发展提出了相应建议,但是缺乏具体的两国计算机教育的异同比较,以及高中与大学阶段计算机教育衔接的分析。不同于以上研究者的工作,本文尝试比较两国计算机教育框架、计算机课程标准细节的异同,并以算法和程序实现为例,详细分析两国高中课程标准中的具体差别,为高中计算机教育提出建议。本文还分析了两国高中计算机教育对大学计算机教育的影响和挑战,针对教育目标、内容和方式提出了相应建议,以促进高中到大学计算机教育的顺利衔接。
1 中美两国计算机教育框架介绍
1.1 中美两国计算机教育框架的目标和组成
美国的框架为K-12 学生提供了完整的计算机科学课程,并为课程实施奠定了基础。框架明确定义了学生在K-12 教育的每个阶段必须掌握的计算技能,从而使学生对计算机科学领域的“理解”和“能做”具有统一标准。该框架为标准和课程、专业发展以及计算机科学途径的实施提供了信息。
美国K-12 计算机科学框架[4]的目标是使学生们能:①批判地参与有关计算机科学主题的公开讨论;②发展为计算机科学知识和工件的学习者、用户和创造者;③更好地了解计算在他们周围世界中的作用;④在其他学科和兴趣中学习、执行和表达自己。
美国的框架包括如图1 所示的核心概念和核心实践,以适应和补充广泛采用的针对数学、科学和语言艺术等其他学科的教育框架,其是制定标准、评估课程、教师专业发展和课外计划的全面指南[4]。在美国,该框架还将抽象的和领域通用的思想应用于不同的核心概念,称为跨领域概念,这些跨领域概念提供了跨不同核心概念的主题联系[4],包括:①抽象:将过程或一组信息简化为一组重要特征以供计算使用的结果;②系统关系:系统的各个部分相互依存,并且出于共同目的而组织的关系;③人机交互:计算机技术的设计和使用,着重于人(用户)与计算机之间的接口;④隐私和安全性:隐私是隔离信息并有选择地表达信息的能力,安全是指围绕信息系统的保障措施;⑤通信与协调:计算过程的特点是不同代理之间为实现共同结果而进行可靠的通信。
Fig.1 The K-12 computer science framework图1 美国K-12 计算机科学框架内容
我国高中信息技术课程包括4 个核心概念和4 个核心素养。核心概念包括数据、算法、信息系统和信息社会;核心素养包括信息意识、计算思维、数字化学习与创新、信息社会责任[3]。我国的框架中未详细说明系统关系和人机交互这些跨领域概念,采用的名词是信息技术,而不是计算机科学。两者的差异在于:计算机科学是对计算机和算法过程的研究,包括原理,硬件和软件设计、实现及其对社会的影响。虽然在全球范围内,信息技术一词通常指计算的各个方面,以及其与当今社会和数字平台经济各个方面的集成。但在计算机教育体系中,信息技术被视为计算的一个子领域,是研究选择、开发、应用、集成和安全管理计算技术的系统方法,使用户能够实现其个人、组织和社会目标[10]。具体来说,信息技术通常与计算机科学重叠,但主要关注计算机科学的工业应用,例如安装和运行软件,而不是创建软件,而且信息技术专业人员通常具有计算机科学背景[4]。
1.2 核心概念和核心实践比较
如表1 所示,两国的核心概念描述中有许多共同特征,但美国K-12 框架的核心概念包括子概念,例如数据分析核心概念包括4 个子概念:收集、存储、可视化和转换以及推理和模型;算法和程序实现包含以下几个子概念:算法、变量、控制、模块和程序开发。在我国的框架中,核心实践通过信息素养的4 个部分进行解释,其中信息意识是指个体对信息的敏感度和对信息价值的判断力;计算思维是指个体运用计算机科学领域的思想方法,在形成问题解决方案的过程中产生的一系列思维活动;数字化学习与创新是指个体通过评估并选用常见数字化资源与工具,有效管理学习过程与学习资源,创造性地解决问题,从而完成学习任务,形成创新作品的能力;信息社会责任是指信息社会中的个体在文化修养、道德规范和行为自律等方面应尽的责任[3]。
Table 1 Comparison of core concepts in the framework of computer education in China and USA表1 中美高中计算机教育框架中核心概念比较
如图2 所示,计算思维是计算机科学实践的核心,由实践3~6 阐述,而实践1、2 和7 是计算机科学中独立的、通用的实践,可以补充计算思维[4]。每个核心实践都包括概述、毕业时需要达到的目标以及学生的发展过程。如表2 所示,即使在文字描述上有所不同,两国在核心实践的制定上依然有着相同之处。
Fig.2 Core Practices of K-12 computer science framework in USA(including computational thinking)图2 美国K-12 计算机科学框架的核心实践(包括计算思维)
Table 2 Comparison of core practices in the framework of computer education in China and USA表2 中美高中计算机科学框架中核心实践比较
2 两国框架对应的课程标准比较
根据以上框架基础,中美两国设计了相应的课程体系。
2.1 中美高中计算机课程标准
我国的课程是以模块设计的,见表3。其中,必修课程是全面提升高中学生信息素养的基础。选择性必修课程是根据学生升学、个性化发展需要而设计的,分为升学考试类课程和个性化发展类课程,分别包括3 个模块。选修课程是为满足学生的兴趣爱好、学业发展、职业选择而设计的自主选修课程。为帮助实施课程标准,教育部基础教育课程教材专家工作委员会[11]对普通高中信息技术课程标准(2017 年版)进行了解读,阐释了课程标准的相关内容,并为每一个课程模块提供了案例。
美国的CSTA K-12 计算机科学课程标准描述了一组核心学习目标,旨在为完整的计算机科学课程及其在K-12级别的实施奠定基础,标准融合了K-12 计算机科学框架的核心概念、子概念和核心实践的内容[12]。
2.2 中美课程标准中算法和程序实现比较
在我国的课程标准中,算法和程序实现属于必修课程模块1:数据与计算。我国的课程内容要求如下[3]:①从生活实例出发,概述算法的概念与特征,运用恰当的描述方法和控制结构表示简单算法;②掌握一种程序设计语言的基本知识,使用程序设计语言实现简单算法,通过解决实际问题,体验程序设计的基本流程,感受算法的效率,掌握程序调试与运行的方法;③通过人工智能典型案例的剖析,了解智能信息处理的巨大进步和应用潜力,认识人工智能在信息社会中的重要作用。
美国课程设计标准分为3A 级和3B 级。3A 级是适用于所有高中学生的计算机科学标准,3B 级标准是适用于学习完所有高中必学的内容后,还希望学习更多计算机科学课程的学生。
可以看到,两国的课程标准中都强调依据解决问题的需要设计和表示算法,掌握程序设计语言,利用程序语言实现算法以解决实际问题。如表4 和表5 所示,两国的不同之处在于:美国的课程标准在计算思维的培养方面,充分通过实践活动全面培养学生的程序开发能力。其核心目标的制定非常详尽和具体,每一个核心目标通过子概念和核心实践进行阐述,基于此标准也较易于制定相应的课程。核心目标强调了算法和程序实现的子概念包括算法、变量、控制、模块化方法、程序开发的方法论。基于这样的基础教育,未来学生无论成为计算理论科学家、设计开发计算工件工程师或消费者,都会对程序开发有着深刻的理解。此外,我国在必修课中要求学生理解人工智能,而美国只在专业课程或选修课程中要求学生理解人工智能。
Table 4 The core learning objectives of algorithm and programming in the 3A level of CSTA K-12 computer science curriculum standard in USA表4 美国CSTA K-12 计算机科学课程标准中3A 级关于算法和程序实现的核心学习目标
Table 5 The core learning objectives of algorithm and programming in the 3B level of CSTA K-12 computer science curriculum standard in USA表5 美国CSTA K-12 计算机科学课程标准中3B 级关于算法和程序实现的核心学习目标
3 两国大学计算机科学先修课程介绍
中美两国的课程体系均鼓励学校提供额外的中学计算机科学课程,以便感兴趣的学生更深入地学习计算机科学,为进入大学或职场做好准备。
3.1 两国大学先修课程介绍
中国教育学会联合高等教育出版社共同发起并组织实施了“中国大学先修课程(Chinese Advanced Placement,CAP)试点项目”。CAP 提供了计算机基础与前沿科目的基础课程,包括语言设计和大学计算机基础课程,但没有与之对应的考试[13]。北京大学考试院支持建设了中国大学先修课程(Advanced Pre-University Courses,AC),在全国部分中学选修课体系内开设大学程度的选修课[14]。美国的计算机大学先修课程包括计算机科学A(Computer Science A)和计算机科学原理(AP Computer Science Principles,AP CSP)。AP CSP 是在美国国家科学基金会、50 多所领先高中以及高等计算机科学教育者的大力支持下创建的,其介绍了计算机科学的基本概念,以及计算和技术是如何影响世界的。该课程专注于创造性地解决问题以及计算机科学的实际应用,为学生进入大学或职场做好准备。
该课程的目的是培养计算机科学领域的领导者,同时吸引那些缺乏必要计算工具和多学科学习机会的学生参与学习。AP CSP 以非常详细和特定的方式描述了知识点和技能,其围绕7 个概念展开:创造力、抽象、数据和信息、算法、程序实现、互联网和全球影响力。AP CSP 代表了大学对计算机科学的介绍,并影响了K-12 计算机科学框架的发展;K-12 计算机科学框架的许多作者和顾问都参与了AP CSP 的开发。表6 和表7 分别描述了AP CSP 和K-12 在实践和概念上的内容。
Table 6 Core Practices of AP CSP and the K-12 framework表6 K-12 核心实践和计算机科学原理课程实践
由加州大学伯克利分校开发的《计算的美与乐》(The Beauty and Joy of Computing,简称BJC)是AP CSP 课程之一。超过90 所大学表示支持该课程,因为学生们较容易获得学分[15]。AP CSP 考试采用包括多项选择和自由回答的笔试方式,重视学生对于程序设计理念的掌握,而不是细枝末节的语法知识。目前,我国还没有像美国AP CSP 考试那样成熟的方法,但可以学习借鉴相关评价方法,例如BJC课程为教师发展提供了材料和教学方法[15]。表6 和表7 的内容对于我国设计大学先修课程的内容结构和评价方法有一定启发作用。
Table 7 Core Concepts of AP CSP and the K-12 framework表7 K-12 核心概念和计算机科学原理课程理念
3.2 先修课程对大学教育的影响
大量研究表明,美国先修计算机科学考试的成绩与学生入学后的表现呈正相关,这意味着先修课程为后续大学学习打下了良好的知识、计算思维和方法论基础。而目前我国的先修课程侧重于传授知识,例如最新的大纲中包括了人工智能、物联网等新兴技术知识。课程评价方法包括笔试和上机测试,暂时无法为大学教育提供具有参考意义的判断方法[9]。我国需要建立一个更完善的计算机先修课程体系,改善课程目标、内容和评价方法,并重视发展学生良好的计算机思维能力,从而为其大学生涯奠定良好的基础。
除了大学先修课程,美国的CS for All 课程提供了高质量的项目促进高中计算机教育的发展,对我国教育工作者具有启发意义[16]。众所周知,计算机科学是促进世界发展的技术,也是创新的引擎。计算机先修课程除了可以帮助未来选择计算机相关专业的学生打好基础,对需要利用计算机作为工具的其他专业学生也有着非常重要的作用。因此,我国需要在高中计算机教育期间进行更多基础性工作。一方面,帮助学生奠定计算机科学知识的基础,另一方面培养学生运用计算机科学思维方式解决问题的能力。当学会使用计算机科学作为学习和表达的工具后,学生们将具备足够的计算思维能力,成为计算机技术的用户和创造者。目前我国高中计算机教育发展不平衡,导致大一学生信息素养差异较大,增加了大学计算机基础教育的难度。如果我国高中计算机教育能同时重视基础知识的传授和思维能力的培养,计算机先修课成绩便可以为大学教育提供具有参考意义的判断基础,也可以实现中学与大学计算机教育的良好过渡,降低大学计算机基础教育的难度,为学生迎接新的挑战提供更多空间。对教师而言,减少目前偏重基础知识的课程内容是大学计算机基础课教育的新挑战,例如从赋能其他专业的角度开设计算机课程,从而为非计算机相关专业学生的未来发展打下良好基础。
4 对我国计算机教育的建议
结合上述内容,本文认为,我国高中计算机教育在理念和方法方面有很多与美国体系接近的地方。与美国高中计算机教育相比,我国计算机教育可以进一步提升。此外,Papert[17]认为学习是一种重建,而不是知识的传播,他提到学习的有效性体现在学习者在从事某种活动的过程中构造有意义的产品上。笔者认为,Papert 的建构主义理论可以用来帮助调整我国高中计算机教育框架设计。
首先,调整计算机教育框架的宏观设计,使其更具有可读性和易理解性,并促进包括中学教师在内的更多人参与其中。例如使用易于理解的语言描述4 个核心概念和4个核心素养的定义。
其次,在课程标准设计上注重细节的描述,解决目前普通高中课程标准由于解释不够明晰、未考虑实际教学情况而存在的指导性不足问题。此外,为系统培养学生的实践能力,还需要增加程序开发的方法论内容,并增设软件开发和抽象实践环节的课程设计。
5 结语
本文基于计算机教育框架和课程标准,分析中美高中计算机教育的异同以及对大学教育的影响,得出发展我国高中计算机教育的建议。针对目前高中计算机教师面临的教育教学问题,未来笔者会尝试与高中教师合作探讨设计高中计算机教育教师指导,以弥补现有普通高中课程标准指导性不足的缺陷。同时计划为高中计算机教师提供持续性专业发展支持,如指导教师学习计算机相关课程以及开展教育教学讨论等工作。