谭浩强
近十多年来我对计算机基础教育的教材建设作了较深入的探讨和大量的实践 。在长期的教学和教材编写工作实践中,我有以下一些体会:
一、教材是教学指导思想、培养目标、课程基本要求的具体体现。
在制订出各专业的培养目标、课程的基本要求以及教学指导思想以后,最重要的工作就是按照上述精神编写出高质量的教材。一本好的教材往往就能实现教学基本要求,即使教师讲课中有某些不足,学生通过自学教材很容易弥补。因此,每门课程都要搞出经过千锤百炼、经过实践考验的高质量的教材,以保证教学质量。
评价一本教材的质量,应当看它是否体现了教学指导思想和课程基本要求,是否有利于提高教学质量,是否适合本领域对象的特点。对非计算机专业学生的教学,很大程度上是计算机 的普及教育和基础教育,显然不能用“阳春白雪”的标准来要求“下里巴人”。
我在编写每一本教材时,都首先认真考虑:通过这门课应达到什么要求,哪些属于基本要求范围,哪些不属于。凡不属于要求范围的,只能“忍痛割爱”。决不能盲目追求“高而全”,而失去自己的读者,失去自己的阵地。
非计算机专业的学生占全体大学生95%以上,这个广大的领域是不应该被忽视的。编出一套适合于这个领域使用的计算机教材,是一项填补空白工作,具有重大意义。
二、编写一本好教材,不仅需要具有较高的业务水平,还应当研究和掌握计算机基础教材的特点
我认为,要写好一本教材,必须首先对自己的读者对象有比较透的了解。非计算机专业学生与计算机专业学生在许多方面具有不同的特点。例如,学习基础不同,专业爱好不同,学时数不同,将来应用方向不同等等。非计算机专业学生学习计算机知识的目的有二:一是学习计算机的基本知识,初步掌握“计算机意识”,这是信息时代知识分子的知识结构不可缺少的部分;二是为了把计算机技术应用于本专业领域。二者中后者更为重要。对非计算机专业来说,不是照搬计算机专业教材的体系才算系统性,而应当根据非 计算机专业的特点和需要组织一个新的体系。
计算机专业学生比较容易理解的一些概念,非计算机专业学生学习时却往往感到困难,他们还不习惯“计算机思维方法”。因此我们不仅要考虑在教材中介绍哪些计算机知识,更要考虑如何使读者比较容易地接受和理解这些内容,而后者更加困难。一本教材是否成功,关键也往往在于此。
根据我自己的体会,要写好一本计算机基础教材除了应当掌握必要的业务知识以外,在写作时还应当注意和具备以下几个方面: 1、明确而适当的教学要求;2、清晰的逻辑性;3、语言通俗易懂;4、丰富的例题;5、独特的风格。
我们把系列教材的特色归纳为十个字“新颖、实用、清晰、通俗、层次”,即:内容新颖、实用性强、概念清晰、通俗易懂、层次配套。经过几年的实践,证明这个方针是正确的、有效的。
有人曾问我:“你编写教材取得成功的秘诀是什么?”我回答说:“无非是使别人看得懂”。作者的心中要永远装着读者,不能想写什么就写什么,想怎么写就怎么写,而要设身处地地替读者考虑。我写书在写到每一部分时都要想一下:读者此时会出现什么问题? 他们最难理解的是什么? 然后有针对性地用启发的方式使读者循序渐进。因此读者说,作者好象看透了我们心的似的。我称之为作者要与读者“将心比心”。
一本好的教材必须具有启发性。我在教材中注意不断提出问题,不断引导读者思考,不断地把问题深化,一步一步地引导读者走向目标。读者看这样的教材不会感到枯燥无味,而会感到引人入胜。C语言是比较难学的,规则繁多,灵活多变。我在《C程序设计》(清华大学出版社)一书中采用了上述方法精心策划,全书贯穿启发性,把难点分散,通过精选的例题说明概念,读者反映学起来兴趣盎然不觉困难。我体会,作者必须懂得些心理学,研究读者的特点和认识规律。知己知彼,才能百战不殆。
三、在计算机基础教材中需要正确处理好几对矛盾。
针对非计算机专业学生的特点,在编写教材时常常会遇到以下一些矛盾需要处理,下面谈谈我的体会和看法:
1、系统理论与应用性的矛盾。对非计算机专业应以应用为主要目的,从应用的要求出发组织新的体系,而不能片面地强调理论的系统性而使内容过于庞杂。
2、简与繁的矛盾。在教师中有两种观点,一种希望教材简单些,例题少些,以便教师在讲课时补充发挥。另一种则认为教材叙述详细些,例题丰富些,便于自学,教师重点地讲授,课后请学生阅读教材。我倾向于后一种意见。因为像计算机语言的一些规定,完全可以少讲,学生上机即可掌握。如果教材太简单,学生无从查起,势必增加学习困难。
3、深度与广度的矛盾。在考虑课程设置时,由于总学时有限,必须充分考虑学生的知识结构,不能使学生的知识面太窄,因此,应当“广度优先”,让学生多学几门课程。在课程确定后编写教材时,应当根据需要决定内容的取舍,不能不分轻重,面面俱到,而应当突出重点,围绕重点深入展开,使学生能真正学到手。例如程序设计课程的重点是掌握算法,掌握初步的编程使用。不必要将所有语法规则一一详细介绍。在重点介绍基本内容之后,其他部分应当启发学生举一反三,自己支发展知识。
4、深奥与通俗的矛盾。应当善于用通俗易懂的语言叙述清楚深奥的原理。这二者是不矛盾的。不能从抽象到抽象,用术语解释术语。应当善于运用形象思维帮助学生建立起基本的概念。
5、一般与个别的矛盾,要善于通过个别推广到一般。从个别和具体入手便于理解,便于举一反三。例如:讲计算机语言,只要学好任一种语言,进而学习其它语言是不困难的。有人曾设想不用任一种具体的语言来进行教学,而代以抽象的“语言”,事实证明效果不好。我写教材的做法是:从实际中提出问题,通过例题介绍解题的方法,分析归纳出概念和结论。实践表明效果是好的。
四、教材内容必须不断更新,保持教材的先进性。
计算机技术日新月异地飞速发展,计算机教材内容的更新,这个任务较之其它课程尤为突出。例如老的BASIC版本更新为结构化的BASIC;FORTRAN IV更新为FORTRAN77:非结构化程序设计更新为结构化程序设计;将以介绍语法为主的“语言课”改变为以介绍程序设计为主的“程序设计课”;由介绍8位机发展为16位机等等。计算机教材的生存周期是比较短的,只有不断更新才能保持其存在价值和生命力。
五、编写教材应当有所创造,有自己的风格。
编写教材是一件创造性的劳动,是教师长期教学实践和研究实践的经验积累。每一个教师的心得与经验不尽相同,写出来的教材就会百花齐放,形成不同的特点与风格。我在讲COBOL语言课时,开始用别人写的教材,按COBOL程序四大部分:标识部——环境部——数据部——过程部这样的顺序讲,学生学起来感到困难,我讲起来也感到费劲。后来我作了大胆改革,一上来先讲过程部,后讲数据部,因为学过其它语言的学生理解过程部是不困难的,掌握了过程部之后,再进一步考察数据在内存中的存储形式,学生也就容易理解了。后来我在写COBOL教材时根据这个经验改变了原来的教材体系,采取了与多数COBOL书不同的写法,取得了成功。读者反映学起来容易入门,解决了学习的大障碍。应当说,如果没有我教学的实践和经验就不可能有革新的教材。我体会,教材是作者教学思想和教学经验的结晶。
六、应形成不同层次、不同风格的教材蓬勃发展、百花齐放、推陈出新的局面。
非计算机专业情况各异,各专业的要求和内容不尽相同,因此,不可能简单地以一、二种统编的教材包打天下,尤其不应当用行政的手段去指定和扎伊尔教材。而应该编写出版具有不同层次、不同内容、不同风格的教材,以适应不同的需要。教材的出版也应当遵循市场规律,既提倡互相学习,也提倡竞争。在一段时间内各种教材百花齐放,在实践中接受检验,通过优胜劣汰,会成长出一批优秀的教材。这几年,我们已看到了这样的可喜现象。
(原载国家教委《教材通讯》1992年6期)