Ch解释计算平台在计算机程序设计基础课程中的应用评价
2009-06-15郑莉闫兆乾毛希平
郑 莉 闫兆乾 毛希平
文章编号:1672-5913(2009)05-0052-04
摘要:计算机程序设计基础是一门在各学校、各专业都普遍开设的基础课,其中多数以C语言作为入门语言。选择什么样的解释和计算平台能够更有利于学生的学习,从而有效地实现教学目标呢?本文通过一组学生志愿者对不同学习软件的应用体验和评价,说明了Ch解释器可以作为C语言入门课程的一个很好的选择。
关键词:程序设计;C语言;解释计算平台;Ch
中图分类号:G642
文献标识码:B
1引言
目前,计算机程序设计课程在各个学校都普遍作为基础课开设,而其中大多数都选择用C语言作为入门语言。C语言在科研和工程实践中有着非常广泛的应用,这也正是大多数学校将C语言作为入门语言来讲授的主要原因之一。由于C语言本身的特点,它并不是一个最好的教学语言,这就需要我们在教学内容的设计和实验环境的选择上更好地兼顾实用性与教学目标。从实用性的角度考虑,选择一个目前广泛应用的开发平台,可以使学生快速地学以致用;而从教学目标来看,这门课的主要目的是讲授程序设计的基本原理、方法,应该选择一个简洁易用的编译环境,使学生能够集中精力,打好基础。
本文从教学目标出发讨论计算机程序设计课程实验环境的选择,重点列出了初学C语言的学生对几种不同C语言环境应用体验的对比。
2计算机程序设计基础的教学目标
计算机程序设计基础是很多学校的程序设计入门课程,除了计算机专业,绝大多数理工科专业也都开设了这门课程。很多学校的非计算机专业都只开设了这一门与计算机软件相关的必修课,因此对于非计算机专业的程序设计课程来说,这门课承载了太多任务。
以清华大学全校性基础课“计算机程序设计基础”为例,我们的课程教学目标包括:介绍C语言的基本语法;讲授程序设计的基本原理和方法;培养学生的计算思维;介绍数据结构的基础知识和简单常用的算法;介绍软件工程的基础知识并使学生通过项目训练体验软件开发的过程。
为了在有限的学时内实现上述教学目标,我们将教学环节分为大课、基础实验、项目训练几个环节,分别实现不同的教学目标。大课主要讲解原理、方法,培养学生的计算思维能力;基础实验帮助学生验证和巩固基础语法、培养学生基本的编程能力;项目训练使学生体会一个完整的软件开发过程和开发方法。
3初学者对几种C语言开发环境的体验和评价
为了在上述各个环节中有效地实现不同的教学目标,我们在实验室配置了多元化的实验环境,包括不同的C语言开发平台:Ch 6.1[1]、Turbo C++ 3.0和微软的Visual C++ 6.0、Visual C++ 2005。在基础实验中,我们推荐学生使用Ch和Turbo C++ 这两种比较简单易用的语言环境;在项目训练中,学生自选题目,不限制语言工具。
我们从初学C语言的学生中募集了16位志愿者,以完成基础实验为目标,对几种环境进行了比较。这16位学生分别来自经管、化工、水利、材料、生物等非信息类专业。本次体验和评价活动安排在开学初,参加活动的16名学生刚刚上过3学时“计算机程序设计基础”大课、4学时实验课,除此以外没有任何程序设计经验。
(1) 活动所用课时:约6个小时。
(2) 实验方式:通过边讲边练的方式学习C语言的语法,让大家体会和掌握不同编译器的使用,最后请大家完成调查问卷。
(3) 问卷设计:为了对几种开发环境进行评估和比较,我们设计了一个调查问卷,请大家填写,主要有这些指标:
●界面设置(友好,便于操作)
●基本操作(简便、快捷)
●程序菜单(准确、清晰、无歧义)
●出错信息(简明准确、易于查找)
●断点设置(方便、有效)
●内存变量查看(便捷、准确)
●结果显示(方便、美观)
●项目管理(结构清晰、科学高效)
●程序稳定性(运行稳定,没有bug)
(4) 活动的课时安排
●第1、2小时:软件的基本操作
指导学生使用各种开发软件,重点讲解如何进行编译和调试,包括断点设置、单步调试等功能。通过手把手一步一步的指导,引导学生熟悉软件的基本操作,掌握程序编译或解释、调试的基本过程。
●第3、4小时:上机练习C语言的控制语句
练习使用C语言中的布尔变量、关系表达式和逻辑表达式、if分支和for循环等控制语句。通过使用逻辑表达式和控制语句,让学生进一步了解编译器和调试工具。
●第5、6课时:学生自由练习,对编译环境进行评价
学生填写调查问卷,并以自由陈述的方式写出自己的看法。
学生根据自己的使用体会,对Ch、Turbo C++和微软的Visual C++打分,分为很好、还不错、一般、较差、很差五个等级,分别打5、4、3、2、1分。将16位学生的评分进行累加(总分为80分),结果如表1所示。
总地来讲,学生对Ch的评价比较高,表1中最高的两个分数也都出自Ch,大部分学生都表示将会继续使用Ch作为自己的学习工具。
与Visual C++和Turbo C++相比,这里列出学生对Ch解释器的主要正面评价:
●体积小,方便安装
安装简单,适合初学者使用;安装后无需重启,适合在机房网吧等场所上机;安装过程简单,无需复杂设置。例如,最新版的Ch不到90MB,而Visual C++ 有30多GB。
●操作过程简单明了
新建项目时过程简单,易于学生入手;可以在缓冲区里同时打开多达20个文件,编写较大工程时非常方便;快捷键全面丰富,有助于提高编程和调试效率。图1是Ch的界面。
●有专门的使用帮助文件
方便初学者查找,有利于初学者入手;清晰明了的图示减轻了初学者学习的障碍;有全面的快捷键说明。
●界面美观,具有人性化的设计
各个功能块的作用明显;调试时控制台始终保持在最前,不必在代码界面和调试控制台之间频繁切换,如图2所示。
●调试功能全面
拥有一个典型的C语言开发环境所需要的所有运行和调试功能:可以设置多个断点;单步调试时的提示清晰明确;单击错误提示就可以直接跳转到有错误的那一行;无需编译链接就可以解释代码;在调试过程中可以更改变量的值,可以观测任何含有变量的表达式的值,甚至可以在任何时候调用函数。
在学习控制结构时,学生可以改变变量的值,观察每次不同的分支选择结果,以及在什么时候会进入无限循环。对一个写好的程序,也可以通过这个方式测试其稳定性。如图3所示,在调试和单步执行过程中,变量a和b及表达式sin(a)+cos(b)的值被监视和显示在调试窗格内。
●出色的文本编辑功能
具有代码块的折叠展开功能,让使用者在编写程序时一目了然,易于理解;自动对齐功能有助于初学者养成良好的书写习惯;在有多重嵌套或者代码较长的时候,对齐括号的功能方便使用者匹配括号;可以自动补齐文字,在变量、函数比较多的时候,使用者感觉非常方便;具有出色的文本查找替换以及书签功能。
可以按照多种不同的语法标记出不同的语言,可以用于以后其他语言的学习。支持C/Ch/C++、CSS、HTML、Make、SQL and PLSQL、TeX and LaTeX、XML。
●强大的Ch命令外壳(Command Shell)
可以直接执行一个完整的C程序代码,也可以单独执行一条语句,非常有利于学习。在学习关系运算和逻辑运算时,Ch命令外壳的这一功能发挥了很大作用。学生能够很直接地了解复杂表达式的值,而无须编写一段完整的程序。
可以用作控制台终端,执行Windows或者Unix的命令。
可以作为一个功能丰富的计算器,进行复杂的科学运算。比如大型数值运算、矩阵矢量运算、复数运算等。
可以作为一个简单的计算机字典,查询一些关键字的含义。Ch命令外壳各种有用的功能举例如图4所示。
与Visual C++ 和Turbo C++相比,Ch有诸如以上众多的优点,但也有美中不足之处。在目前发行的版本中,Ch专门的使用帮助文件(含.html和.pdf文档)只有英文和日文版,学生们期待早日推出中文版。
4结论
通常初学者对于复杂庞大的开发环境都有一种畏惧心理,不知如何下手,这严重影响了他们的动手实践积极性。根据这一组学生的体验情况来看,与Visual C++和Turbo C++相比,Ch比较适合作为C语言程序设计入门课程的实验环境,尤其是用于基础实验。计算机程序设计是实践性很强的一门课,必须通过大量的编程实践才能掌握。Ch简单易用而且功能完备,很受学生欢迎。
参考文献:
[1] Ch: An Embeddable C/C++ Interpreter,http://www.softintegration.com.