- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
拓宽基础,强化实践,程序设计语言类课程教学探索与实践
拓宽基础,强化实践,程序设计语言类课程教学探索与实践
摘要:程序设计语言是高等学校计算机专业本科教学计划中不可缺少的基础课程,由于语言种类多、发展快、实践性强,如何在有限的课时内让学生系统地掌握程序设计语言的基本原理、具备初步的编程能力,是该类课程教学面临的一个主要挑战。本文介绍北京交通大学在程序设计语言类课程教学方面进行的研究性教学与实践性教学相结合的探索与尝试。
关键词:计算机教育;程序设计语言类课程教学;教学改革;研究性教学;实践教学
中图分类号:G642 文献标识码:B
1程序设计语言类课程教学的问题
程序设计语言的研究与开发一直是计算机科学领域的核心问题之一。事实上,信息技术领域的任何新技术与新方法都离不开程序设计语言的表达和实现,多名“图灵奖”获得者都是因为在程序设计语言方面的开创性成果而获奖。研究型大学的计算机专业本科生不仅应掌握特定程序语言的应用,更应了解不同类型程序设计语言的理论基础及其背后所蕴涵的程序设计方法学。
我国绝大多数高校计算机专业方向的本科生教学培养计划中安排了程序设计语言的教学任务。与西方发达国家的高等院校相比,程序设计语言教学方面的突出不足之处主要表现为:
(1) 程序设计语言的教学在有限的本科生教学课时中占用了较大比例,开设了如C、C++、Java、C#、Web程序设计语言、脚本语言等课程,设置零散,缺乏系统性。
(2) 程序设计语言的教学大纲侧重语言的语法教学,忽视程序语言设计的理论基础。学生缺乏研究和开发新型程序设计语言的能力,与研究型大学的学生培养目标有较大差距。
(3) 程序设计语言实例教学的效果不能令人满意。相当比例的计算机专业本科毕业生需要经过一段时间的编程训练后方能满足工业界需求。
初步调研发现,我国计算机学科排名靠前的几所高校,如北京大学、北京航空航天大学、东南大学,开设了“高级程序设计语言的设计与实现”或“程序设计语言的原理与实践”课程,但这些课程大多是面向计算机专业方向的研究生。据我们所知,德国和荷兰等西方发达国家的高校在本科生层次上就已经开设了相应课程,并且将程序设计语言的教学任务分配到多个阶段。
基于以上分析,我们认为,有必要在计算机专业本科生教学培养计划中增设程序设计语言的理论基础课程,适当删减程序设计语言实例教学课时,实现从程序设计语言基础理论到编程实践的系统化教学。
以培养可持续发展的计算机专业人才为导向,本文探讨“研究性”教学与“实践性”教学相结合的“程序设计语言”课程教学的探索与实践。具体说来,在程序设计语言理论基础教学方面,归纳与整理几类程序设计语言的理论基础,并以代表性程序设计语言为例进行分析与讲解;在程序设计语言实践教学方面,保留“C程序设计”课程教学,但对已有的教学内容与方式实施改革。上述教学改革的目标是提高学生程序设计语言的理论水平,增强对程序设计语言的理解与应用能力,为后期从事计算机相关领域的研发活动夯实基础。
2程序设计语言理论基础的研究性教学探索
程序设计语言理论基础研究性教学遵循“三结合”的基本原则,设计和实施课程教学。具体说来,采用“授之以渔”与“授之以鱼”相结合、“演绎”与“归纳”相结合、“原理”与“实践”相结合的方式。
由教授、副教授、讲师各一名组成本课程的教学小组。三名授课教师均长期从事计算机软件与理论方面的研究工作,在国内外学术期刊或学术会议上发表多篇高水平的研究论文。其中,一名教师负责讲授不同类型程序设计语言的理论基础,另外两名教师配合理论基础讲授语言实例。
本课程以授课教师编写的讲义为主,并提供大量相关的参考文献。通常,程序设计语言的理论基础可按三种编排方式讲授,即按照不同语言的重要特征及比较、或者按照程序设计语言的基本结构及实现、或者按照程序设计语言的形式化语义讲解。基于近几年程序设计语言的研究进展,本课程采用第一种编排方式组织课程的教学大纲。
(1) 分析与整理现有的各种程序设计语言,如C、C++、C#、Java、Ada、Lisp、Prolog等,归纳不同范型程序设计语言的特点与由来,绘制程序设计语言的发展谱系。
(2) 整理与探讨过程式、函数式、逻辑式、面向对象式、并发式等不同范型程序设计语言的理论基础,结合有代表性的程序设计语言实例分析讲解。
(3) 探讨新型程序设计语言的发展趋势,讨论开发新型程序设计语言的一般过程与方法。
在实施课程教学时,采取教师讲授、学生演讲与报告、课堂讨论等各种形式的研究性教学方式。首先教师主讲先导性知识与理论基础,然后由教师指定相关文献,学生课前必须认真研读、准备课堂演讲与报告,老师和其他同学提问;学生无法回答或解释不清时,由教师进行疏导。
原创力文档


文档评论(0)