与专业应用案例结合的程序设计基础课

计划和方案,及时关注社会新闻与行业动态;其次,要与专业课教师、辅导员等密切联系与沟通,积极参与学生社团和专业活动,努力将自身打造为“专家型’’教师;第三,教师要积极在自身潜力与教学方面不断挖掘,努力钻研,善于发现,认真研究应用案例与各个专业之间的最佳结合点,努力作好基础为专业服务的教学工作。

广东石油化工学院是华南地区唯一一所石油化工特色院校,高分子专业是特色专业,该专业主要培养具有高分子材料与工程专业的基础知识和专业知识,掌握高分子材料的化学组成、合成制备、结构与性能关系和加工应用等全面知识的高级技术人才。笔者以高分子专业为教学对象,在深入了解该专业开设课程及实验目标后,设计出符合高分子专业的程序设计案例,以求抛砖引玉,为其他教师带来示范。

2)案例挖掘。

在挖掘专业应用案例中,可以参考情境概念教学中所应用的不同案例:物理学专业喜欢使用力学的例子讨论速度和加速度,热动专业可能讨论反应速率和动态均衡的例子,国贸专业倾向于汇率、税务等的数值计算。对这些例子进行分析和理解后,教师可以再进行抽象,从中提取数据规律。实际上,从这些专业的分支得到的案例和基础知识,很容易同计算的概念结合。

以高分子专业为例,在“分子的立体构型”这一节中提到“杂化轨道”的理论,并且杂化类型包括sp1、sp2和sp3三类,其中甲烷(CH4)属于sp3杂化(英语:sp3 hybridization),是指一个原子同一电子层内由一个ns轨道和三个np轨道发生杂化的过程。原子发生sp3杂化后,上述ns轨道和np轨道便会转化成为四个等价的原子轨道,称为“sp3杂化轨道”。

在课堂上,要求同学们编程实现描绘出“甲烷分子sp3杂化轨道”,值得一提的是,高分子专业的学生对“sp3杂化轨道”的概念早就熟知,教师不必浪费时间去讲解题目,实际上,很多时候,对于教师要求的编程任务,如果学生费半天劲还看不懂题目,又何谈编程呢?

因为我们专业开设的程序设计语言是VB,因此,以vB为例,程序的最终结果如下。

图1是一个动态演示过程。首先,引导学生如何实现4个椭圆、2个小圆、X轴、Y轴以及箭头的绘制,特别要注意圆心的位置,这就要用到line()函数和circle()函数;其次,如何让y轴左右的圆向原点移动,这就要用到timer控件来实现动画;最后,当左右的圆移动到原点那一刻,如何显示图1(b)的结果,这实际上就是图1(a)的所有圆都消失,也就是用到CLS方法,而在消失那一刻,再用上述2个函数在窗体上绘制出图1(b)的5个圆,由此程序设计如下:

Private Sub’TImerl_Timer()

Forml.Cls’每次都清屏,重新在新的圆心位置画圆,因此就感觉是圆在移动

Line(5000,1000)-(5000,9000):Line(1000,5000)-(9000,5000)

Line(4900,1200)-(5000,1000):Line(5000,1000)-(5100,1200)

Line(8800,4900)-(9000,5000):Line(8800,5100)-(9000,5000)

X1=X1+10’设置6个圆心位置,左边的圆圆心x坐标向右边增加,右边的圆圆心x坐标向左边增加

X2=X2-10

X3=X3+10

X4=X4-10

X5=X5+10:X6=X6-10

Circle(X1,5000),500,vbRed,,,0.5

Circle(X2,5000),500,vbRed,,,0.5

Circle(x3,5000),500,vbRed,,,0.5

Circle(X4,5000),500,vbRed,,,0.5

Circle(X5,5000),50:Circle(X6,5000),50

IfX3>4500 Then’当移动到原点后,时钟控件间隔设为0,表示不再移动,然后把所有图像全部清除,显示新的图像

Labe12.Visible=True:Timer1.Interval=0

Form1.Cls

Line(5000,1000)-(5000,9000):Line(1000,5000)-(9000,5000)

Line(4900,1200)-(5000,1000):Line(5000,1000)-(5100,1200)

Line(8800,4900)-(9000,5000):Line(9000,5000)-(8800,5100)

Circle(5000,5000),1 500,vbBlue,,,0.7

Circle(3000,5000),500,vbBlue,,,0.5

Circle(7000,5000),500,vbBlue,,,0.5

Circle(3500,5000),50:Circle(6500,5000),50

EndIf

End Sub

3)能力引导。

能力引导包括3方面:一是让学生学会成为“工具的改造者”,也就是改造他人编写好的程序用于解决新问题,形成新的功能;二是学会在已有程序上进行相关联专业知识扩展;三是让学生了解专业领域中计算机的局限性所不能解决的一些问题。

仍以“甲烷sp3杂化轨道”为例,对于能力引导的第一方面,可以让学生编程描述乙烯(C2H4)、乙炔(C2H2)的杂化轨道,其杂化轨道分别是spl和sp2杂化;对于能力引导的第二方面,可以向学生提出问题,比如编程实现输入某一物质,根据相应的公式计算其杂化轨道数以及杂化轨道类型,设计界面如图2所示。

由以上案例可知,程序设计和化工并不是风马牛不相及,实际上,在程序设计中,化学与化工的理论计算、实验设计、数据与信息处理、分析和测试等都能应用在教学案例中。当然,学生也应该看到计算机的局限性,如对于光谱和磁性(例如氧分子的顺磁性)等理论的描述,用程序设计则很难加以解释,这是能力引导的第三方面。

4)学生实践。

在教学过程中选择案例不宜太复杂,应该能对学生有各种启发,比如编程描述实验原理、实验步骤、分析和处理实验数据等,也激发学生不断地在自己本专业的实验中挖掘案例并加深对该实验的理解。为了使学生编程能更深入,而不是简单地实现一些数据处理,可以把学生设计的专业案例作为期末成绩的主要组成部分。

5)作品展示。

经过一个学期的上机实践,很多学生都设计出了优秀专业案例,如图3—7所示。

4 调查与分析

笔者所在计算机中心全体教师积极做出尝试,历经一个学期的程序设计基础课程教学改革,不断挖掘专业教学案例,深入到各专业中与教师和学生互动,力求能消除学生对程序设计的陌生感和抵触感,同时也促进专业教师的发展和深化专业课程建设。表1为学生问卷调查与结果分析。

从问卷调查的结果来看,学生普遍对专业结合教学是很欢迎的,至少在他们看来是学得其所,而不是疲于应付考试。

5 结语

作为通识课程的程序设计基础课程有其抽象和枯燥的特点,如果将案例教学与学生所熟知的专业背景相结合,而不是孤立地去讲授一门课程或者离散地讲解某个知识点,将极大丰富程序设计教学的内容,也促进学生对程序设计的理解和应用。笔者给出了具体的专业结合案例和教学方法,以求能为其他教师带来灵感和启发,为其他基础课程结合专业教学提供示范作用。

参考文献:

[1]何钦铭,颜晖,苏小红,等.“程序设计基础”课程教学实施方案[J].中国大学教学,2010(5):62-64.

[2]杨晨霞,涂风涛.任务驱动教学法在Visllal Basic程序设计教学中的应用[J].职教论坛,2012(18):79-81.

[3]海晓伟.项目教学法在“面向对象程序设计”课程教学中的应用研究:以C#程序设计为例[J].大学教育,2013(1):91-93.

[4]彭海云,马占欣.基于PBL+竞争机制的“程序设计基础”课程教学模式探究[J].实验技术与管理,2012(6):174-176.

(编辑:郭田珍)

推荐访问:基础课 程序设计 案例 专业