项目驱动C语言程序设计课程教学改革与实践

2022-10-24 20:04王丽楠刘付勇乔静邹晨
电脑知识与技术 2022年26期
关键词:C语言程序设计项目驱动教学改革

王丽楠 刘付勇 乔静 邹晨

摘要:C语言程序设计是一门理论性、实践性和应用型较强的专业基础课,着重培养学生的项目实践能力、开发创新思维、算法设计能力,在产教融合背景下,将项目应用到C语言课程教学的各个环节,以学生应用实践能力培养目标为前提,逐步形成企业、高校双培养的新型培养模式,提供项目驱动-课程设计-理论教学-企业应用的递进课程体系及人才评价标准,实现学生项目实践能力质的飞越,从项目驱动课程改革的意义、课程项目融合、教学内容、教学方法、教学思想等方面进行了改革与探讨。

关键词:C语言程序设计;项目驱动;教学改革;应用实践能力

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

文章编号:1009-3044(2022)26-0157-03

C语言程序设计广泛应用于底层开发,相较于其他课程,要求实践性更强,传统的教学方式以知识点为核心展开层次递进教学[1],对于C语言程序设计,从C语言基础、数据类型、运算符和表达式、结构程序设计、数组、函数、预处理、指针、结构体、共同体等知识点递进开展授课,每个知识点联系一到两个案例,这样的教学方式造成现阶段C语言程序设计无法形成知识点的融合,知识碎片化。本文提出将项目贯穿教学的整个过程,以项目为基础,积极探索新的实践教学改革,从授课内容、教学模式、考核方式等方面着手,改变C语言课程教学效果差现状,达到高质量的教学目的。

1 项目驱动C语言程序设计课程改革的意义

为支撑C语言程序设计培养目标,从学生角度,让学生不仅仅掌握基本语句、控制结构、语句及结构化程序设计方法,还让学生通过项目驱动的形式和项目的深度融合,将程序设计的内容融会贯通,加强学生的计算思维能力,提高学生的能动性以及学习兴趣,发挥本科人才的作用。从教师角度,从项目实践探索中得到知识反馈,提高教学能力及科研能力,为企业和国家输送更多高素质人才。

1.1 应用型人才知识结构需求

在信息爆炸的时代,知识信息日新月异,一方面学生的知识储备要求不断提高及完善,另一方面企业更重视聘用者的即用性和效用性,目前高校的知识结构明显落后,教学设计没有整体性,与社会发展需求脱节,学生人才知识结构应该及时转变,将原本的分散的、零散的、碎片的、没有关联的基础知识加以整合[2],成为有逻辑的知识结构体系,有效解决完善缺乏系统知识结构的问题,聚焦社会行业发展前沿,根据项目需求,让学生真正地忙起来,将基础知识,实践知识,综合知识贯穿起来,结合实际,培养思维方式,知识内化,培养应用型高素质人才。

1.2 人才培养目的的需求

与传统的人才培养相比,新的人才培养模式更注重学生的团队协作能力、创新思维及职业素养和综合知识的应用能力,针对本科学生的认知个性特点,把项目引入课程设计中,培养学生的团队协作能力,能够独立思考问题,解决问题,实战软件开发以及数据处理分析工作,指引学生关注社会行业的发展,有效培养学生的即用性和效用性等,以项目为驱动,调整人才培养目的,为C语言程序设计课程注入新的内涵,真正做到“教、学、做”的一体化,既更新了课程的知识库,还增加了学生创新探索能力和就业率,也达到知识、技能、能力、素养的人才培养目的。

1.3 教师队伍发展的需求

教师作为教学科研的设计者,是提供学生学习的服务者,优秀的教育教学离不开教师队伍,目前,部分高校的教师队伍从高校毕业后招聘而来,没有在项目中实战过直接进行教学,教学仅限于“纸上谈兵”,实践能力不强,不利于高校教师队伍的发展。《中共中央国务院关于全面深化新时代教师队伍建设改革的意见》中对教师的专业化知识储备、教师的综合素质、创新能力提出了更高的要求,面对教师队伍发展的新要求,教师队伍应有提出课程改革方案的能力,将社会需求、项目、课程相结合,探索高效的教学方案,以项目为基础指导学生教学活動的同时也反哺教师教学反思,创建项目案例库,提高教育教学科研能力,打破理论与技术“偏科”现象,对课程有更深层次的理解[3],发挥教师队伍的作用。

2 C语言程序设计课程体系建设

在国家大力推进产教融合的背景下,高等院校工科的改革目标是培养实践应用创新型人才,具有扎实的基础知识、独立的思维能力、创新能力、综合应用能力,现有的课程体系结构只能够满足教与学,被动地接受知识,面对新的科技革命,人才培养目标的改变,需要对课程体系进行更新、重构,推进课程改革,融入前沿知识,掌握C语言程序设计课程的操作技能、数据处理方法、综合应用能力,真是做到“教、学、做”相融合。

2.1 项目教学设计

根据人才培养的需求,合理制定驱动项目,由易到难,根据知识点把项目分为若干个子项目,让学生在项目中不断地研究探索,知识反馈,最终知识内化,最终形成系统性知识体系结构。笔者以学生信息管理系统为例,将项目教学设计主要分为三个阶段,如表1所示。

第一阶段:基础知识构建,以项目需求为基础,根据C语言程序设计课程标准的内容要求,在教学中融入子项目设计,让学生感受到知识在实际中的应用,加深对知识层面的理解。

第二阶段:专业实训建设,以小组的形式分配项目内容进行项目实战,完成基础性实践和综合性实验实践,培养实践操作能力和团队协作精神,对所学知识进行反馈以及反思,掌握课程实际情况。

第三阶段:校企合作项目实训,将教学内容与企业行业紧密联系,培养学生学会分析问题的能力及解决问题的方式方法,对所学知识再反馈,了解相关企业行情,激发学生的创新能力。

2.2 项目实施

此阶段着重培养以学生为中心,发挥学生主观能动性以及创新思维,构建项目驱动-课程设计-理论教学-企业应用的递进课程体系,从而形成理论与实践-综合应用的素质培养。

(1) 更新教学理念。调研行业发展情况,经过课程培训,教师学习掌握C语言程序设计课程培养目标,老师之间交流学习C语言程序结构[4]、设计原理等相关知识,确定项目驱动内容,以理论与实践相结合为前提,让学生能够在项目中知识内化,并且起到关注行业发展,提高综合探索、创新的能力,独立思考问题,解决问题,实战软件开发以及数据处理分析、团队协作的能力,更新人才培养的教学理念。

(2) 分层次多形式掌握课程内容。首先以项目学生管理系统为例,分析项目设计结构并将系统分成五个子项目,分别从学生管理系统项目界面的开发,学生成绩录入、显示、查询、修改、删除、排序,学生管理系统中函数接口应用,学生管理系统函数接口等四个方面分别对应数据类型、结构程序设计、调用方法、数组等基础知识点,由教师演示讲解,由简到难分层次实践,子项目由学生个人独立完成,再通过文件类型指针、文件的打开、关闭、读写等操作学习,完善学生成绩管理系统,在子项目中学生形成对基础知识的内化。其次根据学生学习特点,合理分配小组,以图书管理系统为例,教师讲解较难内容,小组进行讨论分工完成项目模块训练,在综合项目中熟练掌握基础知识的应用并提高学生的团队精神,综合应用能力。最后聚焦行业发展,将项目与科研相结合。建立科研团队,以科研团队为教学主体,选拔组长,由组长负责团队内的任务分工,对地区行业发展进行调研,确定项目题目及内容,以问题为导向,由学生和教师共同完成项目开发,师生建立开放式的互动学习模式,发挥学生的主动性、创新能力、研究探索精神、团队协作精神。

(3) 鼓励学生参加学科竞赛。建立学科竞赛驱动下的实践教学激励机制是教学改革中一个重要的环节,对于优化实践教学过程十分重要。鼓励学生参加蓝桥杯、大学生设计大赛等全国性学科竞赛,激励机制能够充分调动和发挥师生在教育教学和人才培养工作上的积极性和创造性。

(4) 根据学生企业项目完成情况,提交阶段性报告,最终以小组形式展示项目成果,教师对经典项目成果归类总结,形成项目案例库,为以后教学提供素材,丰富完善教学内容。

2.3 多形式过程化的考核方式

通以项目为基础,根据程序语言设计课程的特点,建立技术能力,技术知识,技术思维[5]及行为方式三个维度的技术素养人才评价考核指标,结合学生实际,灵活采取考核评价方式[6]。

(1) 借助手机App 软件,“雨课堂”等形式课堂提问,学生在课堂教学中对综合性问题以小组形式探讨,教师全程引导最后对学生讨论的实际情况做出反馈评价,记录讨论结果,采用这种方式进行评价可以考查学生学习过程的专注度、参与状态、思维状态和合作状态,此阶段占考核15%。

(2) 根据课程教学安排和学习测评的要求,指定项目为记分平时作业,上课教师依据学生完成作业的次数和质量进行成绩评定,记分作业的次数不宜多,每门课程的记分平时作业一般安排 2-4 次,此阶段占考核15%。

(3) 以科研团队提交完成的项目,并且学生以汇报形式讲解给其他同学,注重团队合作精神,促进学生共同发展。这种自主学习后的再加工,学生不仅可以拓宽并加深对知识的认识与理解,还能受到启发以及创新思维的锻炼。采用这种方式可以考查学生思考的过程和学习的能力(提出问题的能力、解决问题的能力)以及团队精神,此阶段占考核30%。

(4) 根据学生参与竞赛成绩,对于参赛学生,无论获奖与否,只要提交作品均可在综合测评时予以加分,此阶段占考核5%。

(5) 根据教学内容中项目的实施开展,在课程结束前写出一篇小论文,考核学生对于知识的融会贯通与思考,同时加强学生科研、创新能力的前期培养,此阶段占考核15%。

(6) 借助PAT计算机程序设计能力考试进行统一组织在线考试,检测学生知识掌握情况,保证考试的标准化和评价的客观性,此阶段占考核20%。

在评价方法中注意个人技术基础技能,能力方向等技术素养的评价,注重技术素养的建立,对学生的学习过程量化评价,最终形成学生课程成绩档案。

3 课程教学改革结果

3.1 知识结构达到整合

教学改革之前,以教师为中心,学生缺乏对课程内容的理解,对教学内容掌握不到位,致使学生的知识结构分散,技术能力薄弱,项目驱动教学培养把枯燥无趣的程序设计跟生活实际问题相结合[7],通过项目驱动课程,将项目与知识点紧密联系,通过对学生管理系统项目、图书管理系统项目、企业项目的练习与实践,学生在项目中,加固课内知识的巩固,扩宽了专业内容的知识面,有深度和广度对原本分散的知识结构重新架构,达到知识整合的目的。

3.2 提高学习能动性及实践能力

建立科研团队,课程评价考核的设置,改变传统的单一的纸质考试形式,过程性的考核能及时发现学习中问题,加强了学生的参与度以及专注力,科学有效地检测学生的学习情况,产生积极的导向,激励学生研究探索[8],提高了学生学习能动性。学生团队通过对项目的分配,为开发探索提供前提,减少了学生偷懒的情况,提高了学生的实践能力。

3.3 提升教师科研水平

推动C语言程序设计课程改革,不仅培育出综合能力高的学生,教师科研团队通过直接参与项目实践和指导,为教师课题研究提供了素材,让教师关注学科的前沿问题,把行业项目融入学生教学中,改进教师的教学方法和内容,豐富了实验教学案例,解决了教师实践能力薄弱的问题,为教师科研水平成长提供了平台。

3.4 聚焦行业发展,提升人才培养层次

通过高校、行业、产业的融合,企业为高校专业人才培养提供了课程实践、体验工作的场所,充分发挥企业在培育中的专业作用[9],同时,C语言程序设计教学改革促进了高校培育机制的完善,把行业需求融入课程设计中,调整人才培养方案,重造结构性专业人才,更新教学案例及教学设计提升人才培养层次,构造特色课程。

4 结束语

积极探索项目驱动C语言程序设计课程教学改革,把项目和教学相关联,对C语言人才培养方案、课程教学体系构建、教学内容以人才评价方式等方面进行研究,有针对性对目前教学实践中存在的问题进行分析,提高学生的专业技术素养,增强学生学习能动性,也为教师的科研教学提供素材,达到培养社会应用型人才的目的。

参考文献:

[1] 覃杨.培养具有系统化知识结构的复合式应用型人才的思考[J].广西教育,2021(23):129-130,150.

[2] 潘飞,付景顺,李强,等.新工科背景下《C语言程序设计》课程教学体系改革探索[J].教育教学论坛,2020(14):163-164.

[3] 叶晓勤.新工科背景下工程训练中心创新人才培养探究[J].实验技术与管理,2019,36(12):274-277.

[4] 张连堂,林树青.应用型高校计算机相关专业C语言教改研究[J].现代计算机,2020(20):88-91.

[5] 朱莉娟.以能力培养为目标的程序设计类课程的教学研究[J].福建电脑,2011,27(7):45-46.

[6] 明兴祖,唐川林,吴吉平,等.机械大类专业实践教学体系与内容创新[J].实验科学与技术,2011,9(6):157-161.

[7] 毛嘉莉,刘敏,董文,等.大数据时代软件人才培养新模式[J].计算机教育,2016(5):36-40.

[8] 刘芝怡.“项目引领,任务驱动,案例主导”的C语言程序设计教学改革[J].教育现代化,2018,5(7):63-65.

[9] 朱梦冰,刘晶如,杨燕,等.应用型创新人才培养实践教学改革[J].实验室研究与探索,2016,35(7):186-189.

【通联编辑:王力】

收稿日期:2021-12-13

基金项目:新疆维吾尔自治区教育厅本科教育教学研究和改革项目(编号:PT-2021076) ;新疆科技学院校级自科项目(编号:2020PT025)

作者简介:王丽楠(1988—) ,女,河北沧州人,本科,实验师,研究方向为高等教育实验室管理、图像处理、数据分析;刘付勇(1985—) ,男,陕西镇安人,硕士,副教授,研究方向为计算机教育技术、智慧农业、人工智能与大数据处理。

猜你喜欢
C语言程序设计项目驱动教学改革
以“学生为中心”的《C语言程序设计》教学设计探究
依托工作室的软件工程实践教学研究
基于物联网项目驱动的嵌入式系统教学改革的研究与实践
基于“红色之旅”项目驱动的《调酒与咖啡》工作室制人才培养机制探讨
基于翻转课堂的《C语言程序设计》课程教学系统的实现与研究
浅谈《C语言程序设计》课程的教学改革
《C语言程序设计》课程的教学改革与实践
基于人才培养的技工学校德育实效性研究
现代信息技术在高职数学教学改革中的应用研究
以职业技能竞赛为导向的高职单片机实践教学改革研究