曾国伟,李欣宇,郑华升
摘要:根据工程力学专业的特点,在开设的程序设计语言课程(FORTRAN和C语言)教学过程中开展了教学实践和探索。针对程序设计语言课程教学现状、存在的问题,首先,优化课堂理论教学手段并培养学生建模思想,然后利用课堂实践培养学生语法规则,最后,注重上机能力培养。这些措施有效地提高了工程力学本科生的计算机编程和动手创新等方面的能力,同时也为工科非计算机专业程序设计语言课程教学改革提供了有益经验。
关键词:工程力学专业;程序设计语言;理论教学;实践教学
中图分类号:G642.0 文献标志码:A 文章编号:1674-9324(2017)41-0153-02
没有现代力学,就没有现代化工业的基础。工程力学专业是各工程领域中均有一定涉及的基础工科专业,该专业主要研究制造、能源、交通、建筑等领域的相关力学问题[1]。因此,工程力学是最为典型的“厚基础、宽口径”专业,根据学科特点,本专业基础课程特别突出了对学生力学知识、数学知识、实验及计算机软件应用与编制能力的培养,使他们成为以应用与发展计算机和实验技术进行设计分析和适应国际国内建设需要的跨学科复合型人才。
FORTRAN和C语言是目前力学领域应用非常普遍的程序设计语言[2-4],FORTRAN语言从字面上称为公式翻译语言(FORmula TRANslation Language),被广泛应用于数值计算和数据采集处理领域。C语言则是高度可移植的语言,具备丰富的运算符,被各个领域广泛采用并被选为计算机二级考试科目。鉴于以上优点,这两门语言被选为我校工程力学专业本科生必修课程。进校后第一门编程课为FORTRAN语言,目的是使同学们掌握程序设计的基本原理和方法,安排在大一第二学期开课。而C语言程序设计课程则安排在大二第一学期开课,目的是巩固程序设计的方法,并开拓自我学习程序语言能力。本文在总结教学现状和缺点的基础上,研究探索如何提高这两门课程的教学质量,培养学生的编程能力,从而提高学生自主创新能力。
一、程序设计课程教学现状与不足
目前的程序设计语言教学课程主要教学顺序如图1所示,可以看出,这种线性的教学模式对于学生从零基础到基本可以阅读程序起到了显著效果。但从历年来教学反馈情况来看,以上两门课程教学存在以下问题:
1.学生们感到概念抽象,语法规则太多,运行容易出错,线性教学造成同学们对于程序语言的理解停留在表面,无法真正实施到解决问题方面,自主编写与调试程序能力的提高非常有限。
2.教师感到授课时主从轻重层次感不强,教法比较单一乏味等,而实例教学,包括课堂例题和自选习题的效果均不能令人满意。对于工程力学专业同学来说,能否采用程序设计语言自己变成计算能力是至关重要的,然而实际情况是编程语言课程与力学课程基本没有建立联系。
二、改进措施与教学实践
1.通过建模强化归纳能力。通过分析近几年学生的就业情况,工程力学专业的本科生,有很大一部分是从事工程问题力学计算和分析工作的[5],这就要求学生熟练掌握建模方法。建模过程中鼓励学生大胆想象,启发学生模拟当时知识发生的情形,培养学生的建模兴趣和创新能力。
学习程序设计就是为了解决问题。在讲授内容上要有所侧重。理论教学课时非常有限,因此要抓住重点,忽略细节,在语法规则上不要花太多课时去一一描述,而把大量课时用在模型实例上。尤其鼓励学生以工程与数学问题为导向,以模型为方法,切实掌握将实际问题归纳为数学模型的思维方法[6]。
建立抽象模型的步骤如图2所示。可以看出,在分析问题时,需要弄清以下问题:(1)这个问题能否用程序设计语言解决;(2)这个问题需要哪些条件参数;(3)这個问题模型方程能否反映模型关系;(4)怎样求解方程中自变量与因变量的关系;(5)怎样验证模型。模型如果验证没有通过,就要回到第二步抽象简化重新推导。例如弹性力学中常见的各项同性材料三维应力应变关系模型,在FORTRAN和C语言编程时,必须以实验数据对比模型预测数据曲线,以佐证模型的合理性。
2.通过习题强化细节。课堂教学不是主讲教师唱独角戏,应适当增加习题练习,着重提高学生的自学能力。通过与学生的广泛交流,我们发现学生听讲后,仍然处于一种模糊的知识吸收状态,要想切实记住语法规则,是一个构造性思维过程。加强巩固的办法就是多实践,一般来说有两个办法。一个办法是课堂讨论,充分发挥学生的积极性和主动性,让学生经过一定准备后,站在讲堂上,梳理出本堂课的重难点;另一个办法是课堂作业,运用本课讲授的各种方法,结合程序设计语言实例进行少而精的课堂作业,所有同学必须参与,形成文字或者文档资料并上交。作业批改后进行讲解,重视学生的分析问题解决问题能力,适时引导学生对作业的反馈讨论。
3.通过上机强化实践能力。国内一流高校非常重视工程力学本科生的工程计算能力,归根到底就是实践和课程的无缝衔接。因此,在老师的指导下,学生把所遇到的工程问题进行简化、建模,再利用所学程序设计知识进行分析、计算,是本科生培养环节中的重要组成部分。程序设计课程上机课时偏少,将直接导致学生编程应用能力的下降。因此必须有针对性地进行上机培训,上机教学的要求是加强对学生计算机编程方法和技能的基本训练,培养学生调试程序的本领及独特的动手能力。学生要以认真态度弄懂弄通编译软件原理,正确实施上机过程、分析上机结果,要以科学态度,按大纲的要求完成每个上机项目。
在语法正确的前提条件下上机练习,尤其是正确编写、调试、运行自己编写的程序,会给学生带来满足感。学生发现,纸面上设计好的程序只是看上去很美,实际上机操作时会出现很多错误和警告。因此,上机之前,首先要安抚学生情绪,让他们明白即使是编程高手,也需要大量的调试程序工作,在程序调试中学习事半功倍,更是一种实际环境的模拟,对以后的工作和学习益处多多。此外,上机过程中,教师应加强巡视,及时解答学生的疑难问题,并督促学生认真保存源程序,写好实验报告,写出运行结果和上机体会。
三、总结
通过以上教学改革方法,让工程力学专业学生在学习程序中发展建模思想,注重语法规则,最后将计算思维融入到程序设计语言学习中,提高学生计算机应用和解决工程实际问题的能力,为进一步的学习与工作奠定良好的计算机应用能力基础,同时也为工科非计算机专业程序设计语言课程教学改革提供了有益经验。
参考文献:
[1]曾国伟,磨季云,李欣宇.工程力学专业有限元教学及其实践的教学改革探索[J].教育教学论坛,2015,(48):113-114.
[2]崔清亮.FORTRAN语言课程教学实践与探析[J].山西农业大学学报(自然科学版),2007,27(5):99-101.
[3]孟庆新.基于应用型技术技能型人才培养的C语言教学改革[J].电脑知识与技术,2016,12(31):127,130.
[4]徐炽.高校FORTRAN语言程序设计课程教学改革与实践[J].课程教育研究,2015,(19):250-251.
[5]杨坤,赵同彬,程国强,等.工程力学特色专业背景下人才培养模式的探索与实践——以山东科技大学工程力学专业为例[J].科教文汇,2015,(3):63-65.
[6]蒋政.计算机程序设计语言教学中引导学生建立数学模型[J].成功(教育版),2009,(9):160-161.endprint