小议“算法和程序设计”的一些教法

时间:2022-10-15 05:19:56

小议“算法和程序设计”的一些教法

摘 要:教好算法和程序设计意义重大,用建构主义教学思想指导教学理所当然,根据此理论结合本学科的特点,首先注重学生相关的基础知识,高中阶段的学生基础参差不齐,在此之前先进行相关先修知识落实是重中之重。其次,程序设计要求学生思维缜密并有化烦为简的思想,它自身的工具性和可开发性特别强,教学之中必须把如何培养学生的思维能力当作重要的内容。第三,有了算法和程序设计之后,信息技术大纲才算完整,课堂教采用的任务驱动是必须的,但任务的设计必须要根据实际情况更具针对性,课后作业的落实也非常重要。

关键词:基础;先修;程序严密;任务驱动;作业巩固

一、算法和程序设计内容的重要性

算法和程序设计的学习内容本学科的灵魂,也能充分反应出学生的相关知识文化水平和信息技术的能力,这是一个伟大的大纲变革,更符合社会和时代的发现需要,互联网时代,更加离不开这个程序设计的本质特征。据相关统计,技术学科在高校专业中占有率很高,仅次于物理、化学、历史,充分说明了技术的重要性。从原来片面强调技术的操作特点,现在变得更加合理和科学,程序是计算机的软件的主要工具,也是核心内容。从大纲的要求来看,高中阶段不是要人人会编程序,而算法和程序设计的学习,让学生更懂信息技术,更了解电脑的原理。从中得到更多的是程序设计的思想性,如程序的严密性,规范性,工具性。所以说,学好技术科很重要,学好算法和程序设计更加重要。

二、算法和程序设计内容的运用

自从算法和程序计的内容作为学业水平和高考的重要内容之后,我们一直在思考和实践相关教法的改变,目标就是使学习的效率更高,让学生更快速走进程序世界,了解程序设计的相关知识,灵活运用相关知识。

首先分析以前的教学特点:基于任务驱动方式的教学,这种方式很科学很实用,使学生更快速掌握一些软件的使用和技巧,同时也达到相关的教学目标,这样的方式更合适于操作性很强的电脑前,我认为,这种教学方法不能摒弃,还要继续发扬光大。任务驱动是一种基本的手段,但上好每一节课,尤其对算法和程序设计内容的教学时,理应更注重一些方面其他方面。

第二,现在整个高中阶段必修课知识体系统更加完整,从原来以操作为主的特点转变成现在的理论和操作平分秋色的特点。我们并非一承不变的去教学,在教学算法和程序设计的时候,自然而然尝试各种不同的方法和指导思想,使之更加有效。

第三,就我们学校而言,学生基A也只是一般般,学习方法和习惯也不怎么好,所以算法和程序设计这块内容反复讲,还是听不太懂,只是少数同学领悟能力强的懂。面对这样的情况我思考不能完全按照原来的方法上课,不然效果太不好。另外,有学考和高考之分,同样的算法和程序设计内容,要求不一样,学考者是要求掌握深度和高考者深度完不一样。

带着这些变化和问题,通过潜心教学研究发现,得出以下几点体会和感悟,与大家共享,并希望得到专家的指正。

1.算法和程序教学中,要注重学生的先修条件。建构主义告诉我,对任何知识的掌握是基于原来知识的建构。通俗一点讲,学习是要基础的,了解学生的基础,为薄弱学生的教一些基础知识是很重要的。那程序设计语言的学习需要什么样的基础呢?

(1)计算机的基本原理(一、二节课时间),VB中的变量、语句的执行方式等等无不关联着电脑的基本工作原理,也只有了解这些知识之后,对程序设计才会有感觉,如果直接教算法和程序设计,很多学生是听太懂,概念理解不了,思想也建立不起来。程序的设计是基于电脑这种特殊的设备而产生的,了解电脑基本工作流程,显然很重要。

(2)高一时候函数、命题等相关数学知识。VB中的函数和运算符合不就是数学程序吗?适当的时候,借助于EXCEL软件进行分析和教学。计算机是物理和数学为基石的学科,数学概念和方法在程序设计中一样重要,“磨刀不误砍柴功”,程序与数学思想密不可分,所以教学此块内容之前,有必要先好好学习。

(3)VB中的一些命令(英语)的中文含义,尤其是VB对像属性的单词。

当然先修条件是很多,要在教学不断地去摸索,计算机学科本身是物理和数学综合的学科,要想在此有所突破,理应在这两方面多下功夫。英语当然也很重要,一些英文缩写和术语的理解了相当于知识了一半。

通过,一年教学尝试发现,化一些时间先学习一些相关知识很有必要。程序和算法之难,难就难在基础不好,导致无法理解,老师口口声声说一些VB的知识,基础差的同学就是不懂,好像听“天书”一样。所以,掌握VB编程的先修知识和准备内容,是学好VB的一半。知其然、知其所以然,我想是无法回避的知识,那就是基础知识。

2.VB教学中要注重严密性和精确性。对学生来说,学习VB最大的好处并不是VB知识的本身,而是培养学生做事的严密性和规范性,也正如算法描述的三种基本手段:一是自然语言,二是流程图,三是计算机语言,而这三者最严密的最规范的当以属计算机语言。

对初学者来说,很容易把数学当中的书写习惯自然应用到VB中来,这样极容易范错,如乘号往往漏写。那些逻辑运算符也要搞错,作业一段程序必须正确无误地书写,否则就要出错或不能正常执行。

程序的书写,除了正确的语句和参数之外,还必须要有注释。注释的书写,不但是程序的规范之一,更主要让初学者更明白其中的含义。不管是作为教学实例还是学生的任务都要有注释总之,培养学生细心的习惯,能编写严密的程序,不但能掌握知识考出好成绩,更主要培养了学生的素养。所以教学中要无时不刻要体现严密的课堂设计和教学思想。

3.VB教学中要充分体现电脑的高性能的工具特点。有一个学生问我:“VB能做什么?”,我说:“你要VB帮你做什么?”,在以前的学习PS或FLASH软件的时候,我发现很多学生总认为,一些软件能为自己设计出满意的作品,结果发现学了那些软件之后,觉得没多大作用。本来,他们兴冲冲的来,就是想在网上或者别人面前借助于软件,能搞出一些漂亮的作品,结果却不如人意。所以学VB的时候,他们还是认为VB是万能的,会解决一些问题甚至是数学题。

为什么会出现这样的问题呢?我想我们平常教学中,还缺少一些基本思想的落实,电脑不是脑毕竟是一种工具,是一种高级的运算工具。当然电脑有一些基本功能,而大部分的功能靠人为地去设计相关程序,才能为我们做很多重复而不简单的事。

对我们计算机老师当然是心知肚明,而对那些学生未免没有这个意识,我们老师当然要把这种意识体现在教学之中,使他们转变过来。

例如,计算1+2+3……100的时候,想体现循环语句的作用,那到底样设计的教学呢?

学生在想:这不是很简单嘛(1+100)×50=5050一下子就出来,要什么程序设计?

于是,我就设计:1+2+……X的值是多少?

学生又在想:那也简单,讨论X是单数还是双数两种情况,还是用乘法计算。

上两种说都很容易使学生误导,在学生心里根本不需要电脑的,只需要数学老师的公式即可,也体现不出电脑的工具性。

所以,我设想用这么一个问题:(用VB程序设计语言编写一段程序,功能要求:输入任意一个正整数,电脑就能计算出相应的从1开始到那个正整数所有数字的和)这样的描述性语言,会让学生感觉到电脑和VB都是工具,而且要自己想办法去解决,再用程序执行。要不然,很多学生会直接认为,这是数学问题,那就应该列公式,进行解题。

虽然感觉是文字游戏,但对初学者来说,树立这种工具意识,很重要。前两种说法与最后一种说法相比,前者只是让学生有算法意识,而且后面更全面,不但要有工具意识和算法意识,并且知道学VB的意义所在。因此,在很多的VB教学中,我们老师更多的强调算法,即解决问题的方法。如果能将在初学VB时,把“VB是电脑的工具,电脑是人的工具,人就可以让电脑随时快速为人服务”这种意识印进去,那更好。

4.程序实例要有针对性。建构主义教育思想告诉我们:顺应是指外部h境发生变化,而原有认知结构无法同化新环境提供的信息时所引起的儿童认知结构发生重组与改造的过程,即个体的认知结构因外部刺激的影响而发生改变的过程。

一些枯燥的数学问题已经很难刺激学生的大脑了,所以选择程序实例很重要。不要随便拉一个有难度的数学题,去研究怎么设计算法和程序设计了。以前经常找一些任务驱动的教案,一般都针对多媒体等知识点。所以我也尝试了如何把VB知识做成一系列,有梯度的教学案例,以任务驱动方式进行教学那不是两全其美!

5.要求学生有良好的独立完成作业的习惯。信技学科虽然已经是很重要的学科,但是在学生眼里并不是很重要,所以在教学过程中做作业好像不太及时。当然这句话很极限性,我们学校属于二级重点中学,情况有点别于一级重点中学,教师应当好学生的示范。教师的表率作用对小学生的成长有着特殊的影响。学生的模仿性很强,可塑性大,教师要求学生做到的,不仅自己要做到,还要做得更好。学生是教师行为最严格的评论家,也是虔诚的模仿者。例如,要求学生书写端正,教师自己的板书就要认真,不能潦草。高中教师,担负着“桑树苗子从小育”的任务,因此,教师必须言传身教,一定要严格要求自己,即使是一个细小的动作,学生也会模仿。严于利己:教师要及时认真批改作业有时候,老师因为忙碌,作业没能及时批改,学生会失望,感觉没有被重视,做作业的积极性下降,那次作业就明显的差多了。人都是有惰性的,何况是学生呢?如果老师疏忽了,学生会更加放松自己的。所以,教师要严格要求自己,要及时认真地批改作业,给学生一个良好的印象。针对小学生忘性大的特点,笔者经常采取学生作业当堂和当面批改的形式,这样更能随时发现问题,及时查漏补缺,更有利于提高教学和作业质量。

对于良好的习惯,我国教育家陈鹤琴先生说:“习惯养得好,终生受其益,习惯养不好,终生受其累。”我国著名教育家叶圣陶先生说过:“教育就是习惯的培养。”培养做作业的良好习惯是良好学习习惯的基础,也是优化学习过程,提高学习效率的保证。

以上几点,是我对算法和程序设计教学以来的几点感悟,前面三点的想法尤其重要,在一定程序上解决了差生的困惑,当然有更多的思想方法去进一步研究和探索。

参考文献:

[1]周敦.中小学信息技术教材教法(第3版)[M].北京:人民邮电出版社,2014.

[2]张娟妙.教师教学的十大误区[M].长春:吉林大学出版社,2007.

[3]赖新元.发达国家教育特色与先进教育思想借鉴[M].北京:中国戏剧出版社,2009.

[4]李冬梅.信息技术教育课堂教学模式改革[J].中国电化教育,2001(3)

[5]伍文庄.“任务驱动”教学法初探[J].现代中小学教育,2002(3).

上一篇:培养高中学生英语学习兴趣的有效策略探析 下一篇:安徽省高校大学英语选修课课程现状研究