基于CDIO理念的《C语言程序设计》课程教学改革研究

2020-10-09 10:24谢彩云
电脑知识与技术 2020年22期
关键词:C语言程序设计教学改革

摘要:作为计算机专业的专业基础课程,C语言程序设计课程在高校计算机教育中起着举足轻重的作用,因此,对于该课程的改革一直是高校教师研究的问题。对于传统教学中存在的一些问题,本文根据CDlO理念,将有针对性地列举出来并做出相应的改进,并在教学过程中做出对比,结果表明,改进后的课程教学效果明显更好,值得大范围推广。

关键词:教学改革;CDlO理念;C语言教学

中图分类号:G642 文献标识码:A

文章编号:1009-3044(2020)22-0147-02

开放科学(资源服务)标识码(0SID):

自从我校成功升本以来,学校层面和院系层面对全校本科专业的建设就非常重视,学校先后推出了优秀师范课程的建设和院系重点课程建设等教学活动,作为计算机专业的第一门能够给学生打好基础的编程语言[1],C语言程序设计课程自然当仁不让地人选了重点课程建设的行列。借此机会,任课老师对该门课程的相关形式的改革应当也要开展起来。在当今计算机发展日新月异的时代,无论什么课程,相应的教学思路也需要紧紧跟上时代的步伐,比如教师可以利用各种各样的信息技术手段,让课程教学能够随时随地渗透到师生的学习当中,做得比较好的就有慕课( MOOC)、微课和利用这些线上资源进行课堂翻转等形式。我们可以借助这些学习形式来配合传统的课堂教学的模式,将课堂更加地丰富起来。因此,本文将介绍依托CDIO理念,以项目驱动和课程设计的方式来改变传统的纯课堂的教学方式。

1 《C语言程序设计》课程现状

(C语言程序设计》这门课程,是面向我院的软件工程、数据科学与大数据技术和教育技术学三个专业的学生来开设,经过多次课程改革和培养方案的修改,专业课程的课时安排都已经做出了一定的调整,除了教育技术学专业放在第二学期开设,其他专业则选择在第一学期完成学习,有助于学生学习其他更深入的专业课程。目前,三个专业的课时都是每学期68学时,周课时均为4节,考核方式为期末统一考试。

对于本门课程的教学过程,还是以传统的教师讲解为主,课程教学过程以机房上课为主,虽然实践的环境比较好,但是作为第一个学期开设的新专业课程,由于大一新生的入学军训,使得课程学时非常的紧凑,所以老师在讲解课程的过程中,难免存在为了赶进度而忽略了让学生实践的环节。在此,根据实际情况,总结一下目前在C语言程序设计课程的教学过程中存在着的一些主要問题。

(1)在教学过程中,课堂以教师为主体,对于知识框架和知识点的教授,学生们都是以教师讲解的内容为主,并且大多数的学生不会利用课余时间去接收其他的相关知识点,所以这种比较单向的输入式教学方法使得学生变得比较被动,最终,没有实际的实践能力来解决问题。

(2)在教材的选取方面,存在着选取的教材内容跟不上时代,大多数教材的内容都是围绕“C语言概述、C语言程序设计基础、C语言的三大结构、函数、数组、指针”等知识点来展开,缺乏一定的项目实例。所以对于计算机专业的学生,无法及时吸收新知识,在专业领域的学习上会有一定的滞后性,而且不能从完整的案例当中了解系统的开发过程。

(3)在考核形式方面,成绩虽然由平时成绩和期末卷面分数按一定比例组成,但是平时成绩的界定存在一定的难度,因为平时的实验题目统一,存在抄袭的可能性比较大,导致分数会不太客观。所以在一定程度上对学生的期末考试成绩也会有一定的影响。

2 CDIO理念的简介

CDIO理念(即工程教育理念,包含构思(conceive)、设计(design)、实施(implement)和运作(operate))最早由美国麻省理工学院和瑞典皇家工学院等4所名校发起,并联合全球23所大学合作提出及推广的教育教学理念[2]。

CDIO理念的教学重在强调学生能够在实践过程中获取相关的知识,推崇边学边做的教学形式,并以培养应用型人才为主[3],这一点非常符合我院开设的这些专业的要求,即要求学生毕业以后能够具备一定的实践能力,而不是仅限于纸上谈兵。在培养学生的要求中,除了强调“做中学,学中做”,我们还倡导以项目化驱动化的方式来进行教学,在学习一门课程之前,必须让学生先详细地了解该门课程能够做什么样的案例,必须让学生带着任务去学习。而不是盲从地且被动地接收知识点。

3 基于CDIO理念的《C语言程序设计》课程的教学改革

本文依托于学校的教学改革课题,在课程的教学思路上,围绕CDIO的教育教学理念,在尽可能的大范围了解学生学情的基础上,根据学生的特点制定符合学生学习的教学计划,以项目驱动的方式来引导学生的学习,在学习相关的知识点之前,通过一个完整的案例帮助学生全面地了解课程的知识点。本节针对上一节提出的教学问题,并按照CDIO教育理念中提到的观点,做出以下几点改进。

3.1教学过程重构

针对目前课堂上存在的以教师为主的现状,按照CDIO教育教学理念的要求,应该在教学过程中,强调以学生为主体,改变现有的“教为本”的现状[4-6],让学生以项目驱动的形式来展开学习。

本次教学改革的课程研究的对象以2019级大数据专业的学生和2019级教育技术学专业为对象,和2018级的相同专业的学生进行对比。在第一次课程教学过程开始时,就以一个具有代表性的例子:学生成绩管理系统,将该系统的完整功能按照软件设计的步骤进行任务分解并让学生对程序设计能够有一个大体的了解,而软件设计的步骤恰巧和CDIO教育教学理念的要求是一致的,其中的构思部分对应软件设计的需求分析部分,设计部分对应概要设计、详细设计部分,实现部分对应编码过程,运行部分则对应测试、交付与验收和运行维护部分[7-10]。

围绕完整项目的任务分配过程,有计划的介绍课程的知识点,比如在介绍比较难理解的指针、结构体和文件读取等知识点时,可以结合相关的项目来重点讲解。

3.2 设计符合学生特点的教材和教学计划

在选取课程教材时,应该参考本文所提到的任务驱动的原则,选取带有完整项目案例的教材,本院根据实际情况,所选取的教材是上海交通大学出版社出版的《C语言程序设计(双色)》,由吴军良、肖盛文主编。并且在制作教学计划的过程中,以完整的案例项目开始教学过程,在2019级专业的学生学习完整本教材中的所有知识点后,抽取了1周的时间让学生来完成课程设计,通过课程设计,让学生能够对软件设计的过程有一个较为整体的了解,并把所学的知识点全部串接起来用于完成项目的设计。

3.3 考核方式的改进

针对传统的考核方式存在的一些问题,应该把考核方式进行过程化,在平常的学习过程中,让学生开始积累完成项目所需的步骤,并分组完成,每组选取一个实践能力较强的同学担任组长,负责任务的安排和对组员进行打分,配合教师平常对同学们的观察,能够尽量将平时成绩给出一个较为客观的分数。并加入课程设计的分数,课程设计的最后阶段要求学生完成答辩,也是分组完成,通过每位同学对自己所在的组完成的部分功能进行分析演示,由组长和教师共同打分取平均分的方式给出这部分的成绩。课程设计的详细安排如表1所示。最后期末考试的卷面分也占一定的比例,由三部分成绩共同决定每位同学的最终期末成绩。经过与2018级同专业的学生进行对比,学生的综合成绩均有所提升,并且过程化的成绩积累体现了一定的公平性。表2给出了考核方式的比例分配。

4 结束语

本文将CDIO教育教学理念的四个主要思想和学生情况以及实际教学条件加以配合,并合理地運用在C语言程序设计的教学过程中,充分利用学校丰富的实验教学平台和实验室环境,让学生以项目驱动为导向,在做中学,学中做,不断地突破传统课堂存在的缺陷,形成一套满足于我校学生特色需求的实践教学方式。通过期末的课程设计方式,使得学生以毕业设计的形式来完成课程设计,包括:做项目、写文档、做PPT和答辩等,还有锻炼团队协作的能力,为今后参加工作做准备。

参考文献:

[1]谭浩强.C程序设计(第五版)学习辅导[M].北京:清华大学出版社,2017.

[2]于延,周国辉,李红宇,等.CDlO模式下C语言程序设计实践教学改革[J].计算机教育,2016(2):122-126.

[3]季厌浮,宣丽萍,宋莹莹,高校电类专业多元协同实践教学体系的构建[J].教学研究,2016,39(3):92-95.

[4]温涛,探索构建一体化TOPCARES-CDlO人才培养模式[Jl.中国高等教育,2011(7):41-43.

[5]郭小勤,曹广忠,基于项目的CDlO理念在课程教学中的应用[J].实验科学与技术,2010,8(3):83-85.

[6]朱春媚,周文辉,基于信息技术的C语言教学改革[Jl.现代计算机,2017(15):57-59.

[7]刘桃丽,张健.CDIO理念下《嵌入式系统》工程教学模式的探索与实践[J].教育现代化,201 8,5(49):85-88.

[8]谢修娟,史九林,李香菊.程序设计课中的CDIO教学改革[J].计算机教育,2015(14):27-30.

[9]詹秀菊,刘梢.基于CDIO的高级语言程序设计C课程教学改革研究[J].中医教育,2014,33(3):14-16.

[10]张蕾.基于项目化教学的“C语言程序设计”课程改革[J].计算机教育,2013(2):17-20.

【通联编辑:李雅琪】

基金项目:豫章师范学院教改课题(基于CDIO的《C语言程序设计》课程教学改革研究,项目编号:YSJG-2018-10)

作者简介:谢彩云(1987-),女,江西高安人,硕士研究生,研究方向:大数据分析、信息检索。

猜你喜欢
C语言程序设计教学改革
基于能力培养的“C语言程序设计”教学改革研究
大专院校“C语言程序设计”课程建设改革