编译原理实验教学设计的改进

2022-09-12

一、引言

《编译原理》[1][2]课程是计算机科学与技术专业的重要专业课之一, 编译系统作为计算机系统的一部分, 是专业学生的必修课。该课程是一门理论性与实践性极强的课程, 对学生计算机能力的提高有重要作用。实验课通过帮助学生深入理解概念, 进而提高学生的逻辑思维能力和实践动手能力, 最终提高学生的专业素质。

当前该课程的实验教学通过将一个完整的编译程序拆分成词法分析、语法分析和语义分析等几个阶段[3], 实验内容难度较大, 很多学生会知难而退, 难以达到预期的实验效果[4]。究其原因是实验内容的设计, 学生的自身能力和实际水平两者之间出现了诸多偏差。为了更好地提高该课程的实验教学效果, 需要从实验教学的内容、实验教学的设计以及组织形式方面加以改进。

二、存在的问题及分析

(一) 学生的认知误区

课程内容的强逻辑性和高抽象性特点, 使很多学生对编译原理实验课存在很多认识误区, 如果不及时采取措施改变现状, 会进一步加重学生的畏难情绪, 产生一系列不利于课程学习的消极负面影响[5]。

设计和开发编译器是课程的学习目标, 学习的内容与毕业之后的工作关系不密切, 得出课程无用的错误结论是误区之一。实际上编译原理知识包含诸多计算机科学体系的理论, 学生通过课程的学习站在程序编译的角度审视软件的开发, 有助于开阔学习的眼界, 提高其对系统开发的认识, 对今后从事各种软件的开发都大有益处。

认为课程实验等同于其他课程普通的程序设计实验, 迷失在具体代码实现的细节上是误区之二。本课程与《离散数学》、《算法设计与分析》、《数据结构》等课程密切相关, 是对多门课程知识的综合应用, 对其学习能够进一步增强学生对相关知识的综合运用能力和专业素质的提升。

(二) 实验内容设计太笼统、缺乏层次性

一般地该课程的实验教学设计是根据编译过程的阶段性, 每个阶段分别设计实验题目, 最终形成一个完整的编译程序。该设计的优点是实验练习是与授课内容紧密结合, 模块分解清晰。缺点是尽管对整个程序进行了简化, 每个实验仍然存在许多学生难以跨越的“难度阶梯”, 忽视了不同学生的知识和能力水平的不同, 很难达到预期的效果。

(三) 实验组织形式比较单一

该课程实验的实践形式一般是在机房完成。每个学生操作一台计算机, 从实验的设计阶段到程序代码的实现都由其独立完成。教师在机房进行实验辅导、随时答疑, 根据学生最终提交的程序代码和实验报告给出分数。该实验组织形式的特点是教师主导和成绩评判形式单一, 学生之间的交流不够, 课堂气氛比较沉闷枯燥, 缺少学生团队协作能力的训练。

三、实验教学设计改进

(1) 对实验项目进行分类:调整以前的传统必做题目, 增加源代码预习环节。以验证性为主的传统必做题目学生往往没有思路, 题目过于注重算法, 与实践脱节;通过增加预习环节, 降低了学生的实验难度。通过案例化教学强化学生对程序整体的认识, 采取一个简化的、针对简单语言的完整的编译程序教学案例, 让学生在深入理解该教学案例的基础上对语言进行扩充, 完善编译程序的相关功能。

(2) 扩充实践应用题目为选做题目:结合实际中运用编译技术的比例, 以提高学生的学习兴趣为基础, 使学生明白该课程的知识和技术也可用于系统软件或者应用软件的开发。例如计算器的设计, 实习表达式的分析计算。

(3) 个性化阶梯式教学:实验难度的设计体现层次性, 形成阶梯状的难度层次。针对不同水平的学生设定不同难度的实验题目, 从而激发每个学生的学习兴趣。根据内容的难度实现阶梯化设计, 对学生因材施教, 最大程限度发挥他们的主观能动性, 挖掘学生其学习潜质, 避免出现有的学生吃不了有的学生吃不饱的现象, 提高学生系统开发的整体能力。将实验要求设置基本要求、较高要求和探索性要求三个层次, 所有学生均能完成基本要求, 鼓励成绩较好的学生去完成较高要求, 采用成绩加分等一些激励机制, 鼓励学有余力的同学完成探索性实验。

(4) 实验报告的提交:通过增加设计思路、程序可扩展功能等要求, 尽量避免部分同学抄袭实验报告的现象。要求学生必须将实验心得和个人见解写入实验报告中, 培养学生的独立思考能力和实事求是的工作作风。

四、结论

本文在前期调研的基础上, 应用在2014级本科生的教学过程中, 在有限的学时内, 改进现有的实验教学设计模式, 探讨构建新型实验课程教学模式;使学生掌握不同编译阶段的处理方法, 提高学生编写、调试程序的动手实践能力, 使实验效果有较大改观。可将此项目推广到更多的计算机类专业课程, 从整体上提高本专业的实验教学水平。

摘要:编译技术是计算机科学中重要且独立的研究领域, 《编译原理》课程实践与理论紧密结合。加强实验学习对于理解和掌握编译技术十分重要, 强设计性是该课程实验教学的特点。本文在前期调研的基础上, 在有限的学时内, 改进现有的实验教学设计模式, 探讨构建新型实验教学模式;通过使学生掌握典型的编译处理方法, 提高学生编制、调试程序的动手能力, 使实验效果较之前得到较大改观。

关键词:编译原理,实验教学,教学模式

参考文献

[1] Noaka I., Takeuchi H. The Knowledge Creating:How Japanese Companie Create the Dynamics of Innovation[M].New York:Oxford University Press, 1995.

[2] 张昱, 陈意云, 郑启龙.编译原理课程的教学方法和教材建设[J].中国大学教学, 2005 (7) :61-62.

[3] 张昱.编译原理课程实验方案设计与实施[EB/OL].[2009-7-26], http://staff.ustc.edu.cn/yuzhang/compiler/index.html.

[4] 张昱, 陈意云.编译原理课程实践改革探索[J].计算机教育, 2008 (8) :24-26.

[5] 张冬茉, 方习文.编译原理课程设计的教学实践与改革[J].实验室研究与探索, 2012, 31 (11) :134-137.

本文来自 99学术网(www.99xueshu.com),转载请保留网址和出处

上一篇:网络境域下基于“00后”大学生人际交往问题的思想政治教育研究下一篇:复发性口腔溃疡的中西医治疗体会

热门文章

编译原理论文