论文部分内容阅读
摘要目前,为了适应迅速发展的软件产业对编程人才的大量需求,高职院校在人才培养方面越来越重视计算机类课程教学的改革。本文以“综合储蓄业务平台”为例,对项目驱动法在C语言课程教学中的应用进行了探讨。
关键词项目驱动 程序设计 平台 模块
中图分类号:G426文献标识码:A
软件产业是二十一世纪的朝阳产业,发展迅速,是推动世界经济增长和社会发展的重要推动力。软件人才是产生这种推动力的主要源泉,软件职业教育人才输出的质量与数量将对软件产业的发展影响重大。为适应社会对人才的需求,高职院校在人才培养方面越来越注重技术的应用,以及教学与实践的结合,在计算机专业的教学中,设立了C语言和Java 语言等主干程序设计课程,而在非计算机专业的教学中也逐步设立了VB、C 语言等程序设计课程。并通过此类课程的学习,使学生初步掌握程序设计的基本方法,具备独立开发简单应用程序的能力。
然而,传统教学模式大都以教师知识讲授为中心,尤其是计算机语言类的课程,教师沉闷枯燥的理论教学充斥着整堂课,教学内容存在严重的时间滞后性、实践脱离性、主体被动性。在整个计算机教学过程中,学生始终处于被动地位,学生往往是听懂,但无法实际操作出来,导致学生的学习主动性和积极性受到压抑,同时也不利于学生创新思维的开发,不利于素质教育创造性人才的培养。
项目驱动法的引入,在很大程度上解决了这个问题。以C语言程序设计课程为例,如果在教学过程中引入实例,以具体的项目为驱动,把语法知识和基本概念放到实实在在的项目中去讲述,则可以避免这些问题,好的实例可以起到事半功倍的效果。如此,可以充分调动学生的学习积极性,让学生把理论与实践做到完美的结合与对接,训练学生编写程序的熟练度和规范性,增加学生实际软件项目开发经验,逐渐的,学生的综合分析和解决实际问题的能力也会有所提高,以达到高职院校培养人才的目标。另外,根据项目的难易程度,可以把教学过程分为不同的阶段,并针对不同阶段的教学特点,引入不同难度的项目。下面以“储蓄综合业务平台”项目为例,探讨一下项目驱动法在C语言课程教学中的应用。
1 需求分析
(1)系统需求简介:储蓄业务越来越走进人们的日常生活,银行储蓄信息化势在必行。在此背景下,我们要开发一套精简的银行储蓄柜台的“储蓄综合业务平台”,包括最常用的功能:开户、销户、存款、取款、查询等功能。
(2)角色分类:本软件的最终用户是操作员。
(3)模块划分:根据用户的角色及其功能需求,划分为七个组成部分。
(4)功能简介:主要针对每个模块的功能进行简要说明,每个功能主要包含以下几部分:模块名称,功能要求,业务流程,输入输出数据说明等。
(5)其它需求:需要学生到实际储蓄柜台进行实地调研,补充一下需求,然后仿照开户销户的操作,使用流程图和数据表来描述新调研来的需求。
在需求分析中,我们要引入问题,使学生明白即将要做什么,马上要做的工作在实际生活中能够解决什么问题,使学生带着任务走进课堂。通过一个典型的、有针对性的例子,把相关的基本概念、解题方法和思路传授给学生,同时让学生课余到生活中去进行实地调研,切身体会,结合实际情况,令学生形成深刻、形象、牢固的记忆,对启发思维、激励兴趣、提高学习效率起到重要作用。
2 系统设计
(1)系统总体设计:根据储蓄系统的功能需求特点,画出系统结构示意图。对各功能模块进行分类简述,并作出主要模块的调用关系图。
(2)主要应用技术:该系统中,储户信息使用结构体数组进行存储。在此,需要对学生进行相关知识的讲解。
(3)数据结构设计:该储蓄系统是一个简化的系统,所以不使用数据库系统,用结构体数组来存储用户信息,程序员主要对结构体数据进行操作,然后调用通用函数把该数组写入磁盘或从磁盘中读取。
(4)功能模块设计:模块分析、设计和代码实现是程序开发的核心所在,因此程序的模块设计在系统开发过程中占有非常重要的地位。在此对储蓄综合业务平台的功能模块进行具体分析和设计。
(5)其它:对照需求和设计,让学生体会每一个需求是怎么设计的,同时对读密码、金额、账号等部分进行优化设计。
在系统设计中,围绕项目设计,对学生进行关键知识点的讲解。学生如果只是被动接受教师在课堂上灌输的信息,就不能起到良好的教学效果。 必须给学生一定的压力使其产生学习动力。而项目进行到这个时候,因为学生是为了解决实际问题的有目的的学习相关知识,有实际的目标,所以教与学的效率就会提高不少。同时,我们可以在课程设计过程中引入协作学习,将班级学生分成由3到5人组成的多个小组。分组时根据学生对知识的掌握及学习能力合理分配,由教师选定组长,让已有一定基础的学生和基础相对薄弱的学生搭配,相互促进学习,再由组长领导小组成员相互协作,共同完成任务。为加强学生对知识的理解,并对C语言程序设计有更深入的认识。要求提交设计报告,并在项目结束阶段以小组为单位参加讨论并做深刻总结。讨论时教师从不同方面提出问题,检验学生在课程设计过程中的所做的工作和学到的知识,并鼓励学生自己提出问题,自己解决问题。另外,C语言程序设计本身是编程语言的课程,所以必须强调编程能力的强化训练。要想提高学生程序设计开发能力,在项目中保证学生的代码编写量是很重要的方法之一。
3 系统实现
(1)核心功能部分:首先分析系统的技术要点――数据文件记录结构体和文本文档的操作,在此部分,主要学习C语言结构体类型的定义,定义结构体类型变量的方法,结构体类型变量的引用,学习使用C语言typedef定义类型,使用C语言文件操作库函数实现基于流式文件的读写操作等。
(2)整体功能实现:实现项目的主体部分:主函数,开户模块,销户模块,存款模块,取款模块,查询模块等。
(3)软件测试:通过对储蓄综合业务平台系统的测试完善该系统。
(4)其它:参考已实现的代码部分完成未实现的代码部分,在存款模块中增加存款金额不能为“0”和负数的判断代码。
在项目的主体――系统实现中,我们要完成所有相关主体知识点的学习,然后引领学生逐个实现系统的各个模块,此过程的关键在于要留给学生充足的操作时间,让学生大胆去尝试,通过小组讨论学习集思广益、开拓思路。教师可以进行点评,讲解各小组共同存在的重难点,通过大量应用实例加深学生的理解,达到启发学生的目的,引导他们在操作中体会、感受和领悟,发现问题,解决问题。最后引导学生通过小组讨论等方式实现可追加的功能,对项目内容加以延伸,同时增加学生的团队合作能力和团队精神,增强学生的自信心,培养他们敢于探索、勇于开拓的进取精神和主动获取知识的自学能力。
项目驱动法教学中,教师通过大量的讲解和实际训练,注重的不是最终的结果,而是完成项目的过程,学习过程成为一个人人参与的创造实践活动。另外,在此过程中,教师不仅完成了知识的传授任务,也对自身知识体系进行了更新,对提升教师自身素质起到很大的促进作用。
项目驱动的教学模式充分体现以项目为主线,以学生为主体自主学习,教师加以引导,以完成一个项目作为动力来组织教学。使学生熟悉软件的开发过程,增加对各种软件开发团队模型的理解与认识,掌握编程思想,掌握软件开发中各种工具的配置与管理;在核心竞争能力方面,通过多种训练手段和拓展活动,培养学习良好的职业习惯,实现学生在校即成为真正优秀的职业人。通过小组讨论学习,而培养了学生的合作精神和创新意识,有效的促进学生综合能力的发展,以实现与就业岗位需求的直接接轨。
参考文献
[1]李丽丽,李耀.项目驱动法在实验室实践教学中的应用[J].电脑知识与技术,2009.10.
[2]杨盛泉,刘白林.简谈C程序设计课程的任务驱动教学方法[J].计算机教育,2010.3.
[3]张峰.计算机专业课教学中案例驱动教学模式的实践[J].榆林学院学报,2010.3.
[4]郭亮,刘杰.任务驱动模式的计算机教学研究[J].贵阳学院学报,2009.9.
关键词项目驱动 程序设计 平台 模块
中图分类号:G426文献标识码:A
软件产业是二十一世纪的朝阳产业,发展迅速,是推动世界经济增长和社会发展的重要推动力。软件人才是产生这种推动力的主要源泉,软件职业教育人才输出的质量与数量将对软件产业的发展影响重大。为适应社会对人才的需求,高职院校在人才培养方面越来越注重技术的应用,以及教学与实践的结合,在计算机专业的教学中,设立了C语言和Java 语言等主干程序设计课程,而在非计算机专业的教学中也逐步设立了VB、C 语言等程序设计课程。并通过此类课程的学习,使学生初步掌握程序设计的基本方法,具备独立开发简单应用程序的能力。
然而,传统教学模式大都以教师知识讲授为中心,尤其是计算机语言类的课程,教师沉闷枯燥的理论教学充斥着整堂课,教学内容存在严重的时间滞后性、实践脱离性、主体被动性。在整个计算机教学过程中,学生始终处于被动地位,学生往往是听懂,但无法实际操作出来,导致学生的学习主动性和积极性受到压抑,同时也不利于学生创新思维的开发,不利于素质教育创造性人才的培养。
项目驱动法的引入,在很大程度上解决了这个问题。以C语言程序设计课程为例,如果在教学过程中引入实例,以具体的项目为驱动,把语法知识和基本概念放到实实在在的项目中去讲述,则可以避免这些问题,好的实例可以起到事半功倍的效果。如此,可以充分调动学生的学习积极性,让学生把理论与实践做到完美的结合与对接,训练学生编写程序的熟练度和规范性,增加学生实际软件项目开发经验,逐渐的,学生的综合分析和解决实际问题的能力也会有所提高,以达到高职院校培养人才的目标。另外,根据项目的难易程度,可以把教学过程分为不同的阶段,并针对不同阶段的教学特点,引入不同难度的项目。下面以“储蓄综合业务平台”项目为例,探讨一下项目驱动法在C语言课程教学中的应用。
1 需求分析
(1)系统需求简介:储蓄业务越来越走进人们的日常生活,银行储蓄信息化势在必行。在此背景下,我们要开发一套精简的银行储蓄柜台的“储蓄综合业务平台”,包括最常用的功能:开户、销户、存款、取款、查询等功能。
(2)角色分类:本软件的最终用户是操作员。
(3)模块划分:根据用户的角色及其功能需求,划分为七个组成部分。
(4)功能简介:主要针对每个模块的功能进行简要说明,每个功能主要包含以下几部分:模块名称,功能要求,业务流程,输入输出数据说明等。
(5)其它需求:需要学生到实际储蓄柜台进行实地调研,补充一下需求,然后仿照开户销户的操作,使用流程图和数据表来描述新调研来的需求。
在需求分析中,我们要引入问题,使学生明白即将要做什么,马上要做的工作在实际生活中能够解决什么问题,使学生带着任务走进课堂。通过一个典型的、有针对性的例子,把相关的基本概念、解题方法和思路传授给学生,同时让学生课余到生活中去进行实地调研,切身体会,结合实际情况,令学生形成深刻、形象、牢固的记忆,对启发思维、激励兴趣、提高学习效率起到重要作用。
2 系统设计
(1)系统总体设计:根据储蓄系统的功能需求特点,画出系统结构示意图。对各功能模块进行分类简述,并作出主要模块的调用关系图。
(2)主要应用技术:该系统中,储户信息使用结构体数组进行存储。在此,需要对学生进行相关知识的讲解。
(3)数据结构设计:该储蓄系统是一个简化的系统,所以不使用数据库系统,用结构体数组来存储用户信息,程序员主要对结构体数据进行操作,然后调用通用函数把该数组写入磁盘或从磁盘中读取。
(4)功能模块设计:模块分析、设计和代码实现是程序开发的核心所在,因此程序的模块设计在系统开发过程中占有非常重要的地位。在此对储蓄综合业务平台的功能模块进行具体分析和设计。
(5)其它:对照需求和设计,让学生体会每一个需求是怎么设计的,同时对读密码、金额、账号等部分进行优化设计。
在系统设计中,围绕项目设计,对学生进行关键知识点的讲解。学生如果只是被动接受教师在课堂上灌输的信息,就不能起到良好的教学效果。 必须给学生一定的压力使其产生学习动力。而项目进行到这个时候,因为学生是为了解决实际问题的有目的的学习相关知识,有实际的目标,所以教与学的效率就会提高不少。同时,我们可以在课程设计过程中引入协作学习,将班级学生分成由3到5人组成的多个小组。分组时根据学生对知识的掌握及学习能力合理分配,由教师选定组长,让已有一定基础的学生和基础相对薄弱的学生搭配,相互促进学习,再由组长领导小组成员相互协作,共同完成任务。为加强学生对知识的理解,并对C语言程序设计有更深入的认识。要求提交设计报告,并在项目结束阶段以小组为单位参加讨论并做深刻总结。讨论时教师从不同方面提出问题,检验学生在课程设计过程中的所做的工作和学到的知识,并鼓励学生自己提出问题,自己解决问题。另外,C语言程序设计本身是编程语言的课程,所以必须强调编程能力的强化训练。要想提高学生程序设计开发能力,在项目中保证学生的代码编写量是很重要的方法之一。
3 系统实现
(1)核心功能部分:首先分析系统的技术要点――数据文件记录结构体和文本文档的操作,在此部分,主要学习C语言结构体类型的定义,定义结构体类型变量的方法,结构体类型变量的引用,学习使用C语言typedef定义类型,使用C语言文件操作库函数实现基于流式文件的读写操作等。
(2)整体功能实现:实现项目的主体部分:主函数,开户模块,销户模块,存款模块,取款模块,查询模块等。
(3)软件测试:通过对储蓄综合业务平台系统的测试完善该系统。
(4)其它:参考已实现的代码部分完成未实现的代码部分,在存款模块中增加存款金额不能为“0”和负数的判断代码。
在项目的主体――系统实现中,我们要完成所有相关主体知识点的学习,然后引领学生逐个实现系统的各个模块,此过程的关键在于要留给学生充足的操作时间,让学生大胆去尝试,通过小组讨论学习集思广益、开拓思路。教师可以进行点评,讲解各小组共同存在的重难点,通过大量应用实例加深学生的理解,达到启发学生的目的,引导他们在操作中体会、感受和领悟,发现问题,解决问题。最后引导学生通过小组讨论等方式实现可追加的功能,对项目内容加以延伸,同时增加学生的团队合作能力和团队精神,增强学生的自信心,培养他们敢于探索、勇于开拓的进取精神和主动获取知识的自学能力。
项目驱动法教学中,教师通过大量的讲解和实际训练,注重的不是最终的结果,而是完成项目的过程,学习过程成为一个人人参与的创造实践活动。另外,在此过程中,教师不仅完成了知识的传授任务,也对自身知识体系进行了更新,对提升教师自身素质起到很大的促进作用。
项目驱动的教学模式充分体现以项目为主线,以学生为主体自主学习,教师加以引导,以完成一个项目作为动力来组织教学。使学生熟悉软件的开发过程,增加对各种软件开发团队模型的理解与认识,掌握编程思想,掌握软件开发中各种工具的配置与管理;在核心竞争能力方面,通过多种训练手段和拓展活动,培养学习良好的职业习惯,实现学生在校即成为真正优秀的职业人。通过小组讨论学习,而培养了学生的合作精神和创新意识,有效的促进学生综合能力的发展,以实现与就业岗位需求的直接接轨。
参考文献
[1]李丽丽,李耀.项目驱动法在实验室实践教学中的应用[J].电脑知识与技术,2009.10.
[2]杨盛泉,刘白林.简谈C程序设计课程的任务驱动教学方法[J].计算机教育,2010.3.
[3]张峰.计算机专业课教学中案例驱动教学模式的实践[J].榆林学院学报,2010.3.
[4]郭亮,刘杰.任务驱动模式的计算机教学研究[J].贵阳学院学报,2009.9.