APP下载

程序设计能力培养模式的探索与实践

2009-04-23耿国华

中国大学教学 2009年3期
关键词:精品课程培养模式教学资源

耿国华

摘要:本文分析了计算机程序设计能力培养的重要性。在多年计算机专业教学实践中,形成以程序设计能力培养为核心的四阶段课程体系,提出并实践“基础训练+提高能力+拓展层面+实践应用”的四层次程序设计人才培养模式,总结了以设计为中心的能力培养方法,实施“基础一技术一应用”的三层面立体化教材建设思路。同时,以“数据结构”国家级精品课程为中心,注重教学资源平台建设。

关键词:程序设计能力;培养模式;精品课程;教学资源

计算机科学是一种创造性思维活动,其教育必须面向设计。计算机的本质是“程序的机器”,只有懂得程序设计,才能懂得计算机,才能真正了解计算机的工作过程。程序设计在计算机学科知识体系中处于核心地位,对计算机专业的学生来说不仅是职业技能的培养,也体现着创造性思维的信息素质培养过程。程序设计也是有形表达抽象思维的方法,在程序设计过程中贯穿阅读判断、分析思考、工具利用、抽象表达、综合创造等多项技能,对计算机专业人才素质的培养至关重要。

面对信息技术发展和人才信息素质培养的需求,依据我们多年在程序设计教学实践的积累,实施对本科程序设计类课程的教学改革。贯穿程序设计基础、方法、提高、应用的信息素质培养;逐步形成了科学的程序设计课程体系、立体化的教材内容、系列化的实践训练教学模式;提供与教学特点相适应的多媒体课件;构建自主学习的资源平台,丰富学生课外学习;采用课内课外结合的教学模式,取得了良好的教学效果。

一、形成程序设计四阶段课程体系与四层次程序设计人才培养模式

依据专业人才信息素质培养的需要,在计算机专业本科教学中实施程序设计能力培养四年不断线的课程体系。四年中,第一年为基础训练阶段,开设计算机导论、C语言程序设计等公共基础课,培养程序设计基本技能;第二年为能力提高阶段,开设高级程序设计技术、数据结构等专业基础核心课程,以程序设计方法、数据与程序抽象能力培养为核心;第三年为应用环境拓展训练阶段,开设C++、Java、vc++等程序设计新工具课程,贯穿面向对象的程序设计新理念,提高适应新环境的程序设计能力;第四年为实践应用阶段,开设LINX、UML等选修课程,通过课程设计、科研训练、系统级深层次实践,提高综合应用能力。以课程体系为基础,形成了“基础训练+提高能力+拓展层面+实践应用”的四层次程序设计人才培养模式。

1基础训练

程序设计基础训练课程包括两类:一是面向非计算机理工类专业的公共基础课,二是面向计算机专业的专业基础课。它开设在大学一年级,是大学阶段系统认识计算机、应用计算机的入门课程。通过程序设计的词法、语法、使用方法的学习,要求掌握、体会使用计算机解决问题的基本技能。

2提高能力

程序设计能力提高课程开设在二年级,作为程序设计基础的提高。主要途径有两个:一是“高级程序设计技术”课程,重点学习典型的程序设计方法技术,便于学生训练掌握;二是“数据结构”课程,通过创造性思维的训练,重点突出数据抽象与程序抽象能力的培养。

3拓展层面

工具类别与应用环境的拓展课程,主要以选修课形式在三、四年级开设。在具有良好c语言程序设计能力基础上,展开其他新型程序设计工具层面,如开设Java、vc++、VB等程序设计类选修课程,增强学生掌握新工具举一反三、触类旁通的能力。同时,随着我国计算机应用水平的提高,国内高端市场份额的增加,熟悉和使用UNIX环境已成为计算机专业应当掌握的重要技术。自2003年以来,为计算机专业学生在四年级开设了“UNIX环境编程”和“Linux程序设计”等与高端市场接轨的课程,注重提高适应新环境的程序设计能力。

4实践应用

自2001年以来,我们在程序设计类课程中增加了实践课时,占总学时的1/3或1/2,加大了实践比例。在实验设计中,重视理论知识的重现,注重学生解决实际问题能力的培养;既考虑学生的总体基础,又考虑学生的个体差异;既考虑知识性,又考虑趣味性。因此我们采用层次化设计思想,把实验自下而上分为知识层、应用层和综合层三个层次。知识层注重对知识的理解和掌握,应用层重点在于巩固与应用,综合层则关注综合与创新。知识层为应用层和综合层的基础,综合层为知识层和应用层的提高和深化。学生在校期间还参加科研训练,在毕业论文设计中,大部分学生都可使用Vc++做系统级深层次应用。

二、编写“基础→技术→应用”的三层面立体化教材

教材是体现教育思想、教育理念的载体,是教学内容、教学方法与教学手段的集中表现。教材的科学性、先进性和实用性为知识的传授和能力的培养奠定了良好的基础。2001年以来,我们相继出版了4本系列化教材和翻译教材,融入我们在程序设计教学改革与实践的新成果,已应用于几十所大学程序设计类教学过程。普遍反映教材符合普通高校程序设计基础教学和专业教学的实际,效果很好。

1教材构成

由《计算机导论与c语言》、《高级程序设计技术》和《数据结构》组成了“基础学习一典型技术一算法应用”的立体化程序设计教材。

《计算机导论与c语言》内容体系突出信息素质培养基础训练。教材采用计算机基础、程序设计基础、c语言程序设计三大层面的内容框架。对在校理科学生进行严谨的逻辑思维能力训练,有助于提高信息素质,培养学生用计算机程序设计去解决问题。

着眼于总结与提高的要求,2001年开始我们相继编写了《高级程序设计技术》(3版),内容涉及高级语言程序设计的实用技术、高级数据类型概念使用以及常用的程序设计方法(穷举搜索法、递归法、贪婪法等)三部分,为认识程序世界提供新知。

《数据结构》教材采用抽象数据类型和面向对象的新观点,突出数据组织方法与实现技术构成,集中体现了分解、抽象和信息隐蔽基本原则。抓住抽象数据类型的中枢位置,以创造性思维训练为重点,强化程序抽象和数据抽象能力的培养。将教学内容分为基本概念、基本结构、基本技术三个层次,贯穿计算机科学中的一些重要问题的求解技术,符合认知规律。

我们翻译了国外教材《面向对象系统的测试》,借鉴国外课程先进教学思路,调整、更新和充实教学内容,采用双语教学方式,努力与教育国际化的培养目标接轨。

2教材特色

“基础一技术一应用”的三层面立体化教材体系完整,结构严谨,实用易学,符合教与学的需求;注重应用,强调实践,原理知识与应用技术紧密结合;内容先进,实用技术与新技术紧密结合,在介绍基本原理和应用技术的同时,注重引入一些新技术、新方法和新理念,反映出计算机应用领域的新成果。同时,教材中含有实训内容或配套实训教学资源,在配套实训中设计基础与验证型、设计与开发型、研究与创新

型的多层次实验内容,并设计了不同类型层次的练习与测试题。

三、强化以设计为中心的创造性思维能力培养

计算机程序设计能力的培养,对计算机专业学生的知识构建、技能提高和智力开发变得越来越重要。

对程序设计能力的提高来讲,编程序不难,编好程序不易。质的飞跃来自量的积累和艰苦的磨炼,所以良好的专业技能和创造性思维培养的关键在于实践。程序设计是高强度的脑力劳动,是创造性的艺术,不是听会的,其真知灼见是从实践中获得的,只有提高了科学思维,学会了程序设计的真本领,才会将知识与技术变成能力,应用自如。

以设计为中心的能力培养,要通过案例设计实现兴趣引导,通过课程设计加强创造性思维培养,通过项目训练提高应用能力,通过竞赛和毕业设计提升信息素质综合能力。

1案例驱动教学,实现兴趣引导

通过设计案例的演示,激发学生对所学知识的兴趣。在具有感性认识的基础上,循序渐进地总结解题思路、算法设计以及编程构思,再提升到理论高度。教会学生用适当的语言清晰地表达思考过程,在编写程序的过程中体会成就感、体会用计算机程序设计解决问题的技术与方法。强化公共层面逻辑思维能力的培养,突出专业层面的基本程序设计能力训练。

2指导一大运动量实践一反馈,加强创造性思维培养

“数据结构”的学习过程,是进行复杂程序设计的训练过程。技能培养的重要程度不亚于知识传授,难点在于让学生理解、习惯算法的创造性思维方法。针对“数据结构”技术性与综合性较突出的特点,提出并实施了“指导一大运动量实践一反馈”教学法。通过作业练习、课程实习、课程设计三个环节来实现实践过程,前者偏重于对课程内容的理解,后者侧重于软件设计综合训练,促进了专业学生逻辑抽象能力和创新能力的培养。

3项目训练,提高应用能力

通过“项目训练”方法,提出课程设计规范要求,突出关键技术要点,贯穿基本技能训练主线,精心设计综合性实验,体现加强实践能力培养的重要思路。数据结构课程设计是进行软件开发综合训练的第一门课,通过选用具有一定实用性的综合题目,采用学生个人进行和小组合作相结合的方式,通过问题分析、总体结构设计、用户界面设计等一系列过程,培养学生动手实践、合作研究、协作开发大型软件项目的能力,培养学生软件工程正规方法的设计与实现的能力,为专业技能训练提供基础。通过“项目训练”方式,将学生引入具体的项目研发,使学生有更多的主动学习机会,培养了科研能力。

4激发学生的兴趣力与创新能力

通过竞赛等多种活动,为学生提供展现程序设计能力的舞台,激发学生学习的主动性。已连续7年开展全校电脑文化节、网页设计大赛、计算机操作大赛、FIASH竞赛、计算机知识竞赛;学生参加省级国家级数学建模比赛,5人次获得国家级奖励,19人次获得省级奖励;在程序设计大赛中取得优异成绩,获得多项奖励,5人次获得计算机世界奖学金,获得省大学生挑战杯一等奖、国家大学生挑战杯三等奖。

四、加强精品课程教学资源建设

以“数据结构”国家级精品课程为中心,建设了基于网络的教学资源库、课程网站、网络考试系统和网络资源学习平台以及面向教师的多媒体课件和面向学生的课程资源网站。实现了网上课程资源的共享,使用效果好,发挥了精品课程的示范作用。

利用信息技术实现了课内多媒体教学、课外Web自主学习的教学方式,改进课堂、课外教学。

1课堂:多媒体课件助教助学

根据不同课程的特点,开发与课程内容和教学特点相适应的多媒体课件。c语言程序设计的教学课件就采用PPT形式,便于教师更新、补充课堂教学内容:数据结构课程的难点在于对抽象算法本质的理解,所以制作了全动画的多媒体课件,利用Flash开发,以动画的形式来展现算法;提供选件控制方式,便于教师对教学内容进行重组。目前有几十所院校使用我们的课件,学生普遍反映效果好。立体化网页式多媒体课件助教助学,规范了教学内容,使授课过程突出了知识点,增加了信息量。

2课外:自主学习的资源平台

网上提供了课后练习测试、同步训练、在线答疑、提交作业子系统。建设并丰富了“计算机导论与c语言”、“数据结构”课程网站,提供了教学大纲、电子教案、电子教材、课堂视频、多媒体课件、参考文献、联系教师、相关题库等教学资源,丰富了学生课程学习的层面。使学生通过计算机网络在线学习,并与教师在线交流,快速入门、提高,促进学生主动学习。

经过多年建设,取得了显著的效果:主持建设的“数据结构”被评为2006年度国家精品课程;主编出版4部程序设计教材,《数据结构》等2部教材列入国家“十一五”规划教材,《数据结构》教材获得陕西省优秀教材一等奖,教材及配套资源已用于国内几十所大学的本科教学,使用效果好;学生信息素质大幅度提高,多名学生获得国家级和省级数学建模比赛、程序设计竞赛奖励,毕业生的程序设计能力普遍得到用人单位的好评。

[责任编辑:余大品]

猜你喜欢

精品课程培养模式教学资源
新能源汽车技术专业教学资源开发
新型教学资源在综合课程中的应用
新型教学资源在语文教学中的应用
初中数学数字化教学资源的建设与应用
高等职业教育国家精品课程建设与应用现状的调查研究
服务地铁工学结合
青年农民创业人才培养模式研究
基于人才培养的高校舞蹈教育研究
高职院校创客人才培养模式研究
加强精品课程建设 促进教学质量提高