高校程序设计课程教学改革与实践.doc

上传人:3d66 文档编号:1863940 上传时间:2019-01-13 格式:DOC 页数:11 大小:23KB
返回 下载 相关 举报
高校程序设计课程教学改革与实践.doc_第1页
第1页 / 共11页
高校程序设计课程教学改革与实践.doc_第2页
第2页 / 共11页
高校程序设计课程教学改革与实践.doc_第3页
第3页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《高校程序设计课程教学改革与实践.doc》由会员分享,可在线阅读,更多相关《高校程序设计课程教学改革与实践.doc(11页珍藏版)》请在三一文库上搜索。

1、高校程序设计课程教学改革与实践 本文针对目前高校程序设计课程教学方法陈旧、教学手段单一以及实践环节重视程度不够等现状,就“C程序设计”课程从教学方法、教学手段等方面的改革进行了研究和探讨,通过教学改革加强对学生思维方式和创新意识的培养,锻炼学生的应用能力,进一步提高课程的教学质量。 程序设计课程是计算机教育的基础与重点,是高校计算机专业及相关专业开设的计算机应用类的重要课程。通过该类课程的学习,不仅要求学生掌握高级语言程序设计的知识,更重要的是在实践中逐步掌握程序设计的思想和方法以培养学生解决实际问题的应用能力。因此,这是一类以培养学生探索创新精神和实践能力为重点并具有鲜明特色的课程。目前学校

2、开设的计算机程序设计课程主要有“C程序设计”、“Visual C+”、“Visual Basic”、“Java”、“C#”等。提高高校程序设计课程的教学效率,最大限度的培养学生的思维方式和应用能力以提高学生的综合素质是实际教学过程中急需解决的问题。笔者结合近年来从事程序设计课程教学的经验,对“C程序设计”等课程从教学方法、教学手段等方面提出如下改革并取得了较好的教学效果。 1课程的教学现状及存在的问题 (1) 传统的教学模式不利于发挥学生学习的主观能动性。传统教学过程多以教师的课堂讲授为主,教师是课堂上的绝对权威,这种典型的“教师中心”教学模式注重教师教的过程,却忽视了学生学的过程。师生互动性

3、差,学生学习的主动性和积极性未调动起来,不利于学生创造性的培养。现在,传统教学过程中的“教师中心”模式正逐渐被“学生中心”模式所取代,现代教学过程强调学生是学习过程的主体,而教师是学习过程的组织者和设计者。1 (2) 课程定位不够明确,教学培养目标针对性不强。课程定位和课程目标不够明晰,对于究竟要培养学生的什么能力,以及培养的目的、方法和手段是什么在各任课教师中还没有形成明确、统一的认识。教学培养目标的针对性不强,教学计划的制定缺少对行业市场的充分调研,对专业领域相关职业岗位没有认真研究与分析,目标定得过高,甚至不切实际。 (3) 过分注重学科体系的完整性和程序设计的语法规则。传统的教学模式过

4、分注重学科体系的完整性与程序设计语言语法规则的讲授,忽视对学生编程思路和运用知识的技能的培养,不利于提高学生独立分析问题和解决问题的能力。 2程序设计课程教学方法的改革措施 针对课程教学中存在的以上几方面问题,结合自身教学实践,构建以程序设计的基本方法和思想为主线,以语法和程序结构为核心,以对学生运用知识的技能培养和提高学习兴趣为目标的多方面改革措施。 (1) 强调算法的重要性。算法就是为解决一个问题而采取的方法和步骤,而程序设计的目的就是运用计算机语言描述需要解决的问题和解决问题的方法。算法是程序设计的根本,是程序设计的灵魂。“算法”的概念要起初就在学生的头脑中建立,教学过程中应尽量多引导学

5、生分析问题,调动学生学习的积极性并提高学习兴趣。 付沙(1980-),男,湖南长沙人,讲师,硕士,研究方向为网络与信息安全、计算机教育。 程序的设计过程、设计的思路(算法)是动态的知识,它培养的是学生的思维能力。学生只有将静态的理论知识转化为动态的思维能力,才能把所学的知识化为己有并应用到实践中。教师教学的重点应放在解题思路、算法设计、编程构思上,编程语言的语句只是表达工具。在课堂上老师可以从具体问题入手提出问题并引出有关的语法规则,然后通过例题讲解理解掌握其中的语法、句法要求,而不是孤立地讲授语法规则。 (2) 运用比较归纳法。高级语言程序设计课程中有很多的概念和语法规则,它们的使用非常灵活

6、也难以记忆。运用比较归纳法可以使学生获得的零散知识系统化,对知识理解得更深刻,掌握得更牢固。例如在讲解循环控制语句时,有while语句、do-while语句和for语句,这三种语句的作用都是实现循环控制,可解决同一个实际问题。可以对同一个题目运用三种不同的循环语句编写程序,通过程序的比较讲解让学生深刻理解它们之间的异同,然后再归纳出它们的语法区别while语句在语句前赋初值,先判定条件再执行循环体;do-while语句也在语句前赋初值,但是先执行循环体再判断条件;for语句在语句前或表达式中赋初值,先判断再执行;总结这三种循环语句各自的执行过程,在何种条件下它们可以相互替代,使用者可以根据需要

7、灵活选择。 再如,关于从1加到10的整数求和问题,如果都采用while循环语句来解决,但是给变量i赋予不同的初值,设置不同的循环条件和将循环体中相同语句的执行顺序颠倒,上述任何一个环节的变更都会影响求和的结果以及该程序循环的次数。如图1所示,两个程序的变量i的初值不同,循环条件不同,循环体中的语句相同且总数都为两条但是语句的先后执行顺序不同。第一个程序变量i的初值为1,终值为10,整个程序共循环了10次,每次循环都把当前i的值送往sum相加然后再使i的值自增1,最后sum的值为55;而第二个程序变量i的初值为0,终值为9,整个程序共循环了10次,但是每次循环是先使i的值自增1然后再把变化之后i

8、的值送往sum相加,最后sum的值同样也为55。通过运用比较归纳法,使得学生对循环语句的认识更系统,运用会更灵活。 图1while循环语句结构的两个程序 (3) 以学生为中心,遵循启发式教学原则。启发式教学是建立在建构主义理论基础上,以学生为中心,属于探究式教学模式的一种。为培养学生的逻辑思维和创新能力,在教学过程中教师应遵循启发式教学原则,通过各种教学方法和手段激发学生的学习欲望,让学生积极投入到学习活动中并学会发现问题、提出问题然后逐步解决问题。其中,最关键的是在教学过程中每一步都应与学生一起探讨,采用能够启发学生编程思维的教学方法,让学生在启发下思考,在思考中解决问题,从而掌握独立分析问

9、题、解决问题的方法,这对于程序设计课程尤为重要。2程序设计课程是一门逻辑性强、知识内在联系紧密的课程,教师在授课的过程中应该始终注意体现这种联系,使得新知识的引出有理有据,易于被学生接受和理解。 通过应用程序实例为线索展开教学内容,给学生一个比较实际的切入点,通过教师的演示使学生感觉容易入手,然后再通过将此实例不断修改、扩充,引导学生编写程序解决这个复杂的问题,对于学生在设计过程中一些不切实际的想法和做法给予及时的纠正。在启发式教学过程中,通过发现问题、提出问题、分析并解决问题、扩展问题、再解决问题等多个环节,在这个不断向前推进的过程中调动学生的学习热情,通过问题的不断深入和扩展,有效地拓宽学

10、生的思维,提高学生的实践能力,使得学生在课堂上成为真正的主体。3 (4) 采用案例教学法。案例教学法是教师根据课堂教学目标和教学内容的需要,通过设置具体案例将学生引入一个特定的真实情境中,通过教师与学生之间以及学生相互之间的双向和多向互动,积极参与分析、讨论、表达等活动,进而提高学生分析问题和解决问题的能力的一种教学方法。 在教学过程中采用案例教学法,根据课程的知识、能力结构要求,由任课教师精心设计若干个案例,案例要求由浅入深,将知识融入这些案例中,由任课教师指导学生自主分析案例,充分发挥学生的主观能动性和创造性,变传统的被动接收知识点为现在的主动去查找所需知识点。 3形式多样的程序设计课程教

11、学手段 (1) 多媒体教学为主,“粉笔+黑板”教学为辅助的教学模式。多媒体教学方式的优点是信息量大、图文直观,便于算法的动态演示,有助于增强学生学习的积极性,有利于优化教学过程,提高教学效率和教学质量。教学过程中,运用多媒体技术教学,有利于激发学生的学习兴趣,能发展学生的主体能力。同时借助于编译系统进行程序从编辑、编译、链接、运行到测试与调试的整个过程的演示,可增强学生对程序设计的感性认识。但多媒体教学有其不利之处,主要体现在幻灯片内容更新速度过快,学生有时反应不过来,跟不上教师的思路。同时,不恰当的幻灯片使用会分散学生的注意力,影响对主要问题的理解,不便于学生进行前后内容的对照,而传统的“粉

12、笔+黑板”教学手段恰好弥补了这一缺陷,所以采用多媒体教学手段为主,传统的“粉笔+黑板”教学辅助的模式既节约了传统的板书时间,以更加整齐、生动和可重现方式展现课程内容,又增加了信息量,达到了提高教学效率和增强教学效果的目的4。例如可以将概念、含义、知识要点及大量信息的程序代码制作成PPT课件,在课堂教学过程中做演示供学生增加信息量,简化传统教学无法板书的缺点,课堂教学也不再显得枯燥无味。但对于程序设计的分析和编码过程可以发挥传统教学手段的优势,进行课堂讨论、板书讲解、结合提问将问题层层剖析、层层深入,以达到师生互动的效果。 (2) 现场编程演示,列举学生感兴趣的实例。教师课堂现场编程演示,避免只

13、讲语法和理论,此举加大了教师授课的随机性和难度,但是却可以充分调动学生的学习积极性和主动性。让同学们参与程序编写、调试的全过程,打破编程的神秘感;通过实例化、可视化方式把抽象的概念形象化,演示复杂程序编写、调试和运行全过程,进一步激发学生的学习兴趣;编程实例采用贴近学生生活和实践的例子,让学生全方面考虑编程要解决的问题,将程序用于实践以增强其趣味性。 例如,在讲授“两个数进行交换”的算法时,教师可以以身边熟悉的事物打比方有A桶和B桶,A桶中盛放的是红墨水,B桶中盛放的是蓝墨水,要解决A桶和B桶的红、蓝墨水互换,我们就必须找个空桶(T桶),首先将A桶里的红墨水倒入T桶,然后将B桶里的蓝墨水倒入A

14、桶,最后将T桶里的红墨水倒入B桶,这样就完成了A桶和B桶的红、蓝墨水互换,如图2所示。从而,再回到两个数交换的问题上,学生便很快会理解。 图2“两个数进行交换”的算法 (3) 师生互动教学,提高学生的主动参与意识。在教学过程中积极营造活跃、宽松的课堂气氛,根据教学内容需要与学生情况采用传统板书配合演示课件、问答、讨论、总结等多种手段进行互动教学,避免只有教师讲、学生听的局面以达到更好的教学效果。针对例题引导学生拓展思维,鼓励学生介绍自己的方法与见解并适当的展开讨论。针对某一综合性的实际问题可以让学生代表以专题报告的形式汇报解题方法及思路,然后让有疑问的同学提问,师生集体讨论以解决问题。与此同时

15、,让学生充分运用所学知识参与编程,并及时向教师提出疑问,做到当堂课的问题当堂解决。此外,还可以挑选12名接受能力强、学习效果好又愿意为其他同学服务的尖子学生充当教师的助手,当学生遇到了问题恰好教师又不在或学生问题较多教师忙不过来的时候,请“小助手”为其他同学讲解、调试程序,这样,既提高了教师的答疑效率,又锻炼了尖子学生的能力,同时又解决了部分学生的学习问题,最重要的是提高了整个班级的学习气氛,可谓一举多得。5 (4) 实行课程负责制度,统一重点难点。关于程序设计课程的教学,每位教师在讲授时都有自己的思路、风格、个性和特点,也存在各自理解的所谓重点和难点,没有统一内容、统一重点难点去教学。针对上

16、述问题,可以选择一个授课经验丰富、专业知识过硬的教师作为课程负责人,由负责人制定教学大纲和教学实施计划,统一重点难点,做到统一教学、统一作业、统一考核。教学大纲的制定可以适当参考国家计算机等级考试或程序员考试的重点内容,使每位教师都能够有一个明确的教学方向和教学重点。授课教师定期进行座谈,交流各自班级的教学情况、学生学习情况与教学心得,根据实际情况对课堂教学内容和手段予以及时的调整。课程结束后由课程负责人会同任课教师一起总结该课程在本学期教学过程中的经验和教训,进一步为以后的教学工作作铺垫。 (5) 构建双向互动的网络化教学平台。网络化教学是基于计算机多媒体、网络技术的一种新型教学模式,通过网

17、络化教学平台使师生交流、学生学习不受时间和空间的限制。为了培养学生自主学习的能力,把课程的教学大纲、实验大纲、多媒体课件、模拟试题、经典程序源代码以及课外学习资料等教学资源放到网站上,作为学生课前和课后学习的辅导资料。同时,开发应用一系列网络化教辅平台,包括课程学习平台和测试平台,辅以配套的教学资源,为学生营造一个良好的自主学习氛围,将教学延伸到课堂外。这样学生既可以利用校园网上丰富的立体化教学资源自主学习,又可以通过互联网查询资料,还可以使用 电子邮件和BBS论坛等方式与教师进行课外交流。一方面为学生答疑解惑,满足了不同层次学生的学习需要,提高了学生学习的积极性和主动性6;另一方面,也满足了

18、教师教学的需要,使得教师和学生两者之间的关系更加融洽以达到更好的教学效果。 (6) 组织课外活动小组。开展课程设计、经典程序分析与设计等实践环节,组织学生组建程序设计兴趣小组,组织系部或校级程序设计大赛,并鼓励学生参加程序员、高级程序员等专业技术资格和水平考试,辅导学生参加各种编程竞赛,将课堂教学与课外竞赛考试实践相结合,提高学生分析问题和解决问题的综合能力。通过各种实践活动使学生得到锻炼,进一步激发他们的学习兴趣,培养问题求解和编程能力,有利于提高学生的探索和创新能力。 (7) 注重培养学生的创新能力和独立解疑能力。在程序设计课程教学过程中,要注重培养学生的创新意识和能力。不仅让学生会用,而且还要会学。如果学生只是学会用,难以有创新;如果学会学,就有机会让学生创新。在教学过程中,教师要教会学生使用帮助(MSDN Library)和通过在互联网上利用搜索引擎获得帮助,因为课堂时间及教材容量的限制,学生在学习过程中可能会碰到教师未讲授过并且教材上也没有的知识,这就要求学生依靠自己的力量去获得帮助。当他们独立解决了问题,成就感和满足感就会油然而生,从而大大激发他们的学习兴趣和积极性。 第 11 页

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1