吴锋宇
长沙市电子工业学校 410116
[摘要]编程在国民生活的认知度越来越高,编程在开发智力,培养逻辑思维中发挥很大作用,受得到越来越多人的认同与重视。编程课程进入中等职业学校课堂数十年,让更多的学生学会编程是专业老师努力的目标,在教学中对中等职业学校学生怎样做到行之有效,值得探究。
[关键词]中等职业学校;编程课程;教学
计算机技术已渗透到各行各业,各个专业(实际上,从包括小学到大学教育)一般都会开设计算机相关课程,很多特别是中等职业学校相关专业开设不少编程课程,例如:电子技术应用、信息技术、工业机器人等热门专业。电子技术专业开设有单片机C语言、PLC可编程逻辑控制、物联网开发软件等;信息技术专业各种编程软件是重要专业课;工业机器人专业有工业机器人编程软件等。编程听起来很高端,学起来却不是那么容易。为了提高中等职业学校编程课程的教学效果。从如下的几个方面来说明:
一、基础要扎实
中等职业学校编程课程开设的目的是为了教学生编程应用及思维逻辑。以单片机C语言课程为例,使用的教材目录如下图1所示,从中可以看出,前面三章学生要熟悉必要理论知识,为第四章的编程打下必要的基础。
图1
根据中等职业学校学生基础较薄弱、学习自觉性差的特点,要把基础理论设计成合适的问题,引导学生反复练习体会,加深印象。比如讲授单片机C语言第二章的C语言数据类型:“unsigned char”定义的变量取值范围?(答案:0~255)。 表示负数的数据类型,试举两例?(答案:char 或 int)。
二、吸取传统编程课程教学优点,认识传统编程课程教学不足
传统的教学方法都是循序渐进、层层铺垫,学会编程是水到渠成的事情,这是传统编程课程教学的优点。教师与学生想要的结果都是:编程代码一个一个字母,能自己从键盘敲出来。我们暂且称之为传统的编程学习思维。这其实也是精英教育的方法,但不适应于相对基础薄弱,习惯不太好的中等职业学校学生。对于中等职业学校学生的基础和年龄来说,编程算法都难以形成,这样学习编程,对于大多数中等职业学校生是很难完成的。给出一份正确完整的纸质程序,从键盘敲入电脑,熟练的程序员都不可避免不出错,这样学下去,打击了中等职业学校学生的学习兴趣,学习效果就可见一般了。综上所述:探索一种新的教学方式,改善中等职业学校学生学习编程软件的效果,就提上学校的改革教学工作的日程。
三、教师加强学习,了解、学习企业及程序员
为了提高中等职业学校学生学习编程软件的效果,要求教师平时要加强自主学习;通过上级主管部门及学校组织实施的专业培训,了解外面的世界,了解软件开发企业为了推广自己的软件,做出了哪些创新,了解真实企业里程序员的编程做法。
由此我们了解到大多数软件开发企业,为了鼓励开发者使用其软件,会提供软件开发工具包,英文简称“SDK”,是软件开发企业提供软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。许多SDK是免费提供的。应用此软件的企业程序员只需从软件开发企业获得软件开发工具包,或者直接从互联网下载,大大缩短了应用此软件的企业程序员开发过程。有时也被作为营销手段。例如,免费提供构建SDK 以鼓励人们使用它,从而会吸引更多人使用而产生商业价值。所以我们了解到很多企业程序员直接利用SDK或者互联网相关网站生成功能代码,整合到自己需要的程序代码,完成编程工作。
四、“站在巨人的肩膀上”
通过对企业编程开发的了解,启发是很大的。中等职业学校的编程课程教学,可以由教师整理好相关软件开发工具包(SDK),以及典型案例代码。布置给学生的编程任务,学生也仿照企业程序员,只需整合相关代码,学会修改与调试程序,就可完成编程任务。仍然以单片机C语言为例,教授此课程的专业老师,在教学时,采用新的教学方法,将软件开发工具包(SDK)和典型案例代码的使用方法教给学生,学生很顺利的掌握了程序功能和编程方法,布置给学生的编程任务,学生绝大多数都完成得很好。比如51单片机典型C程序案例闪烁、流水灯等,给学生讲解程序功能和编程方法后,学生们很快就学会了移植程序、修改程序,实现程序功能,创新教法大大降低了学习难度,又马上可以仿真和实验,实现了自己的控制目的,学生很满意。通过观察与询问学生,传统教法教学生,学习很辛苦,错误多,越错越不想学了,布置一个任务:学生常问:“老师,这哪里错了”。如果初学,老师也可以很快发现问题。学了一段时间后,程序相对复杂,看到学生编写的程序,再有编程经验的老师,也需要认真看一会。学生多了,老师精力有限,真头疼。创新教法教学生,基本框架都是对的,学习了流水灯的左跑,右跑只要稍做修改就好,再布置学生任务说,流水灯先左,后右,如此循环。学生领悟能力好的。几秒钟就做出来了,学生说:“老师,这太容易了。”,然后边上的小伙伴说“教我,怎么做的?” 老师一表扬,很多同学就会过来看,先学带后学,学习氛围带起来,学习任务完成了。教学方法的创新点在于充分了解软件开发企业、及企业程序员的做法,应用到教学工作中。借用牛顿说的一句话,“ 如果说我比别人看得更远些,那是因为我站在了巨人的肩上”。这个并不是偷懒和走捷径,我们是站在巨人的肩膀上去做改革创新。中等职业学校师生,也要放宽眼界,善于站在“巨人的肩膀上”学习好编程软件,善于创新。站在巨人的肩膀上,可以说是编程课程教学的创新点。为了更清楚的对比传统教学与创新教学,以单片机C语言为例,两种教学方法的对比如图2所示:
图2
五、实践出真知
就是积极实践,将编程课程应用起来,能形成较典型的产品,让学生学以致用。根据前述的思维模式,通过网上调研和现代企业培训后的了解,现在电子产品的设计,不全部采用一个一个分立元件,而是使用相关电子企业开发的各种功能模块,整合成自己的产品。例如湖南威胜电表公司,外购电力载波模块应用在自己的电表产品中,实现远程抄表的功能。我们中等职业学校生,也不一定要从一个个电阻开始设计电路,学习掌握这种模块化开发电子产品的能力,可以提高学习兴趣、降低学习难度,学生可以根据产品功能,将各个功能模块像搭积木一样,拼凑成自己的产品。编程也可以搭积木,以单片机C语言教学为例,用搭积木的模块方法做出了实用的产品,然后实现要求的功能,做成人体感应节水控制器应用在学校洗手间,节水效果明显。用电子模块做出了基于云平台的51单片机智能开关,可应用在学校电子专业学生教学中,学生通过创新的教学方法进行学习,很快就能做出属于自己的智能开关产品。
教是为了不教,教学效果的最好局面是教学相长,师生相互促进,互有感悟与进步。全体师生行动起来,积极思考,为实现中华民族伟大复兴贡献出自己的力量。积极探索一种适合中等职业学校编程课程,有益的教学方法,培育出一个个未来的大国工匠,我们的国家就会越来越强盛。
作者简介:吴锋宇(1978-01),男,汉族,湖南汨罗,大学本科,理学学士,中级职称,职务:专业教师,研究方向:?应用电子技术、单片机、物联网应用技术的中初级学习与运用。