谭浩强
按:这是谭浩强教授代表研究会在1994年10月举行的“全国高等院校计算机 基础教育研究会94学术年会”上所作报告的一部分,后刊登于《计算机世界》。
一、高等学校中计算机基础教育10年的发展
高等学校中非计算机教育在蓬勃地发展,出现了令人鼓舞的形势。现在高等学校中的计算机基础教育已经成为全国计算机教育的一个重要组成部分。回顾十多年来高校中计算机基础教育的发展过程,感到有许多东西值得总结和推广。
80年代初,正值我国高考制度恢复不久,高校建设百废待兴。当时高校面临的任务是:一方面是恢复已中断十多的学校运行机制,建立正常的教学秩序,迅速培养出一批合格的人才,以填补10年人才的断档。另一方面要努力缩小在科学技术上与发达国家的差距。改革开放使人们痛心地看到“文革”10年使我国失去了极好的发展机遇,与发达国家的差距大大地拉开了。尤其在计算机科学技术方面更为突出。80年代初,发达国家的计算机应用已达到相当水平,而我国的计算机应用几乎是一片空白。这是当时摆在我们面前的一个严峻的事实。
70年代末80年代初,在高校中只有计算机专业开设了计算机课程。而发达国家早已在学校、在社会上普及了计算机教育。他们的大学生一般都能熟练地使用计算机,计算机技术已渗透到其它课程之中,计算机已成为人们的常用工具。出国留学生反映:两个语言(外语和计算机语言)明显不如外国学生,严重地影响了专业的学习。许多学校已敏锐地提出必须在高校非计算机专业中进行计算机教育。一些学校陆续开设了计算机课程(基本上是BASIC语言)。
当时,究竟高校非计算机专业的计算机教育如何开展? 它的目的、要求是什么? 它在培养人才中占什么位置? 应设什么课程? 教学内容与方法和计算机专业有什么不同? 教材应如何组织? 师资队伍应如何组织与建设? 一系列的问题摆在我们面前,没有现成的经验可借鉴,没有明确的官方文件供执行,一切都需要我们去研究和探索。 当时所面临的情况可以概括为:
(1)我国高校非计算机专业的学生占全体大学生的95%以上,但是在这个重要的领域计算机教育基本上是“空白点”。
(2)对非计算机专业的计算机教育如何进行,当时高教部没有提出系统而明确的要求和规划,要求我们通过实践摸索经验,提出办法。
(3)师资力量薄弱。各校的计算机基础教育刚刚开始,还没有建立起一支稳定的师资队伍。
(4)缺乏适用的教材。初期有一些教师直接搬用计算机专业用的教材和教学方法,结果是失败的。80年代初,虽已有一些适合非计算机专业的教材出现,但为数很少,没有形成完整的教材体系,还未摸索出教材建设的完整规律。
(5)更重要的是非计算机专业的计算机教育,远未被各方面人士重视。相当多的人不重视、甚至瞧不起从事非计算机专业计算机教学的老师,认为“水平低”、“没意思”。一些有水平的老师不愿从事非计算机专业的教学工作和研究工作。在职称、待遇方面也往往有不公正的地方。教师队伍不稳定,学时太少、设备不足,严重影响着教学质量的提高。
经过十年来全国各高校从事计算机基础教育的教师们的共同努力,现在情况已有很大的变化,这体现在以下七个方面:
(1)由工科扩展到理科,进而到经济、农林医、师范,最近,文科专业也普遍开设了计算机课程,连体育、艺术院校也开始开设计了计算机课程或开展了计算机应用。
(2)程序设计,由初期的只开设BASIC语言,发展到FORTRAN、PASCAL、COBOL、甚至C语言,许多学生掌握了二门以上的计算机语言。由开始时的非结构化程序设计发展到现在全部采用结构化程序设计方法,按良好的风格培 养学生。由原来侧重语法介绍,发展为以程序设计为主线,注重算法设计。这样,学生使用任何一种语言来编程都不会是困难的。
(3)由只开程序设计一种课程,发展为四个层次的教学体系。这四个层次是全国高校计算机基础教育研究会于1986年提出并在实践中不断完善的。多数院校已按这四个层次的方案开设了多门课程(必修和选修课)。
(4)师资也由原来临时抓差、现炒现卖、水平较差的不稳定状态,发展为已拥有几千人规模的,具有一定教学、科研水平的,比较稳定的师资队伍。
(5)已出版了上百种教材和配套参考书。其中《高等学校计算机基础系列教材》、《计算机基础教育丛书》等是根据“新颖、实用、清晰、通俗、层次”的原则编写的,质量较高,受到广泛好评。
(6)创造和积累了比较系统的经验,形成了比较成熟的方案、教学基本要求和教学大纲、教学方法等。可以说,在全国高校的共同努力下,已初步形成了行之有效的适合中国国情的一套计算机基础教育体系。
(7)专门研究高校非计算机专业计算机教育的全国一级学术团体——全国高等院校计算机 基础教育研究会迅速发展壮大,它为教师提供了研究切磋交流的场合和发表研究成果的论坛,有力地推动了全国高校中非计算机专业中的计算机教育。
在实践中,大家逐渐形成了以下几点共识:
(1)计算机知识应当成为当代大学生知识结构中不可缺少的重要组成部分。在全体大学生中进行计算机教育,使所有学生具有一定的计算机知识和应用计算机的能力,是高等学校教学改革中的一项具有战略意义的任务。这是提高教学质量的重要标志。如果不解决这个任务,我国高等学校的教学质量就难以达到或超过发达国家大学的水平。
(2)计算机人才是由两部分人组成的:①由计算机专业系统培养的从事计算机理论和计算机系统研究与生产的专门人才;②在各行各业工作的计算机应用人才。计算机应用人才的特点 是既熟悉自己所从事的专业,又掌握计算机技术,把计算机技术用于各行各业各个领域。他们是复合型人才,具有不可代替的优势。大学的非计算机专业培养的是计算机应用人才。今天高校非计算机专业中的计算机教育,在相当大的程度上影响着将来我国各行各业应用计算机的水平。必须从“计算机应用”这个角度来规划计算机基础教育。
(3)非计算机专业中的计算机教育,无论培养目标、课程设置、课程内容、教材体系、教学方法、师资队伍等方面都与计算机专业有很大的不同,不能照搬计算机专业的那一套,必须从实际出发另辟蹊径。
(4)计算机基础课程应当和外语、数学一样应成为所有大学必修的公共基础课。“计算机基础教育”这一名称,具有双重含义:它既是进一步深入学习计算机科学技术的基础,又是学习专业技术所必须掌握的基础知识。随着科学技术的发展、计算机技术向各个学科的渗透以及教学改革的深入开展,这个作用将日益显著地表现出来。
(5)在非计算机专业中进行计算机教育,要以应用为目的、以应用为出发点,要从这个角度来组织知识体系。但是“应用”与“使用”不是一个概念,“应用”,不仅是会进行计算机操作,还应该具有一定的开发能力。应用并不排斥理论,为了开展计算机应用,当然需要学习和掌握有关的知识。随着应用的深入,需要逐步扩展知识领域。但这些知识的学习,应是围绕“应用”进行的。不能过分强调课程的理论系统性、体系完整性,不能照搬计算机专业的理论课程或进行简单的“浓缩”处理。
二、在非计算机专业中进行计算机教育的模式
人们的知识结构是随着社会经济和科学技术的发展而变化的。在封建时代,会写八股文的就算知识分子。进入信息时代,人们如果不懂计算机、不会使用计算机就是“信息时代的文盲 ”。现在“计算机知识是第二文化”的观点已被广泛接受。问题是:大学中的非计算机专业应进行哪些内容的计算机教育? 应该如何循序渐进地学习计算机知识?
这里还牵涉到一个问题:大学生学习计算机知识的目的是什么? 有人认为:既然计算机是工具,因此只要学会操作工具就行了,故把计算机教育当作技能训练或职业教育。我们认为这样的认识是过于狭窄了。进行计算机教育的目的至少应该包括以下几点:
(1)使全体学生建立起“计算机意识”。什么叫计算机意识? 首先是具有用计算机解决面临任务的强烈愿望。作为新时期的各级领导人,有这个意识和没有这个意识是大不一样的。其次,知识什么问题能用计算机解决,什么问题不能用计算机解决,知道计算机的工作方式,懂得如何有效地使用计算机。
(2)要作为一种现代科学文化知识来普及。即使将来不直接从事计算机应用,但也应当懂得计算机的基本知识,正如数学、物理、外语都是一种文化知识一样,是每个知识分子所必须具备的。
(3)使各专业学生都能掌握计算机这样一种现代化的工具。计算机既是最先进的科学技术的结晶,又是大众化的工具。社会发展到今天,各门学科都已普遍采用了计算机技术,因此,不掌握计算机这一工具,不仅难以驾驭现代科学技术,而且在本领域工作中也会落伍,甚至寸步难行。学习计算机知识,既为了当前的需要,又为了将来的发展。
(4)使学生具有用计算机解决实际问题的能力,也就是要具有一定的开发能力。这就应当学习一定的计算机理论与方法(如程序设计、软件工程方法、数据库开发等)。不能把大学生的计算机教育降低为简单的“会操作计算机”,这样就混淆了大学与职业高中、计算机应用人才与操作员的区别。
经过多次讨论,大家取得了一致的认识:非计算机专业面广人多、情况各异,因此,计算机教育必须认真研究学生的特点、专业的性质、将来工作的需要,实事求是地作出规划,不能一刀切。计算机应用是分层次的,各个专业应用计算机的深度是不同的。计算机教育也是分层次的,不同的专业有不同的要求,需要培养出不同层次的计算机应用人才。
1985年,研究会在总结各校经验的基础上,提出了按“四个层次”设置课程的方案,供各校参考。
- 第一层次:计算机基本知识和高级语言程序设计。
- 第二层次:微型计算机原理与应用。
- 第三层次:软件技术基础。
- 第四层次:结合各个专业,开设有关计算机应用课程(如CAD、计算机控制、计算机情报检索 、信息管理等)。
四个层次的方案受到各校欢迎,许多学校按此设置课程。“四个层次”方案的提出和推广,有效推动了各校的计算机基础教育。在实践中,又总结了一些新的经验,提出了一些新的看法:
(1)《微机原理与应用》,牵涉到硬件知识,应作为机电专业的必学课程。在学时紧张的情况下,一般院校的非机电专业可作为提高性的课程(或选修)。
(2)由于计算机应用软件日益丰富,计算机日益成为人们的常用工具,要求大学生应掌握计算机的有关操作使用。如果一个学生只会编写BASIC程序,而不会输入一篇中文文章,不懂得数据库,不会选购计算机,显然也是不能满足要求的。不少学校提出,应当拓宽学习和应用的范围,在学习程序设计之前,应先学习“微机应用基础”。
(3)文科专业将来应用计算机的领域主要是文字处理和数据管理,而不是编写程序,因而不宜对一切专业都提出程序设计的统一要求。对文科一般学生来说,只需具有程序设计的一般知识即可。
根据前几年的实践,经过充分讨论,研究会又提出了新的四个层次方案:
- 第一层次:计算机基础知识和微机系统的操作使用(包括DOS操作命令、中文文字处理和表处理、微机数据库的使用等)。这是一切计算机应用人员都应当掌握的最初级的层次。
- 第二层次:高级语言程序设计,要求学生能用一种高级语言(如BASIC、FORTRAN、PASCAL、C )或和数据库语言(dBASE Ⅲ、FOXBASE或FOXPRO)熟练地编写程序。程序设计是计算机应用人员的基本功。
- 第三层次:进一步学习计算机软硬件知识,具有开发应用软件的初步知识和能力或具有计算机应用系统的初步分析设计能力。根据不同专业分别向“偏硬”和“偏软”方向发展。
- 第四层次:结合各专业需要,开设较深入的计算机应用课程。
研究会还为每一层次提出了应开设的课程:第一层次开设“微机系统应用基础”。第二层次开设“高级语言程序设计”,并在学完该课程后尽可能按排一次程序设计(或大作业)。第三层次中的“偏硬”方向可开设“微机原理与应用”,“偏软”方向可学习“软件技术基础”或“软件开发技术”。
它的思路是这样的:第一层次是所有大学生(包括理工科和文科)都应达到的层次。理工、财 经、农林医等专业应达到第二层次,即至少应该学习“微机应用基础”和“高级语言程序设计”。机电类或控制类学生还应当有一定的硬件知识,要学习“微机原理与应用”。而非控制类学生可以向偏软的方向提高,进一步掌握软件的知识和应用能力。因为只初步学习“高级语言程序设计”课程是不够的,只能编制小程序而不能编制大程序。 在学习程序设计课程之后有两个分支:一是扩展知识面,学习“软件技术基础”(内容包括操作系统的简单原理与使用;实用数据结构;数据库技术;编译的基本方法;网络初步知识等)。另一个方向是沿着程序设计的方向提高,在已学习一门高级语言程序设计的基础上,着重提高程序设计的能力,学习“软件开发技术”(内容包括软件开发环境、软件工程原理 、结构化程序设计方法、算法设计、程序的调试与测试等)。这两种思路,一是扩展软件知 识,一是提高程序设计能力。究竟哪一种更合适一些,还需要摸索经验。
目前,不少重点大学已开设了三个层次的课程,并结合专业需要开设了第四层次的课程,已在毕业设计、毕业论文工作中较深入地应用了计算机。
国家教委工科计算机基础课程教学指导委员会1990年成立以后,在各校开展计算机教育的基础上,经过上下结合,制定了前三个层次5门课(微机系统应用基础、高级语言程序设计、微机原理与应用、软件技术基础、软件开发技术)的基本要求,报国家教委批准后下发全国高校参照执行。
近两年来,许多省市组织的大学生计算机水平测试和国家教委考试中心推出的“全国计算机等级考试”也是基本上按以上几个层次分等级进行的。事实证明,四个层次的方案是行之有效的,它帮助和促进了各校的计算机基础教育规范化和质量的提高。
以上层次结构方案的特点是:
(1)既有基本的要求,又有提高的要求,既考虑到一般院校,也考虑到重点院校,各校可以根据需要与可能选择不同的层次和课程。
(2)模块结构。不同学校不同专业可以根据不同需要将不同模块组成不同课程,具有较大的灵活性。
(3)每一层次的内容以及各门课程的内容是动态的,将根据计算机技术的发展而随时补充或修改。例如第一层次的“微机系统应用基础”课程中的文字处理软件,已用WPS取代了Words tar,数据库管理系统已由dBASEⅢ变成了FOXBASE。
三、教材是计算机基础教育的基本建设
要搞好教材建设,应该形成以下几点共识:
(1)教材是教学指导思想、培养目标、课程基本要求的具体体现。
教材与专著不同,不能脱离教学基本要求孤立地追求学术的“高、精、尖”。评价一本教材的质量,应当看它是否体现了教学指导思想和课程基本要求,是否有利于提高教学质量,是否适合本领域对象的特点。每一层次的教材都有自己的评价标准,计算机专业的和非计算机专业的、大学本科的和大学专科的,不能用同一个尺度来衡量。有人容易轻视计算机基础教育,认为水平不如计算机专业,在评优秀教材时往往将非计算机专业的教材拥挤在外。这显 然是不对的。实际上,能够真正针对本领域需要,创立一个新的教学体系,用最少的学时使学生学到最多的、对他们最有用的知识是不容易的。这也是一项高水平的教学研究工作。我们的任务是下苦功夫搞出具有本领域特色的教材,决不能妄自菲薄,片面攀比,盲目追求“高而全”,从而失去自己的读者,失去自己的阵地。
(2)编写好一本好教材,不仅需要具有较高的业务水平,还应当研究和掌握计算机基础教材的特点,写出受本领域读者欢迎,具有自己特色的教材。 应该对自己的读者对象有比较深透的了解。我们不仅要考虑在教材中介绍哪些计算机知识,更要考虑创造一种新的课程体系和教学方法,使学生比较容易接受和理解,而后者往往比前者更加困难。一本教材是否成功,关键也往往在于此。
一本好的教材必须具有启发性,要循序渐进地提出问题,不断引导读者思考,不断地把问题深入,一步一步地引导读者走向目标。教材的作者必须懂得一些心理学,必须研究读者的特点和认识规律。
(3)必须细致地研究和处理好教材体系和内容的一些矛盾。如:系统理论与应用的矛盾;深度与广度的矛盾;简与繁的矛盾;深奥与通俗的矛盾;一般与个别的矛盾等。
(4)教材内容必须不断更新,保持教材的先进性。
(5)写教材应当有自己的创造,有自己的风格。教材是作者教学思想和教学经验的结晶。每一个教师在长期的教学实践中必然有许多心得和宝贵经验。应当把它们体现到教材中,每一个教师的心得与经验不尽相同,写出来的教材就会有不同的特色与风格。
(6)应形成不同层次、不同风格的教材蓬勃发展、百花齐放、推陈出新的局面。
我们对教材建设提出了十个字:“新颖、实用、清晰、通俗、层次”。即内容新颖、实用性强、概念清晰、通俗易懂、层次配套。经过几年的实践,证明这个方针是正确的、有效的。 根据许多老师编写教材的成功经验,要写好一本计算机基础教材除了掌握必要的业务知识以外,还应当具有以下几个要素:①明确而适当的教学要求;②清晰的逻辑性;③通俗易懂的语言;④有丰富的例题;⑤具有独特的风格。
编写教材是一件极为严肃的工作,要对千万学生负责。必须组织有丰富教学经验、教学水平高的教师编写教材。目前,不宜普遍提倡所有学校所有教师都来编教材,而是提倡编写有特色的教材,编写填补空白的教材和超过现有水平的教材。当前值得注意的一个问题,就是教委指出的:“尤其是部分地区出现的多人自愿联合、协作编写,凑足一定印数,资助出版,分摊包销使用的教材,质量问题更多”。这种情况在我们计算机基础教材中同样存在。有的地区和学校只用本地区或本校教师写的教材,外面的教材再也不能采用,形成一个封闭系统。教委指出:“千万不要搞自我封闭,自我封闭是不好的,自成一个体系,只选自编教材,这个做法是不可取的”。我们认为,教材的作者不宜太多,一般不应超过三人。各校教师应当有权选择使用国内出版的优秀教材,不要片面强调提高学校教材的自编率。
四、创造新形势下计算机基础教育的新方法
当前,高校中的教学改革在深入进行,计算机科学技术的发展又十分迅速。我们正处在我国第二次计算机普及的高潮之中。从现在起到2000年的几年内,我国的计算机应用将会有很大的发展,这对这段时期大学毕业的科技人员、管理人员以及其它人员提出了更高的要求。因此高校中计算机基础教育无论在要求和内容方面都应该不断发展,以适应新形势的要求。
我认为,要使计算机基础教育上一个台阶,应解决三个问题:
(1)课程设置与课程内容的改革。要根据计算机应用的发展来调整课程,尤其需要掌握新软件的使用。既要使课程有相对稳定性,又不要使它落后于发展,并具有灵活性和适应性。计算机课程与其它课程的一个重要区别就在于它的动态性很强,需要不断调整内容以适应要求 。
(2)将计算机技术渗透到其它各课程中,并且大力开展计算机应用与开发,为学生创造更好的实践环境。只有解决好这个问题才能使大学生在整个大学学习期间不间断地使用计算机,使计算机教育不仅仅是孤立的几个“点”(设置几个课),把学习课程与应用计算机结合起来,真正做到“四年不断线”。
(3)教学手段与方法的改革,特别是大力开展计算机辅助教学(CAI),搞好试题库建设。关于课程改革,全国高校计算机基础教育研究会副理事长、国家教委工科计算机基础课程教学指导委员会委员史济民教授最近提出了“按知识单元组织课程”的建议。在经过调查研究和专家论证的基础上,列出了大学生可能涉及的若干知识领域和若干知识单元,不同学校不同专业可以根据需要从中选择所需的知识单元组织成一门新课程。知识单元及其内容可以根据发展随时调整。这样做的好处是:增加了灵活性和适应性。例如在实行学分制的学校,可以在学习必修课的基础上,根据自己的情况选修某几个知识单元,以获取相应的学分。各校对此方案产生了很大的兴趣,表示要深入研究、积极探索,以取得经验。 由于全国各校计算机教育发展不平衡,条件也有很大差别,不可能在同一时间对不同的学校提出一样的要求,只能是“各按步伐,共同前进”。在多数学校继续推行“四个层次”方案的同时,少数条件较好的学校(特别是重点学校)可按更高的要求先行一步,总结新的经验,然后以点带面,推动全局。我们希望在集思广益的基础上,经过二三年的努力,使高校的计算机教育出现一个新的局面。
(1995年5月10日 《计算机世界》