非计算机专业程序设计课程教学研究
2021-01-29陈剑敏南昌航空大学信息工程学院
陈剑敏 南昌航空大学信息工程学院
一、引言
在现今的学习和工作中,计算机是必不可少的工具。程序设计是普通高等学校理工科必须开设的计算机技术基础课程。在非计算机相关专业开设的程序设计课程一般是C语言、C++或java等高级语言程序设计课程,学好程序设计对学生通过全国计算机等级考试会起到关键的作用,更重要的是在让他们在以后学习和工作中使用计算机工具会有事半功倍的效果。程序设计课程具有较强的实践性,既要求学生掌握理论基础知识,也要求学生会实际编写程序与上机调试,执行程序。由于专业的不同,非计算机专业和计算机专业的学生存在较大的差异,而承担程序设计课程教学工作的大多数是计算机相关专业的教师。因此,开展程序设计课程教学方法的改进工作时,注意专业和受教学生之间的差异,在教学工作中对计算机专业和非计算机专业学生进行区别对待,对提高教学质量、训练学生编程思路和培养学生解决问题的能力有着重要的意义。
二、非计算机专业程序设计课程教学存在的问题
对非计算机专业而言,程序设计的目标是教会学生掌握高级程序的基本语法,在此基础上能结合算法解决简单的实际问题,为以后在学习或工作中使用计算机工具解决问题打下坚固的基础。因此程序设计的教学一般从两个角度来进行:程序语言本身的语法、结构和规范;常见问题的算法设计思路。从这两个角度入手来培养学生利用计算机分析和解决问题的能力。相比计算机专业而言,非计算机专业的程序设计课程存在以下主要的问题:
(1)程序设计课程的课时较少,而教学大纲上的课程内容又必须完成,因此课程安排相对较紧凑,很多教师为了追求教学进度,对学生的学习状态关注较少,对学生学习情况的了解仅限于有限的一对一上机指导和考试,形成了教和学分离的局面,大量的学生跟不上教学进度,周而复始,形成悲观厌学的学习态度。而程序语言设计课程的教师一般都是计算机相关专业的教师,和学生不属于同一专业,除了上课的时间之外,教师对学生时间资源的支配基本上没有话语权,寄望学生在课余时间进行补充的学习也相对比较困难。
(2)专业之间的隔阂和学生普遍具有功利性的学习心态,使得大部分非计算机专业的学生都对程序设计课程缺乏兴趣。目前,学生学习具有相当的功利性心态。对于他们感兴趣或者认为对今后的学习或工作有用的课程,会投入更多的时间和精力去学习。否则抱着应付老师和考试的心理去学习,这样一来学习的效果可想而知。对大多数非计算机专业的学生而言,他们可能不完全了解计算机程序编程,也不能真正理解学习程序设计的益处,因此学习缺乏主动性,学习的效果也事倍功半。因此,非计算机专业的程序设计课程的建设和教学改革,在教学活动中激发学生的主观能动性是很有必要的。
三、非计算机专业程序设计教学教改方向
如上节所述,非计算机专业程序编程课程教学改革的关键在于激发学生的学习兴趣和主观能动性。 教师在教学活动中消除专业之间的隔阂,使学生真正了解计算机程序设计,理解学习好程序设计可带来的好处,激发学生的学习兴趣。学生有了学习的兴趣,在学习上积极主动,学习效果会事半功倍,也会积极和教师沟通探讨,这样教师在掌握学生学习情况上能得心应手,可以随时根据学生的学习情况调整教学进度和教学内容,甚至可以和学生进行教学方式的讨论。学生的学习主观能动性得到大大提高,教师可以鼓励学生在课余时间积极学习,在一定程度上解决课时不足的问题。
四、非计算机专业程序设计教学教改策略
对于非计算机专业的学生而言,对程序设计课程缺乏兴趣的根本原因在于专业之间的隔阂,学习的功利性使得如果不能让他们理解学好程序设计的作用则会导致学习动力的缺乏,而课堂的内容一般都是模式化,除了基础的语法结构和规范之外,用的例子都是解决一些简单的数学问题,他们不能体会程序设计解决实际问题的作用,也不能理解程序设计和他们专业之间的联系,也就导致了学习兴趣匮乏引发的一系列后果。因此,在课程上引导学生的学习兴趣,有以下几点措施:
(1)教师尽可能了解所教学生的专业,在教学活动中结合他们的专业,设计一些专业学习中的计算问题作为编程实例,通过解决这些问题在讲解课程相关知识的同时来提高学生的学习兴趣,使得他们明白计算机工具和程序设计带来的便利,这要求教师要花费一定的时间和精力去找程序设计和他们专业之间的契合点,对于开设了程序设计课程的理工科非计算机专业而言,寻找一些基础的专业简单计算问题并不是一件困难的事情。另一方面,教师也可以通过加强对学生所学专业的了解,达到对症下药,因材施教的效果。
(2)寻求同所教学生所在专业的教师合作,让他们选择所授专业课程的计算问题或者课外作业中适合编写程序的,要求学生以计算机程序的方式完成,相比较单纯地计算解答这些问题,采用这种方式能让学生觉得更有意思,解决问题的成就感更大,对专业课程的学习也有好处。学生在学习专业课程和程序设计知识的同时也更能理解计算机和程序设计是切实可以为专业服务的工具,对计算机程序设计课程会投入更大的学习热情,也有更多的动力去进行长期的自我学习。
(3)上机实践让学生结合自己的专业设计计算机程序,把学生分组,让学习情况较好的学生引领其他学生把自己感兴趣的问题(尽可能是其专业的计算问题)设计成计算机问题,自己编写算法和程序并实现。在这个过程中,从问题的发现、学习问题的解决方案到上机实践都由学生自己完成,解决问题的成就感将极大地增强学生学习兴趣。在此过程中,教师在编程知识上指导并引导学生思考,形成良好的教学互动,教师也可以加深对学生所学专业的了解,对以后的教学工作大有裨益 。
五、非计算机专业程序设计教学教改的未来展望
从目前非计算机专业程序设计课程教学的实际情况来看,教改工作还将持续进行下去,教师必须改变传统老套的教学观念,形成更加先进的、完善的、符合当前需求的教学模式。教师需要随时关注学生的学习状态,通过教学方法、思路的持续改进,使程序设计课程教学工作能够始终能够吸引学生的学习兴趣,促进他们的学习主动性,满足社会对他们对计算机工具掌握的要求。在非计算机专业程序设计课程的教学活动中,只有不断地改进加强专业之间的联系,消除学生对程序设计的认知陷阱,让他们认识到计算机语言程序设计的巨大好处,从而激发他们的学习主观能动性,同时不断的进行教学方法改革,强化教学活动中教与学的相互交流,稳步提高学生的程序编写能力,为他们今后在学习和工作中使用计算机工具打下牢固的基础。