C语言程序设计课程教学方法,项目式教学方法在C语言程序设计课程中的应用

【摘要】论文探讨了项目式教学在C语言程序设计课程中的应用。对教学项目的遴选,项目式教学过程的实施,项目开发过程的推进,项目式教学的制约因素,最终的教学效果进行了较为详细的讨论。教学实践表明,经过项目式教学过程,大部分同学都较好的掌握了项目开发流程,具备了一定的计算思维能力和程序设计能力。

【基金项目】本项目得到湖北文理学院校教研项目:JY2013068支持。

【中图分类号】TP312.1-4;G642.4 【文献标识码】B 【文章编号】2095-3089(2017)17-0002-01

《C语言程序设计》是我校电子类专业的一门重要的计算机技术专业基础课程,是该专业学生学习和掌握计算机编程基础知识的主要课程。本课程的任务是使学生从理论和实践上掌握C语言的主要知识,熟悉程序开发的主要步骤,具备利用C语言开发应用程序的基本能力。本课程在学生的整个知识结构中起到一个承上启下的作用,一方面学习本课程需要运用《计算机基础》、《程序设计基础》等课程的内容,同时它又是将来进一步学习嵌入式系统、DSP等课程的软件基础,处于十分重要的地位。

一、C语言程序设计教学现状

1.当前教学存在的问题语法基本掌握[1],但是动手写程序存在困难,缺乏计算思维。

2.教與学普遍重视语法,对编程实践存在弱化[2]。

3.学生被动式学习[3],学习主动性不高,不重视后续巩固和提高。

二、C语言程序设计教学改革对策

1.实践项目选择时考虑的因素

(1)课时有限,不能花太多时间在了解需求方面。

(2)学生对设计内容熟悉,不需要复杂的算法,但需要有设计性内容。

(3)项目模块划分比较自然,容易,不能在模块划分上过于分散学生精力。

(4)具有弹性,可以根据根据学生能力实现较多或者较少的部分,但不会影响项目的完整性。

2.备选系统

(1)学生选课系统;(2)教务管理系统;(3)图书管理系统;(4)超市收银系统;(5)高考招录系统。

3.教学项目的甄选考虑

课程组老师在拟题时,已经考虑了项目需求尽可能为同学们所熟悉,以上系统都是同学们在日常学习生活中接触的系统,但是由于司空见惯,同学们都没有对系统底层的运行及设计进行过深入的思考。

高考招录系统则不同,高考可谓是同学们人生中的第一等头等大事,高中老师、家长以及同学们经常会讨论高考招录的规则,同学们又都是大一大二的新生,对刚刚经历过的高考招录可谓是印象深刻,从需求了解的程度、项目的可设计性、模块化因素、项目的实现弹性等方面考虑,课题组最终选定了高考招录系统作为实践项目。

4.教学实践

(1)项目需求分析的教学处理

对于非计算机专业,普遍没有开设《软件工程》课程,对需求分析过程、软件设计过程,在C语言程序设计课程中虽有涉及,但只是介绍性质,要求同学们了解,并不要求同学们钻研和掌握。因此,为节约课时,课程组讨论决定,将需求分析结果以UML用例图的方式直接提供给学生,以免牵扯同学们的精力。同学们根据自己项目组的具体情况,实现其中部分或全部用例。系统需求分析的主要用例图如图1、图2所示。

(2)项目模块设计的教学处理

在课程教学中,结合基础教学内容,每次穿插一至两个用例,作为教学内容,首先采用提问和讨论的教学方式,诱导同学们积极思考,请同学们自行提出该用例的设计方案,然后加以引导。在教学中反复强调,教师所提供的设计,只是众多方案中的一种方案,而且是从教学的角度,进行了考虑和取舍。在具体项目中,还有很多其他的设计方案,比课堂的设计方案更优,鼓励同学们提出并优化自己的设计方案。

图1 考生用例图 图2 招办老师用例图

(3)项目编程及测试的教学处理

在每个项目组提出自己的设计方案之后,同学们即可进行分工,上机编程实现。教师在机房走动,随时解决同学们编程过程中出现的问题。在大部分项目组完成编程后,教师再在课堂上讲解参考的实现过程,同时对课堂巡查中同学们出现的共性问题进行讲解。

测试用例的设计则相对弱化,只是提醒同学们测试中需要注意的问题,以及测试中应重点关注的方面。

(4)后续作业布置及答疑的教学处理

由于课时有限,课堂讲解只能完成部分用例,在课堂上带同学们设计和实现部分用例之后,在完成某一阶段的授课内容后,都布置一个用例作为课后作业,要求同学们在两周之内完成(以项目组的形式)。作业交齐之后,教师在班级QQ群里上传参考设计和实现方案,供同学们参考。

三、结论

本次项目式教学实践已在两届2个班中试行,取得了良好的教学效果。调查结果表明,大部分同学都能接收这种教学方式。他们认为,在这种教学方式改革中,对项目开发流程有了较为清晰的认识,在项目组的团队合作中,项目组成员相互交流,不仅增强了自己的沟通能力和团队协作能力,大家相互讨论,不同的方案相互碰撞,比自己看书、上机练习能够有更大的收获,同时,编程过程中出现问题时,不再孤立无助,项目组成员一起解决难题,能够学到更多的东西,编程能力提高的更快。

参考文献

[1]洪秀金,覃桢.C语言教学改革研究[J].无线互联科技,2016(12):89-90.

[2]赵小敏.程序设计类课程项目式教学模式的研究与实践[J],计算机时代,2010(4):61-62.

[3]刘广平,陈立文,党子芳.案例教学与项目式教学比较研究[J],黑龙江教育.2016:1167(3),26-28.

作者简介:吉向东,山西临汾人,湖北文理学院物理与电子工程学院,高级工程师。1972.5,男,研究方向:软件工程、人工智能,邮编:441021,湖北省襄阳市襄城区襄城北街仁义巷9号。endprint

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值