《编译原理》暑期培训总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《编译原理》暑期培训总结
舒忠梅
一、引言
在我系领导的大力支持下,我于2007.7.22-2007.7.26参加了机械工业出版社华章公司在黄山举办的暑期教师《编译原理》课程培训班,现将本人参加培训的情况做以下总结。
整个培训从2007.7.22报道那天晚上开始拉开序幕,7月22日晚上7:30由教育部高等学校计算机科学与技术专业教学指导分委员会秘书长、北京理工大学计算机系的蒋宗礼教授给所有来参加培训的老师做了“高等学校计算机科学与技术专业发展战略报告”。
7月23日到2月25日三天上午分别由蒋宗礼教授和苏运霖教授对我们进行《编译原理》课程的培训。
同时,还有《计算机体系结构》、《计算机网络》和《软件工程》三门课程的培训也在分别进行着。
7月26日所有学员登黄山进行了自由交流活动。
下面就培训的主要内容及个人体会汇报如下。
二、开幕式:蒋宗礼教授的高校计算机科学与技术专业发展战略报告
在刚报道的当天晚上,机械工业出版社华章公司举办了开幕式,并邀请教育部高等学校计算机科学与技术专业教学指导分委员会(教指委)秘书长蒋宗礼教授做了“高等学校计算机科学与技术专业发展战略报告”。
蒋老师的报告很精彩,整个报告将近3小时,尽管各位老师都是当天才到达黄山,也浑然不觉旅途劳累,个个都是聚精会神地听着。
他首先介绍了战略报告与规范的制定过程,然后从背景、历史及启示、现状、社会需求分析、改革目标与措施、辅助建议、总结等几个方面详细介绍了计算机科学与技术专业发展战略。
关于计算机科学与技术专业发展的背景,蒋老师提到随着计算机和通信技术近十年来
的蓬勃发展,国家的进一步改革开放,中国开始进入信息化社会。
以信息化带动工业化,全面建设小康社会,已经成为我们的基本国策和全国人民共同奋斗的宏伟目标。
在这样的历史背景下,重新审视高等学校本科计算机专业教育的发展方向有着十分重要的意义。
这不仅因为计算机技术是信息化的核心技术,还因为它目前是全国规模最大的专业。
截止到2004年初,全国共有505个学校开办有计算机本科专业,共有在校生近30万。
同其他专业相比,这两个数字都是第一。
作为2001-2005年教育部高等学校计算机科学与技术专业教学指导分委员会的一项工作,他首先简略回顾了计算机专业在中国的发展历史;然后在比较广泛调查研究的基础上,分析了我国计算机专业办学的现状;并分析了当前和今后若干年社会对从事计算机产业和信息化工作人才的需求,借鉴了国际上计算机专业办学的发展和现状,尤其是著名的IEEE-CS/ACM Computing Curricula研究成果,提出了以“培养规格分类”为核心思想的计算机专业发展的建议,鼓励不同的学校根据社会的需求和自身的实际情况为学生提供不同类型(研究型、工程型、应用型)的教学计划和培养方案,认为一个学校在其中一种类型上通过评估合格,就被认为“计算机科学与技术”专业办得合格。
同时,为了提高教育质量,报告还提出了加强青年教师的教学培训与提高、建立新时代助教队伍以及加强学生实践和动手能力培养三点辅助建议。
在回顾计算机科学与技术专业发展的历史时,蒋老师给我们介绍了三个突出的时期及其特点: 初创时期(1956—1960年)、发展时期(1978—1986年)、高速发展时期(1994年至今)。
并介绍了在回顾历史时领悟到的一些计算机教育发展规律的启迪,如计算机教育发展以国家需求为目标、发展中国家必须注重学习国际先进技术、充分认识计算机专业的实践性特点、师资队伍是保证教育质量的关键、计算机教育内容必须与时俱进等。
在分析现状时,蒋老师基于教指委成员自身的教学实践,以及2004年3月初对10所不同类型大学的调查研究,给我们介绍了对中国计算机专业教育的现状所形成的认识:(1) 近十年来规模快速扩大,相关专业也在蓬勃发展;(2) 教学管理人员认真负责,教学内容调整需要跟上;(3) 师资队伍完成新老交替,队伍素质急待培养提高;(4)设施条件建设初见成果,实验环节需要抓紧加强。
在谈到信息社会对计算机人才的需求时,蒋老师给我们介绍了其基本观点:国家和社
会对计算机专业本科生的人才需求,必然与国家信息化的目标、进程密切相关。
计算机市场很大程度上决定着对计算机人才的层次结构、就业去向、能力与素质等方面的具体要求。
并列举了若干判断,如判断1:计算机类专业毕业生就业出现困难的主要原因,不是数量太多或质量太差,而是满足社会需要的针对性不够明确,导致了结构上的不合理;计算机人才培养也应当是金字塔结构。
判断2:从国家的根本利益来考虑,必然要有一支计算机基础理论与核心技术的创新研究队伍,需要高等学校计算机专业培养相应的研究型人才。
判断3:国内的大部分IT企业,都把满足国家信息化的需求作为本企业产品的主要发展方向。
这些用人单位需要高等学校计算机专业培养的是工程型人才等。
在谈到计算机专业办学改革目标与措施时,蒋老师给我们介绍了相对单一的教学计划,已经造成了人才培养和人才需求的一种结构性失衡。
如果我们继续维持“计算机科学与技术”原有含义的话,相对于社会需求,它已经不能容纳现在这个办学规模了。
我们要在宏观上认识到一种改变现状的必要。
这种要改变的现状,除了教学质量需要提高外,更重要的还有总体的结构性调整的问题。
提出以“培养规格分类”为核心思想的计算机专业发展的建议,可以考虑三种不同的类型:研究型(或者说科学型)、工程型(包括计算机工程和软件工程)、应用型(或者称信息技术型)。
最后,蒋老师谈到了几项辅助建议:如加强青年教师的教学培训与提高、建立新时代助教队伍、加强学生实践和动手能力的培养等。
蒋老师精彩的讲座在大家热烈的掌声中结束。
三、蒋宗礼教授的《编译原理》教学讲座
7月23日上午8:30开始了《编译原理》课程的培训,蒋宗礼教授利用7月23日上午和7月24日上午给我们从计算学科、教学设计、第一堂课、典型问题和实践教学等方面详细介绍了计算学科重要核心课程《编译原理》的教学经验。
首先蒋老师提到计算学科正走向以人为本,并从科学、工程和技术三方面谈到了计算学科的根本问题即什么能、且如何被有效地自动计算。
接着,蒋老师介绍了计算学科在基础和应用方面的分支教育。
在基础分支学科方面,他总结出本学科的基本教育原理是抽象第一,重视问题表示和求解的形式化、模型化的基本途径和思想,重视理论基础、追求类
计算和模型计算、追求问题的系统求解、加强实践环节的支撑、培养理论与实践相结合的能力。
在应用分支学科方面,需要通过对基本系统的进一步开发构建以计算技术为核心的应用系统,更多地关心计算系统的外特性,强调更高层系统构建能力的培养,并重视资源的最佳利用。
此外,蒋老师还介绍了CS、SE及IT的各自定位与问题空间,谈到分支学科在11方面59种能力要求。
其中,给我留下非常深刻印象而且感慨良多是蒋老师在谈到学科教育强调能力培养时引用贾尼丝·萨博对中外两种教育的对比,其中中国教育对象是聪明的孩子,而国外则是智慧的学生;中国教育要求学生能够知道答案、带着兴趣去听、能理解别人的意思、能抓住要领、能完成作业、乐于接受、吸收知识、善于操作、长于记忆、喜欢自己学习,而国外教育则要求学生能够提出问题、能表达有力的观点、能概括抽象的东西、能演绎推理、能寻找课题、长于出击、运用知识、善于发明、长于猜想、善于反思、反省。
可见两者教育观和教育理念存在着非常大的区别。
我们要发扬知识基础扎实的优势,强化受教育者的基本能力。
蒋老师提到《编译原理》课程所瞄准的目标是:要求学生掌握基本概念、基本理论、基本方法,在系统级上再认识程序和算法,提升计算机问题求解的水平,增强系统能力,体验实现自动计算的乐趣;要掌握程序变换基本概念、问题描述和处理方法,如自顶向下、自底向上、逐步求精、递归求解、目标驱动、问题分析、问题的抽象与形式化描述、算法设计与实现、系统构建及模块化等,修养“问题、形式化描述、计算机化”问题求解典型过程,推进从“实例计算”到“类计算”和“模型计算”的跨越,增强理论结合实际能力,获得更多的“顶峰体验”,从宏观到微观、从微观到宏观,培养系统能力。
在教学设计方面,蒋老师介绍了广义和狭义的教学设计定义,并以《形式语言与自动机》和《编译原理》为例简单展示了该课程的教学设计蓝本,包括课程重要内容、教材、教学大纲基本内容等。
由于蒋老师现所任教的单位是北京理工大学,乃北京市属的国家“211工程”建设大学,旨在为北京市的建设培养高水平的工程应用型人才。
其专业特点是致力于培养计算机专业的工程应用型人才,学生将具有较扎实的基础理论、专业知识和基本技能,具有良好的可持续发展能力。
特别强调编译原理中抽象和设计形态的内容,淡化推导等理论形态的内容,着力培养学生的系统能力。
该学校的《编译原理》课程的学时安排为:
总学时为56,其中理论授课44学时,课内实验12学时。
在培训时,蒋老师比较详细地介绍了他们学校《编译原理》的课程内容体系、知识点和相应的学时安排等,介绍了该课程各章节的重点、难点及讲授提示,并谈到了他们的习题和实验安排。
随后,蒋老师强调上好第一次课的重要性,他从编译是一个好课程、第一次课的目的、第一次课的内容等方面进行了阐述。
接着,蒋老师就《编译原理》课程的一些典型问题,如编译程序的生成、从示例抽象出文法描述、构造算术表达式的文法、非CFL的文法、Chomsky体系、短语、消除左递归、LL(1)分析表构造的引入、自底向上语法分析的导入、算符优先关系、LR分析法的引入、LR(0)的主要概念、LR(0)不是总有效的、理解翻译模式、构建语法树、生产三地址码、拉链回填、S→if C then S1的翻译、S→if C then S1 else S2的翻译、S→while C do S1的翻译等20个知识点进行了上课示范。
在实践教学方面,他们学校的实验安排比较简单,要求学生做两个实验。
实验一是关于词法分析器方面的,编制一个能够分析三种整数、标识符、主要运算符和主要关键字的词法分析程序,其基本要求是学生根据状态图,设计实现词法分析器。
实验二是关于语法分析器与三地址代码生成方面的,要求学生掌握计算机语言的语法分析程序设计的实现方法,设计实现一个能够进行语法分析的编译程序。
在此基础上要求优秀的有能力的学生实现三地址代码生成,要求学生掌握属性文法的实现方法,设计实现一个能够进行语法分析并生成三地址代码的编译程序。
并介绍了考核方法与标准。
四、苏运霖教授的《编译原理》教学讲座
7月25日上午由苏运霖教授给我们做《编译原理》课程的培训。
苏教授主要给我们介绍了他即将在机械工业出版社出版的《编译程序原理》一书的主要内容,全书包括概论、文法和语言、有限自动机和正则表达式、词法分析、上下文无关文法和下推自动机、语法分析、属性文法及其分析、编译程序设计的代数方法、中间代码的生成、纠错与优化、存储管理、目标代码生成、面向对象语言的翻译、并行语句的翻译、网格计算的编译共15章。
我们对其中的编译程序设计的代数方法、面向对象语言的翻译、并行语句的翻译、网格计算的编译等新内容都很感兴趣,希望苏教授能在这些方面展开来深入介绍,但未能如愿,故只能期待苏教授即将面市的新书了。
五、个人收获和感想
7月24日上午在蒋老师讲完后进行自由讨论时,我把我们系《编译原理》课程的教学指
导思想和实践环节也作了简单介绍,并向各位学员进行了推荐,他们都很感兴趣。
由于我
们学校的学生和北京理工大学的学生在能力素质等方面存在着较大差异,所以,我认为在《编译原理》课程的教学设计上,我们所能借鉴的很少。
相比之下,李文军老师所提倡的
该课程的“语言是求解问题的一种重要途径”理念及相应的实验项目更为合适。
在7月25日上午苏教授介绍完后,我们也进行了提问和自由讨论。
由于前一天我介绍了
我们系的《编译原理》课程的设计和安排,他们都表示出浓厚的兴趣,很多学校的老师都
趁此机会向我了解更多的信息,我给他们详细介绍了李文军老师提倡的“语言是求解问题
的一种重要途径”理念和“Tiny程序复杂性度量工具”、“Wren源程序排版工具”等实验
项目的设计与安排以及学生的反响和效果。
大家都觉得非常好,如大连理工大学计算机系
的姚卫红老师、西安电子科技大学的张淑平老师、北京化工大学计算机系的万静老师、石
家庄经济学院的刘坤起副院长等老师都表示要向我们学习,有的老师当时就表示要来我们
系访问学习《编译原理》课程的教学经验。
看到大家热情很高,我当场给李文军老师通电话,在征得李老师同意后,将《编译原理》教学网站推荐给了大家。
在这几天的培训中,我收获最大的是第二、三部分所述的蒋宗礼老师所提炼的一些教
学方法、教学思想和教学理念,特别地如修养学生“问题、形式化描述、计算机化”问题
求解典型过程,推进从“实例计算” 到“类计算”和“模型计算”的跨越,增强理论结合
实际能力,加强学生实践和动手能力的培养,让学生获得更多的“顶峰体验”等,这些对
我的促动较大,相信在以后的教学工作中会努力地尝试去学以致用。
同时,这次培训也给
我和其他学校的同行之间的友好交流创造了良好机会。
□。