计算思维能力培养在程序设计课程中的落地实施
2017-05-12车敏安利张红梅
车敏+安利+张红梅
(空军工程大学 理学院,陕西 西安 710051)
摘 要:首先说明培养计算思维能力的重要性,然后针对军队院校课时少和信息资源相对不流通的特点,提出以培养学员计算思维能力为目标的资源优化重组,搭建在线网络课程资源,过程为主和结果为辅的评价机制,以参加竞赛促教促学的系列改革措施。
关键词:计算思维;资源优化重组;在线网络课程资源;程序设计大赛
1 计算机程序设计课程对培养学生计算思维的重要性
随着国家信息化进程的加快,信息技术的发展正在改变人们的生活、工作、学习、思维方式和价值观。2010年《九校联盟(C9)计算机基础教学发展战略联合声明》中,强调把“计算思维能力的培养”作为计算机基础教学的核心任务,加强以计算思维能力培养为核心的计算机基础教学课程体系和教学内容研究[1-2]。孙家广院士在《计算机科学的变革》一文中明确指出(计算机科学界)最具有基础性和长期性的思想是计算思维。中国科学院计算技术研究所研究员徐志伟总工认为计算思维是一种本质的、所有人都必须具备的思维方式,就像识字、做算术一样;在2050年以前,地球上每一个公民都应具备计算思维的能力。例如,计算机科学对生物学的贡献绝不限于其能够在海量序列数据中搜索寻找模式规律的本领,而最终的希望是数据结构和算法(自身的计算抽象和方法)能够以其体现自身功能的方式表示蛋白质的结构。计算机基础教学不仅要加强学生对计算环境的认识,还应该培养学生在计算环境下掌握问题求解方法,这是高校学生应用计算机技术解决专业问题的重要基础。另外,计算思维能力的培养还展现了计算机学科独特的思维方式,为将来创新性地解决专业问题奠定了基础[3-4]。
对于军队院校来说,程序设计基础课程学时偏少和信息资源相对不流通是共性问题;同时授课对象也都是大学一年级的非计算机专业学生,其计算机基础知识相对不足,理解计算思维也存在问题。如何在有限的学时中贯穿计算思维的思想,使学员在学习过程中对计算思维有更深刻的理解和体会,为今后的专业学习打下基础,是值得探讨的问题。
2 基于计算思维能力培养的教学模式
从面临的实际问题出发,无论是从教师“教”的方面,如课堂教学设计、教学内容及对象重组、案例精心选择、实践环节巧妙设计、在线网络课程设置、考核方式多样化等,还是学员“学”的方面,如课前预习、课堂讨论、章节练习、实践演练、算法训练、综合应用、参加竞赛等环节,都应开启基于计算思维能力的培养模式。
(1)针对学员信息化水平良莠不齐和学时少的情况,为达到好的教学效果,在教学对象和教学内容上都进行优化重组。
教员可通过摸底考试检测,把学员分为两种级别并采用分级教学,对于程度好的学员,减少基础知识讲解,注重解决实际问题训练,课堂更多采用讨论和研讨的模式,更倾向于发挥学员的主动性和创造性,让学员以组为单位,更多地进行综合问题的演练;对于程度相对差的学员,由于课时少的原因,在教学内容上进行优化重组。例如,对于难点内容指针,首先提出问题——为什么要采用指针,指针变量的实质是什么,这部分内容设置在变量介绍部分;再到剖析问题——采用指针有什么优点(数组采用指针引用,效率高),这部分内容就设置在数组部分;最后实际解决问题——怎么正确使用指针(不同指针指向不同) 部分。通过如此循序渐进的模式,学员可以深刻体会到指针部分内容如此设置的理由。
(2)引入竞赛案例,旨在拓展思维。
在数组部分,常规的教学案例无外乎排序和查找算法的应用,大部分学生对于这部分内容不能更好地拓展。我们在实际教学中,引入大学生ACM竞赛中很常见的大数计算实例,让学生知道对于超过计算机数据类型无法表示的数据,计算机又是如何进行存储和运算的;通过大数加减乘除的典型运算,帮助学生深刻地体会字符数组使用特点,同时对于常见迭代算法又是一次很好的应用体现,让学生感到计算思维是通过抽象和分解来处理庞杂的任务特性,最终真正明白“计算机不是什么神奇的魔法,教师才是真正的魔术师!”——英特尔公司董事会主席贝瑞特博士。实践证明将竞赛案例引入课堂,能很好地训练学生的计算思维能力。
(3)设计实践环节,注重综合应用。
实践环节应突现趣味性和综合性,如在分支结构中安排计算快递费用的程序进行计算思维训练。教学方法通常是陷阱教学法,通过故意把典型的、容易出错的代码写错来设陷阱;另一种就是在算法优化问题上设陷阱。教员通过设置这些陷阱吸引学生的注意力,然后引导学生思考,使其看到问题之外的问题、方法之外的方法以及没有联系的联系。这一系列问题的设置旨在培养学生理解计算过程的严谨性、编写程序的准确性和算法的高效性。这样的环节设置更有助于他们理解计算机这个工具的特点以及计算思维的内涵。
(4)针对信息资源相对不流通情况,搭建在线网络课程资源平台。
搭建在線网络课程资源平台对学员与教员沟通交流以及学员课后自主学习获取课程信息是非常必要的。在线网络课程内容共分为网络教材、内容讲授、讲授课件、上机实践、编程训练、综合应用、学习园地和程序人生八大模块,主要功能如图1所示。
这8个模块的内容中,前4个模块是必学模块,要参与课程的过程评价;后4个模块是选学模块,为拓展和深化知识应用而设置。
(5)采取多样化考核方式,以过程评价为主,以结果评价为辅。
对于程序设计基础课程的评价,我们综合运用多种手段,形成多元化的评价机制,主要考核原则是加强过程评价,弱化结果评价。课前预习在网络课程中有问题设置,学员必须回答基本问题;课堂上有问题讨论得分环节,以激发学员主动性;课后无论是在线下还是在线上均有作业设置,章节考核有题库支持。在实践环节设置不同难度的问题,加强学员操作和调试能力;在综合应用环节,学员以小组为单位完成一个综合项目,意在培养学员的创新和团队精神。这些环节的问题都是学员必须完成的任务,它们是过程评价的指标。期末采用无纸化考试形式,在自编的考试系统上,学员随机抽取试卷,阅卷有对应的阅卷系统,编写程序的题目必须全部运行结果正确才得分。过程评价占70%,结果评价占30%。考核方式多样化,意在敦促学员注重平时知识的积累及综合实践,对于实践性极强的程序设计基础课程,只有多次练习和实践,才能更好地体会算法的精髓及思维能力的训练。
3 以参加国内外程序设计竞赛为契机, 开启“选拔—培养—竞赛—反哺”人才培养模式
从新生入学后,教师就可以进行程序设计大赛知识的宣传,以俱乐部形式组织有潜力的学员进行人才的选拔;选拔后,成员利用课余时间在俱乐部内,由富有竞赛经验的指导老师举办专题讲座和进行竞赛辅导,以完成人才的培养;在学校范围内积极开展计算机程序设计竞赛、多媒体设计大赛等计算机学科竞赛,同时引导学员积极参加“蓝桥杯”计算机程序设计竞赛、ACM程序设计竞赛、中国大学生计算机设计大赛等国内外知名的竞赛;参赛后积极开展经验交流会,以反哺形式反馈到日常的教学改革中。通过此方式的人才培养,实现长期备赛、人才选拔、短期集训、赛前辅导、赛后反哺等环节的全流程和可持续发展。
4 结 语
基于计算思维能力的教学模式改革,是空军工程大学实际教学改革中所采用的实际措施。从近两年改革实践后的效果看,学员学习兴趣和动手实践能力显著提高,在各類竞赛中获奖的人数越来越多;教员的执教能力和水平也大幅提高,做到“教学相长”。目前,我国大部分高校已正式开始实践探索基于计算思维的计算机课程改革,如上海交通大学、南方科技大学、西安交通大学、深圳大学、哈尔滨工业大学等[5]。以计算思维为核心的计算机课程教学改革是一项复杂的系统过程,绝非一件一蹴而就、一劳永逸的事情,需要我们不断学习、研究、实践、总结和优化。
第一作者简介:车敏,女,讲师,研究方向为信息处理,cheminw@163.com。
参考文献:
[1] 冯博琴. 对于计算思维能力培养“落地”问题的探讨[J]. 中国大学教学, 2012(9): 6-9.
[2] 谭浩强. 研究计算思维, 坚持面向应用[J]. 计算机教育, 2012(21): 45-49.
[3] 孙丽君. 围绕计算思维培养的程序设计课程改革[J]. 计算机教育, 2013(5): 29-31.
[4] 洪雄. 从程序设计大赛看计算机公共课程建设改革[J]. 重庆理工大学学报(自然科学), 2013, 27(11): 137-140.
[5] 陈国梁. 计算思维: 大学教育的振兴, 科学工程研究的创新[R]. 深圳: 第八届CCF中国计算机大会, 2011.
(编辑:宋文婷)