- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序设计实践课程教学改革探索
摘要:为解决学生普遍存在的动手能力差的问题,我校开设了程序设计综合实践课程,并将项目法引入此类课程的教学中。针对以上问题,探讨程序设计课程具体的组织实施方法,改革课题设计、考核方式等关键环节,实践证明该方法行之有效。
关键词:程序设计实践;项目法;考核方式;教学改革
随着计算机技术逐步渗透到工作、生活的各个环节,本科院校,特别是理工类院校加强了学生计算机能力的培养,设置了计算机基础、高级语言程序设计等专业基础课程,把学生的程序设计能力培养作为教学的重要目标。
程序设计实践不仅可以巩固课堂上学习的理论知识,也能锻炼学生的程序设计能力和动手能力,它是引导学生从被动学习到主动学习的好机会,因此,这个阶段的计算机教学作用很明确。项目导入、以任务驱动教学、引入ACM竞赛平台等新的方法纷纷引入[1-3],多数研究都侧重于以实践环节带动课堂上的理论教学,也有单独开设一门实践课程以培养学生动手能力的[4],不论哪种形式都以让学生完成多个针对一定教学目标的程序为主,这不利于培养学生程序设计的整体思想,而我校C/C++程序设计课程除了在理论教学过程中根据教学目标安排学生完成相应的实践,还在本科二年级安排为期2周的程序设计实践集训,用于完成综合性、较大规模的程序。
项目教学法,是德国职业教育在20世纪80年代大力推行的一种“行为引导式的教学形式”,它是将一个相对独立的项目,交由学生自己处理。从信息的收
集、方案的设计、项目的实施到最终的评价,都由学生自己负责。这种方式在学生已具备一定的编程知识,却没有多少编程经验的情况下会取得较好的效果,非常适用于大学二年级的程序设计实践环节。
近两年,我校逐步将项目法引入程序设计课程,通过项目训练强化学生对计算机语言的学习,培养学生的程序分析、设计和开发能力,提高学生的学习能力、实验能力以及团队合作能力,取得了较好的效果。
1项目教学法的实施步骤
项目法以学生为中心,强调学生的主观能动性,因此,这种思想应贯穿于程序设计的各个环节:学生面对的是一个个能体现实际应用的典型编程“项目”,教师引导学生从实际入手,在强烈的问题动机驱动下,学生通过对已学理论知识的积极主动应用,进行自主探索,并通过团队之间的相互帮助,完成既定任务的过程。学生通过该项目,了解并把握整个过程及每一环节中的基本要求,逐步建立起程序设计的思想。
1) 创建项目组。考虑到学生实际能力和程序设计周期,一般3人组成一个小组。学生可以自行分组,合作完成一个课题,同时选定组长,负责项目小组的分工协调,保证项目的实施进度。
2) 选题。在教师给定课题的范围内,小组经过讨论选择合适的题目,也可以就感兴趣的问题自行命题。
3) 教师的监督和引导。学生第一次面对这些实际应用问题,无从下手,因此,教师在课题的理解、方案设计、关键技术解决等方面应给予指导,但应注意“授人以渔”,而非“授人以鱼”。
4) 考核。除了程序运行及提交程序设计报告外,增加答辩环节,答辩时各组演示各自系统,介绍自己完成项目的主要特色、功能、模块划分、算法思想,并回答老师以及其他同学的提问,接受老师和其他小组的点评。项目组的成员对项目的成败负有同等的责任,因此,原则上项目成员的成绩相同,成绩取决于项目完成情况、算法设计、分工合作、答辩以及程序设计报告。
2项目教学法实施的关键问题
程序设计实践环节中引入项目教学法,使得学生能以项目为核心完成软件设计的综合训练,培养程序设计整体思想,锻炼从问题的分析、总体框架设计、代码实现、测试到项目展示等一整套的实践能力。
为保证项目教学法的成功实施,必须关注以下3个关键问题。
2.1题目的选择与设计
程序设计题目的选择和设计非常关键,不仅要考虑到工作量还要考虑学生的兴趣、项目完成目的等多方面因素,表1是我校的程序设计任务书示例,其中基本功能是必须完成的,而学有余力的学生可以在任务书的提示下进行深入的开发,以满足不同层次学生的需求。在题目的设计和选择过程中要注重以下几点。
1) 题目内容的设计性。
这是达到良好效果的关键部分。以往程序设计的题目要求由教师全部详细给出,结果造成学生的惰性,相互之间的抄袭或直接上网查找答案的现象屡禁不止。因此,每一个程序设计题中都有要求学生根据实际生活经验或者知识进行设计的部分。表1的题目就是要求学生自动生成大批量的话单,并设计规则完成账单的定制。学生刚看到要求,会无从下手,经过思考后可以和时间函数、随机数、文件等知识联系起来,还有同学会联想到数据库。
这种形式可以发挥学生在实践类课程中的主导地位,设计部分往往成为各个项目小组的亮点,并引起更多的兴趣关注和讨论,学生收获最多。学
您可能关注的文档
- 奥运专题网站设计.doc
- 八数码问题DFS和BFS算法的设计与实现.doc
- 把Matlab软件引进高等数学课堂教学中.doc
- 把WinXP优化得健步如飞.doc
- 把脉IT专业外语教学 探索培养IT人才新模式.doc
- 白盒测试方法分析与研究.doc
- 百里杜鹃风景区数字化的必要性.doc
- 百年兰大的计算机史话.doc
- 办公室里出“风头”.doc
- 办公网络的设备选择与维护.doc
- 数据仓库:Redshift:Redshift与BI工具集成.docx
- 数据仓库:Redshift:数据仓库原理与设计.docx
- 数据仓库:Snowflake:数据仓库成本控制与Snowflake定价策略.docx
- 大数据基础:大数据概述:大数据处理框架MapReduce.docx
- 实时计算:GoogleDataflow服务架构解析.docx
- 分布式存储系统:HDFS与MapReduce集成教程.docx
- 实时计算:Azure Stream Analytics:数据流窗口与聚合操作.docx
- 实时计算:Kafka Streams:Kafka Streams架构与原理.docx
- 实时计算:Kafka Streams:Kafka Streams连接器开发与使用.docx
- 数据仓库:BigQuery:BigQuery数据分区与索引优化.docx
文档评论(0)