首页 -> 2007年第4期

“DPI”教学模式在《C++面向对象程序设计》教学中的应用

作者:郭建东




  摘要:以建构理论为基础,基于作者多年的教学经验,提出了构建一个基于案例的DPI(Direct-Practice-Interact)的教学模式。文章对这种教学模式作了阐述,并应用到《C++面向对象程序设计》课程教学中。
  关键词:建构理论;DPI教学模式;C++面向对象程序设计;学习情境;教学
  
  建构理论认为学习过程是在教师假设的学习情境下,学生借助已有的知识和经验主动探索、积极交流,从而建立新的认知结构的过程。具体表现在学习目标、学习过程、学习情境三方面。教师是学生学习活动的促进者,在肯定学生的主体地位前提下,设计出符合学生认知水平的问题、案例,结合学生已有的知识和经验,引导学生进行概括、分析、探索、讨论、校验等对知识进行主动学习,并创建师生、生生交流的学习平台。
  
  构建基于案例的DPI教学模式
  
  在DPI(Direct-Practice-Interact)教学模式中教师构建的学习情境是以专业实践紧密相关的案例教学为主要特征,强调实践教学和学生交互学习为主。DPI教学模式采用了现代的教学软件及设备,如计算机(每个学生一台)、投影仪、多媒体课室教学软件等。因此三个阶段可连续完成,以达到最佳的学习效果。DPI案例教学模式中,教师的教学只起引导作用,引导学生通过案例实现专业知识的获取和实践技能的掌握,在实践中学习理论,引导学生在交流和探索中加深对理论知识的理解。
  D阶段代表教师引导。教师根据课前准备的课件及针对每个知识点的实例或案例进行讲解。讲解过程重在强调新知识点的应用。这一阶段教师在多媒体课室利用教学软件或Net Meeting软件进行音频视频同步讲解演示,构造一个通过案例教学进行理论学习的情境。
  P阶段代表学生独立实践。实践主题主要为一些案例实践及针对知识点的补充式、改错式实践。学生根据教师准备的实践材料进行上机练习,独立解决问题,通过上机实践加深对知识点的理解。这一阶段强调学生借助已有的知识和经验主动探索,培养学生独立解决问题的能力及将学到的知识点应用于工程实际的智能和技能。
  I阶段代表学生交互学习。在独立实践中,不同的学生对同一项目往往有不同的解决方案,在实践的过程中也会产生种种意想不到的问题。这一阶段,教师要对学生实践过程中出现的问题加以总结,并引导和鼓励学生将不同的解决方案与大家进行交流共享。通过交互学习拓展思维,培养学生发现问题、解决问题的能力,并激发学生互相竞争的学习热情。
  
  DPI案例教学模式应用于《C++面向对象程序设计》
  
  《C++面向对象程序设计》是计算机专业的主要专业基础课之一。通过这门学科学习,学生要掌握面向对象的程序设计范式,即设计程序的规范、模型和风格,最后要达到完成一个项目设计的目标。这门课程的概念比较复杂抽象,规则繁多,使用灵活。不少学生学习时感到困难。做实践练习时,由于实践内容与要完成的项目内容缺少关联和针对性,导致学生学习兴趣降低,学习效果很不理想。将所构建的D-P-I教学模式应用于《C++面向对象程序设计》课程教学,从教学效果及学生的反映来看是比较理想的。
  D阶段——多媒体同步的案例引导式教学在D阶段,重点强调引导式教学,并以案例教学贯穿整本书。教学目标是学生学完课程后能进行简单项目开发。在本课程教学中,以客户、供应商信息的输入、显示、比较、插入、查找、删除等为案例贯穿整个教学过程。在讲完数组后,讲解单个供应商信息的输入和显示的程序。讲完循环结构后,讲解能循环输入和显示供应商信息的程序。讲完继承、抽象类、虚函数后,通过案例讲解对供应商根据某些属性不同进行分类并根据不同类别进行输入和显示信息的程序。在讲完文件操作后,讲解的案例要把供应商信息存储到文件中,并分类统计不同供应商人数,按要求查询、显示供应商信息。学完链表、队列后,讲解当供应商人数无法预知时,接收信息并按次序显示或按特定要求显示(如前5位)、查询、插入、删除等操作的案例程序。整个教学过程结合课程进度由浅入深,以达到案例引导式教学的目的。D阶段教学还强调培养学生的启发式思维和分析观察能力。传统教学强调全面讲解知识点,如讲“for循环”,会把一些不带循环体的特殊结构形式也一起讲解。在D-P-I教学改革中,则把特殊形式的用法放到实践材料中,让学生从实践材料中发现问题并进行自主学习。对基础知识点的讲解还可通过实例程序营造学习情境,如讲“动态多态性的实现”时,先给出一个程序,建立一个基类的指针,在运行时指向派生类的对象。让学生分析程序并预测结果,调试后发现与预期的结果不符,从而激发学生解决问题的兴趣。这时教师可引进虚函数的概念,再讲授动态多态的实现方式。
  P阶段——培养学生的学习主动性和创建性P阶段学习,强调由学生多角度多侧面对问题进行思考和解决。这一阶段教师要明确学生掌握和巩固的知识点。并考虑针对这些知识点采用什么样的实践题型更能达到练习的目的。案例实践主题则以客户信息为主,贯穿整个实践学习。一般在D阶段进行案例讲解后,接下来P阶段练习要求学生在案例编程基础上进一步多角度进行编程。在讲完能多次输入和显示供应商信息的案例程序后,则要求学生用不同的循环语句实现循环输入和显示客户信息。对一些知识点的练习则可通过补充、修改程序或填空并上机校验,通过P阶段实践达到举一反三的效果,以培养学生多角度思维和创造能力。
  I阶段——构建交互学习情境,扩展思维,激发学习热情由于在P阶段强调多角度思维,学生的思路非常活跃,一个项目往往有多种解答方案,在编程过程中出错的种类也很多。针对这两种情况,在I阶段应进行交互学习。一是针对错误情况,教师引导学生寻找错误的原因及解决的方法;二是通过联机教学软件,在学生之间展示多种不同解题方案以扩展思维。交互学习的主要目的是扩展解题思路,通过竞争激发学习兴趣,引发学习热情。
  DPI案例教学模式改变了传统教学模式中以教师为主导、学生被动接受知识的教学模式,并强调了案例在教学引导中的示范性作用,授课过程提供即学即用的学习情境。在所有课程内容讲授完成后再集中一周时间进行项目实习以达到融会贯通的目的。最后的课程考核则以所完成的项目成绩为主,通过这样的教学改革提高学生的学习主动性创造性,同时通过交互学习平台激发学生的学习热情。
  
  参考文献:
  [1]皮连生.学与教的心理学[M].上海:华东师范大学出版社,2003.
  [2]陈琦,张建伟.构建主义学习观要义评析[J].上海:华东师范大学学报,1998,(1).
  [3]陈维兴,林小茶.C++面向对象程序设计[M].北京:中国铁道出版社,2004.
  作者简介:
  郭建东(1969—),女,硕士,工程师,主要研究方向为分布式信息系统、数据库。