APP下载

高职大学生编程能力培养的研究与实践

2014-08-30石利平

科技视界 2014年23期
关键词:程序设计语句编程

石利平

(广东女子职业技术学院,广东 广州 510450)

0 引言

程序设计类课程是许多计算机相关专业必修课程,也是重要的专业课程。培养学生编程能力是程序设计类课程的主要培养目标。根据多年的教学情况来看,学生在学习程序设计类课程时,不少人都认为课程枯燥、很难理解、编写程序很难甚至不想学。学生虽然学习了不少程序设计类课程,但毕业时编程能力还不是十分理想。如何激发学生学习程序设计课程的兴趣、提高编程能力,很值得探讨。

1 程序设计课程学习中需加强的几个方面

1.1 加强编程基本知识、基本语句语法的学习

扎实的基础知识是提高编程能力的前提。掌握好编程基本知识、基本语句语法是培养学生编程能力的基石。数据类型,变量的定义及赋值,各种运算符以及不同类型变量可以参与的运算、三种常见的算法结构:顺序、分支和循环等等,都是学生需熟练掌握的基本知识。三种算法结构也是程序初学者常接触的算法结构,灵活运用这些算法,是培养学生编程能力必备能力。要求学生掌握和透彻理解基础知识,这是提高编程能力必经桥梁。

1.2 培养良好的编程风格

良好的编程风格对于学生编程能力的提高是非常重要的,良好的编程风格,易于程序的阅读,便于理解,也利用程序错误的修正。源代码的逻辑简明清晰,是良好编程风格的表现之一。良好的编程风格可以主要从以下几个方面做起:

(1)命名含义鲜明的标识符。自定义标识符应见名知意,最好含有含义鲜明的文字。这些文字能准确地表示程序对象所代表的实体,便于自己或他人阅读理解程序,如定义一个用户名变量,可命名为userName。如果标识符采缩写形式,则应有统一一致的缩写规则,最好是能给每个标识符加注释,说明其作用、代表的实体、作用域等。

(2)添加适当的注释。程序注释是程序员日后对程序修改和维护的重要参考。适当正确程序注释也是帮助程序员读者理解程序的重要手段。例如用户自定义的方法或函数,在其前面应有注释块,主要包括这些说明:函数功能的描述,形式参数的说明,返回值的说明等。为每个类添加注释,说明这个类有多少个全局变量及私有成员,多少个函数,完成什么任务。为私有成员及全局变量也添加注释,说明其含义。对有一定难度的算法也添加注释,这也可以加强学生的理解,巩固知识。

(3)结构化的程序风格。程序的代码的层次应用采用阶梯式,同一层次的代码右对齐,下一级层次的代码比上一级代码右缩4 个字符位,即采用一致性的缩时,增强代码的可读性,也易于代码的排错。

1.3 程序调试能力的培养

编写程序过程中,错误是在所难免的,程序调试是程序设计中重要的一环。能准确找出程序错误所在并能快速改正错误,也是程序设计能力的重要体现之一。程序错误主要包括两种:语法错误和逻辑错误。语法错误在程序编译阶段系统会提示错误之处,相对较易修改。逻辑错误是指程序编译没有错误,程序能够执行,但不能得到预期想要的结果,一般是编程逻辑有问题,这种错误较难发现。

提高学生程序调试能力,尽快修正错误,可从以下几个方面做起:

(1)熟悉常见的语法错误。在授课中,教师可将平时学生易出现的程序设计故意设置在程序中,让学生真真切切看到错误提示,师生共同分析错误原因,修改错误,加强学生对错误的认识。对于初学者,我们要求学生将错误提示及修正方法记录下来,日积月累,学生解决常见错误就轻车熟路了。

(2)使用逐语句执行。即一条一条逐条语句执行,如果碰到函数调用,系统会进入到函数里面。利用逐语句不仅可以帮助学生找出程序语句的错误,也可帮助理解一些语句的执行原理。如分支语句、循环语句,尤其是多重循环语句,可以逐语句执行帮助学生理解语句执行过程。逐语句执行时,在编译系统提供的局部变量栏,可以清楚看到每条语句运行的时候,语句中包含的变量的数值的变化,这样可发现程序在某个语句没按自己的设计思路运行,帮助学生找出程序的一些逻辑错误。

(3)添加断点。当程序较复杂时,可在程序可能出错的地方或主要算法前添加断点,程序执行到此处时,暂时停下,用户可观察一些重要变量的值,也可以将程序执行转换为逐语句调试,这样可加快程序调试的速度。

2 教学做一体化模式下采用多种教学方法

程序设计类课程是实践性很强的课程,教学做一体化十分有利培养学生程序设计能力。传统上课方式是先上理论课,然后再到机房上实验课,这种教学模式易造成理论与实践脱节。教学做一体化,教学活动全部在机房,讲练无缝结合,根据需要学生可随时实践学习内容,深化学生对知识的理解,一些程序设计想法也能即时得到验证,也保证了学生实践时间。教学做一体化模式下,学生学习积极性也高,课堂气氛好,学生实操能力也有很大提高。

案例教学法、讨论教学法和项目教学法等多种教学方法相结合。教学案例源于生活实际,具有一定的代表性和趣味性,学生感兴趣,理解也相对容易。设计难度较大的程序时,引入讨论教学法。组织小组讨论分析程序流程,通过讨论,集思广义,学生思路也逐步清晰,利于培养学生编程能力。挑出有代表性的小组讨论结果,全班讨论,大家可提出自己的疑问或改进方法等,激发学生主动思维。课堂发言也记入平时成绩,使学习愿提出问题,敢于展示自己想法,这样课堂气氛也活跃,利于开展教学。好的思路给予及时的表扬,欠完善的想法给予及时的鼓励和引导。程序设计课的综合实训阶段,引入综合项目,如“班级管理系统”、“图书管理系统”、“仓库管理系统”等,与数据库课程相结,完成项目基本功能的设计与制作,提高学生综合运用能力,也加强对编程的认识。项目教学法中采用“边学边做,边做边学”的实操式上课,学生运用所学知识设计项目,也在项目制作中学习新知识,用知识做起项目,用项目带动学习,提高学生实际动手和编程能力。

3 提高学生编程能力三步曲

3.1 读程序,写程序运行结果

选择有代表性、典型的程序,与学生一起读,要读明白程序中每条语句的作用是什么、整个程序的作用是什么,输入或输出是什么,学习优秀的程序算法。读算法类同的程序,要求学生比较哪种算法更快,各程序优点是什么,这样可多激发学生思考,加强理解。在读程序过程,可为学生设置一些问题,思考能不能用其它方法同样实现程序功能,这样可加强对所学知识的理解,开拓学生思维,逐步培养编程思维。

3.2 模仿写程序

在读懂程序的基础上,积极鼓励学生模仿程序编写类同的程序。如学习了求1 至100 的累加和的程序,可要求学生求1 至10 的累乘,或求1 至100 中所有偶数或奇数的和等。模仿优秀有代表性的程序,不仅学习优秀程序设计方法,潜移默化地培养学生良好的编程习惯,也升华学生对程序算法、程序语法的理解,可谓一举多得。

3.3 自主编写程序

经过上面两个阶段的学习和探索,学生有了一定的编程基础。设计一些与学生生活联系紧密的题目,由学生自主编程。题目应由小到大,从简单到复杂,逐步增加难度,要达到一定的数量,学生练习多了,自主编写程序兴趣、自信心和能力就逐步培养起来了。

4 改变课程的考核方法

为了促使学生重视上机实践、主动学习和激发学生编程的热情,我们改变课程传统单一考核方法,采取多元化考核方法。课程考核成绩包括期末考试成绩(占50%左右)、平时作业(占25%左右)、课堂实操练习(占25%左右)等。课程的期末考试改变传统的仅理论考试,改为由笔试和上机实操两部组成,各占50%。笔试主要考核学生基本理论知识掌握情况及读程序写出运行结果的能力,上机操作主要考核学生补充程序、程序调试和自主编程能力,这样使学生重视程序编写练习,提高自主编程能力。

5 结束语

从近几年的教学实践看,重视基础知识的学习,加强良好编程习惯的培养,重视实践教学,结合教学做一体化教学模式,开展案例教学法、讨论教学法和项目教学法相结合,不仅能提高学生学习程序设计课程的积极性和主动性,也利于提高学生分析问题和解决问题的能力,提高学生编程能力,为后续的专业学习奠定基础。

[1]中国高等职业院校计算机教育改革课题研究组.中国高职院校计算机教育课程体系[M].北京:中国铁道出版社,2007.

[2]孙浩,何晓红,等.错误调试在C 语言教学中的应用[J].数字通信,2011(4):95-97

[3]侯春明.基于提升编程能力的高校计算机课程实训教改探索[J].中国电力教育,2013(28):163-164.

[4]章小莉,李晓东,等.也论“天下文章一大抄,看你会抄不会抄”[J].计算机教育,2009(7):72-74.

[5]靳红梅.如何提高学生的编程能力[J].中国校外教育,2011(4):167.

猜你喜欢

程序设计语句编程
编程,是一种态度
编程小能手
重点:语句衔接
基于Visual Studio Code的C语言程序设计实践教学探索
纺织机上诞生的编程
从细节入手,谈PLC程序设计技巧
高职高专院校C语言程序设计教学改革探索
PLC梯形图程序设计技巧及应用
如何搞定语句衔接题
作文语句实录