——以哈尔滨工业大学“C语言程序设计”国家精品课程为例
童占梅,冉 哲
(电子工业出版社,北京 100036)
【摘要】 中国高等教育正走在从扩大规模到提升质量的改革之路上。办学质量是高等学校的生命线,课程教学是高校的中心工作。笔者结合多年对高等教育专业课程和教材的研究,以哈尔滨工业大学 “C语言程序设计”国家精品课程为例,从5个方面阐述了如何提高大学专业课程和教材的质量。
【关键词】高校(大学);专业课程;专业课程教材;质量
【中图分类号】G717 【文献标识码】A 【文章编号】2095-5065(2013)05-0006-06
1 问题的由来
从宏观上看,中国已经成为世界第二大经济体,正在从劳动力大国向人力资源强国转变,国家未来的发展越来越依赖于教育的贡献。经济全球化、知识创新和技术创新正在以前所未有的速度改变着世界的面貌,互联网和数字化技术助推了国际优质高等教育资源和文化影响力的重新布局,所以,要想使我国高等教育在世界人才竞争的角逐中胜出任重而道远,其中,提高办学质量将是高校的核心工作。
从微观上看,一所大学的影响力体现在其教师和毕业生对社会的贡献上。清华大学老校长梅贻琦曾言:“所谓大学者,非谓有大楼之谓也,有大师之谓也。”既往正是这些大师用其教育智慧、渊博知识和精彩课程,影响了一代又一代学子,使他们成为国家的栋梁。历史走到今天,在这个缺乏大师的时代,名师与优秀课程同样是一个学校办学水平的标志和学校历史文化传承中的精神符号,更是大学社会责任的体现。
但在现实中,我们仍能看到高等教育存在诸多质量问题,比如随意开设某些大学课程,教学内容和方法陈旧过时,教材低水平重复出版,普遍的应试教育和学生厌学倾向等,致使一些大学毕业生的能力和素质不高,就业困难。这与学校的教学管理不当、教育从业人员素质不高等多种因素有关。同时我们也必须看到,很多像哈尔滨工业大学“C语言程序设计”国家精品课程这样的优秀课程团队,一直在以始终如一的沉甸甸的责任感、严谨治学的态度、不懈探索的精神,不断创造出教育奇迹,培养出优秀的建设人才,也书写着迈向一流大学的历史。笔者在与该团队长达十几年的合作中,不断学习、研究他们的教学经验,得到了很多有益的启示,以下基于这一典型案例,从5个方面探讨提高课程和教材质量的可能性,希望能对解决上述教育质量问题带来建设性的帮助。
2 影响课程与教材质量的5个方面
2.1 科学性
第一,要树立科学的教育理念。在大学,一门具有吸引力的优秀课程必定有其独到之处,这与课程设计者的教育理念和综合能力相关。笔者认为,除了深入透彻的领域知识内容之外,更重要的是抵达学习者心灵的沟通互动技巧,以及学习者真实的探索体验。正如美国麻省理工学院(MIT)第15任校长查尔斯·维斯特所说:教育的真正价值,不再是随时面临修正的知识本身,而是教学相长的互动过程。应当说,课程教学系统是由教师课程团队按照人类心理学、教育学和学科知识体系的客观规律而设计开发的一个复杂交互系统。交互对象是教师和学生,交互界面则是课程,这是学生在教师的带领下发现、理解、组织、应用、创造领域知识的思维训练过程,是“指导→激发→发现→探索→实践”的过程,而学生在交互体验中的美妙参与感是最具价值的教育活动,这一过程将固化为学生未来的能力和素质。好的课程在教会学生领域知识的同时,还将教会学生提出好的问题,获得新的洞见。这是大学专业教育的一种境界。
第二,要在科学的教育理念指导下,建立行之有效的教学模式。该团队正是上述科学教育理念的实践者。他们深知,创新是这个时代最需要的东西,大学应当是这样一个由激情驱动的地方,而大学课程要跟上时代的步伐。在长达十几年的课程改革实践中,他们与时俱进地在自己开发构建的先进的硬/软件教学系统上创立了“课堂上精讲→课后作业在线评测→综合实验机上练兵→网上考试编程实战→课外创新实践应用”的教学模式,实现了教、学、练相融,教、学、研相长。
第三,课程的知识体系要科学合理,适用于教学。比如,在教学实践中,该团队充分尊重学生的认知心理和教育规律,把从错误中学习作为学习的重要方面,所以他们编写的《C语言大学实用教程(第3版)》教材中加入了“第10章 C程序设计常见错误及解决方案”,每章最后的本章小结中给出了“本章常见编程错误列表”;在《C语言大学实用教程学习指导(第3版)》第3章案例分析中,不仅提供了“趣味典型案例分析”,更提供了各种典型的错误案例分析。这样的安排在同类技术书籍和教材中绝无仅有。显然,这对作者的学术研究背景和科研开发背景要求很高,难度很大,但这些知识内容却是非常有价值的。
第四,实践中坚持科学的态度和方法。比如,每一次的课程改革和教材修订,该团队都会在课程中先期试用,充分听取各位授课教师和学生的反馈,同时广泛收集使用该教材的其他院校教师的反馈信息,然后制定符合教学可读性和可用性要求的新的修订方案,并在新版教材出版前,让众多学生和教师先期试读,提供有价值的修改意见和建议,使课程和教材真正适合教学的需求。再比如,在该团队编写的教材中,详细给出了常用概念、名词、语句、运算符、数据类型、算法的索引表,于细微之处体现一种科学、严谨的治学精神。
2.2 学术性
在国内大学的考评体系中,有一种偏见和误读,即认为科研是学术,而教学则沦为非学术的“副业”。笔者非常认同美国麻省理工学院(MIT)校长查尔斯·维斯特的观点:大学公开课是一种学术表达方式。同理,大学专业课程也是一种学术表达。
首先,大学专业课程内容是以学术研究为基础形成的较完整、严谨的领域知识体系,这种学术研究的高度、深度、广度、视角,以及研究者发现、组织、传播领域知识的能力,决定了课程内容的独特组织形态和表达方式,特别是一些新的课程或发展非常快的课程更是如此。其次,学术研究成果带来的快速的知识创新和技术创新,为教学平台和教学手段的实现提供了更多的可能性。再次,将科研和学术研究的成果反哺大学专业课程,将带来与时俱进的探索成果和课程发展动力。
毋容置疑,“C语言程序设计”课程已在高校开设30多年,经典教材和授课方式已经深入人心,通常是先讲C语言的语法,再用简单的数学问题编程实例进行语法验证,然后进行有限的编程实验和应试考试,仅此而已。笔者认为,这种历史遗留下来的教学体系只能让学生了解程序设计是怎么一回事,只能叫编程扫盲。30多年后的今天,社会已进入信息化时代,软件和软件开发遍布所有行业,无所不在,所以大学生面临的不再是了解程序设计,而是要学会应用程序设计的思想和方法解决实际问题,即具有计算思维能力。所以这门大学专业基础课程应当是与时俱进的,从语法到设计、从应试到应用、从了解到会用需要新的跨越。
哈尔滨工业大学“C语言程序设计”课程团队为此进行了长达十几年的课程改革实践。教、学、研相长,教学与学术互动已是常态,它滋养着这个团队站在知识和技术的前沿,不断改革创新,使之成为易懂、专业、时尚、实用、规范、广受欢迎的优秀课程。该团队的学术研究与教学互动活动多样、生动、具体、有效。以下是几个小片断。
该团队的教师都是学有所长的某领域的研究者和开发者,有些还是硕士生导师和博士生导师,他们将自己的科研和学术研究反哺给教学,大大提高了教学质量和水平。比如,该团队在国家自然科学基金项目资助下,开发了具有智能评判功能的C语言编程题考试自动评分系统,并真正实现了无纸化考试;在省新世纪高等教育教学改革工程项目的资助下,开发了基于Web 2.0技术的具有在线评测与反抄袭功能的交互式在线网络教学平台(http://cms.hit.edu.cn)等。参与项目的教师从项目开发中积累了丰富的开发经验和对技术的深刻理解,反过来对课程内容和技术的把握更加精准。在过去的几年中,该团队与美国卡内基梅隆大学、宾夕法尼亚大学等多所国外高校合作,选派年轻教师进行为期3个月到1年不等的访学交流,使他们开拓视野,交流先进的思想和技术,提高教学和科研水平。他们热衷于研究国际上知名高校的课程体系、教学平台和手段,以及国际上享有盛誉的经典教材的深刻的技术典范和教育思想,并在教学中加以融合和体现。由此还成功开设了C语言国家双语教学示范课程。
从2008年开始,该团队秉承“创新无止境,实践出真知”的教育理念,将科研和学术研究方法引入课堂。他们在教学实践环节的末端设立了年度创新实践项目(Yearly Project),鼓励学生按照个人的专业兴趣进行探索性学习,并引导学生按照科研和学术研究的思路,从应用的角度自主选题,进行项目自主设计并宣讲开题报告,在自主管理项目进程中实现技术功能,最后进行项目结题的验收答辩。在整个过程中,学生从一次次失败中找到成功的路径,从体验中学有所成。网站生成专家、课程表安排系统、音乐自动评分机、视频书签、Copy旋风、鹿死谁手(鹿棋)、导弹拦截系统模拟、诗词搜索、搜救机器人、电子集市、指纹加密软件、ACM新手区优化、路面交通状况分析系统、炽天使英语在线、U-magician……这些学生的探索题目充满时代气息和应用价值,让师生共同收获了学习与研究的丰硕成果。该课程团队在长期的教学和学术研究互动中,积累和沉淀了深厚的领域知识、生动有趣的教学案例,创建了基于现代网络与数字媒体技术的互动教学平台和系统,编写了具有广泛影响力的《C语言大学实用教程》、《C语言大学实用教程学习指导》、《C++程序设计(汉英双语版)》教材,翻译了《C大学教程(第五版)》,并在国际期刊Information and Software Technology、国际会议、国内核心期刊上发表教学研究论文30多篇,真正做到了与世界高水平大学课程的发展同步。
2.3 先进性
有道是,当你在一个领域工作,不断推进知识的前沿时,你会意识到什么是可能的。同时,新技术革命让我们看到,我们一生的学习方式,将受到数字媒体和互联网的巨大影响。该团队用他们的实践诠释了这些观点,并创建了与众不同的先进的“理念——体系——内容——方法——效果”整体课程教学方案,并进行了一系列原创性探索。其课程与教材的先进性主要体现在以下几个方面。
第一,具有开放、务实、先进的教育教学理念,并勇于付诸教学实践。正如前文所述,该团队深谙教育互动之道,科学设计教学体系,让学生真正成为学习的主体,以能力培养为本,善于掌控“指导、激发、发现、探索、实践”的教育过程,重要的是教会学生计算思维的思想和方法,并激发学生自主学习和勇于创新的热忱。
第二,冲破应试教育的束缚,以应用为目标,重新构建课程和教材的知识体系与教学模式。在知识体系方面,该团队力求将C语言程序设计从应试课程变为实践工具,以程序设计方法为主线,而非以语法知识为主线。他们将程序设计中最基本、最新的思想、方法和规则挖掘出来,用C语言作为描述工具,辅以精心设计的趣味性经典实例,典型例题一题多解,强化知识点、算法、编程方法和技巧;将程序设计放在软件工程应用这一大背景下,将程序测试、程序调试与排错、软件的健壮性与代码风格,结构化与模块化设计方法等软件工程知识有机融入课程内容,实现了上下游课程与知识的衔接和互动;将在错误中学习作为学习的一个方面,专门安排了一章C语言程序设计常见错误及解决方案,并在学习指导和实践教学中给出错误案例分析实例;实践教学中突出趣味性和实用性,强调程序设计方法的训练。
在教学模式方面,该团队依托“课堂上精讲→课后作业在线评测→综合实验机上练兵→网上考试编程实战→课外创新实践应用”的先进教学模式,在自主开发的一系列教学平台上成功实现了教、学、练相融,教、学、研相长。
第三,创建丰富、先进、实用的教学资源和教学平台。比如,该团队利用自主开发的编程题考试自动评分系统及试卷和题库管理系统,真正实现了课程的无纸化考试。具有在线评测与反抄袭功能的交互式在线网络教学平台和面向学生自主学习和能力测试的作业系统,让学生在利用多媒体教学课件、视频课堂、教学案例、实验范例、课程设计实例、网络学习社区等学习资源的同时,真正感受到数字化与网络化带来的学习便利和自主学习的可能性。这些都标志着该课程已经处在大学课程教学的前沿,代表着未来大学教育的趋势和方向。
2.4 丰富性
在多年的教学改革探索中,该团队积累了丰富的课程教学资源——一个丰富的主题知识库。其课程和教材的丰富性主要体现在如下几方面。
第一,知识内容丰富多样,共同作用。课程和教材采用问题驱动和案例驱动的方式展开,课程团队以程序设计方法为主线,设计了大量的典型实例,且典型例题一题多解,充分揭示多种思维模式和算法内涵;课后习题题型丰富多样,题量充分,真正紧扣教学目标和知识点;上机实验题目丰富有趣,既为一般学生设计了课内上机实验题目,也为有潜力的学生设计了学习提高的课外上机实验题目;学习指导中针对学生在学习中容易出现的问题,提供经典优秀案例分析和大量典型的错误案例分析,让学生全方位地掌握、理解、运用知识点来解决实际问题。
第二,教学资源、教学手段、教学平台丰富多样,互补互动。比如,课程主教材《C语言大学实用教程(第3版)》和辅助教材《C语言大学实用教程学习指导(第3版)》覆盖了理论教学、作业、实验教学、课程设计的教学环节;电子课件、实例源代码、上机实验题目源代码、典型案例分析源代码和错误案例分析源代码下载,为教师进行教学活动提供便利;C语言编程题自动评分系统和题库管理系统,实现了无纸化考试;视频课堂、ACM在线评判系统、在线网络教学系统学习社区、年度创新实践项目等,为学生网络化自主学习和个性化学习带来了便利。
2.5 适用性
笔者认为,课程和教材的适用性更多地体现在课程设计和教学效果的反馈中。
第一,该课程教学模式和知识体系设计科学、合理、易于实现,可用性好。
第二,该课程知识容量、教学环节与教学计划学时相匹配。在《C语言大学实用教程(第3版)》和《C语言大学实用教程学习指导(第3版)》前言中,分别给出了理论学时分配表和上机实验安排。
第三,该课程知识的深度、广度、难度适合特定的读者对象。对不同类型的学习对象,还给出了特别的选择考虑。比如,不同专业学生计划学时安排不同;例题一题多解,对一般学生只要求掌握最基本的解法;上机实验为一般学生和有潜力的学生分别设计了课内上机实验题目和课外实验题目等。
第四,课程内容表达简明、准确、形象、生动,具有原创性和可读性。该课程不可避免地包括一些深奥难懂的知识,如何通俗化地讲清讲透,需要恰当的表达技巧和形象的表达方式。该课程教材就充分展现了作者非凡的表达功力。
第五,教学软/硬件环境易于实现和搭建,教学资源丰富可用,为教学全过程提供物质保障和技术支持。该课程的教学资源包括纸质课程主、辅、英语、双语教材一套,面向教师的电子课件和实例源代码,面向教师的课程管理网站(国家精品课程网站),面向读者的教材网站,实验环境Code::Block安装程序,具有在线评判与反抄袭功能的交互式在线网络教学平台,哈尔滨工业大学ACM网站(HOJ),基于C/S和B/S 结构的C语言编程题考试自动评分系统,面向学生自主学习和能力测试的作业系统,C语言试卷和题库管理系统等。
Google给出的该课程在线教学网站http://cms.hit.edu.cn的页面评级为6,在国内同类网站中最高。目前注册用户达6 000多人,日均页面浏览量超过5 000次。访问者来自美国、日本、加拿大、德国、英国、法国、中国台湾和中国香港等国家和地区。可见其课程的吸引力和影响力。
在百度、当当、豆瓣读书、亚马逊、来买书、购物党等图书销售网站,有很多读者的网上评论,如:……这是一本讲C语言的好书——讲解深入浅出,有时还能有点幽默,我就像看小说一样看完了;零起点,而且细节部分讲得很透彻,例子也多;……不错的大学C教科书——容易让人对C产生兴趣,也可以看出编者确实对C有丰富强烈的兴趣,很容易感染读者,谢谢这本C启蒙的教科书,让我在大学期间还可以发现自己的兴趣;……很大程度上解决了过去一些同类教材的通病;……书非常不错,对于提高动手能力非常有帮助;……辅助教材与主教材配套,辅助作用很强,做课后题巩固了课本所学知识,且后面的案例分析很好……
主教材《C语言大学实用教程》和辅助教材《C语言大学实用教程学习指导》发行量已超过10万册,有近百所高校将其选为C语言课程教材;收到读者上千封反馈来信;有近2 000人次下载电子课件;有近30个教学单位免费使用了C语言编程题考试评分系统。这些数据都充分显示出该课程和教材在全国的影响力和适用性。
3 结语
春华秋实,岁月有辛勤付出才美丽;桃李芬芳,人生看学生成才而快乐!哈尔滨工业大学“C语言程序设计”国家精品课程团队,用他们的教育智慧和不懈的努力,向我们展示了高质量课程与教材的发展之路,引领了新时代专业课程改革的新方向。该课程因此被评为国家精品课程和国家双语教学示范课程;由电子工业出版社出版的该课程教材《C语言大学实用教程(第3版)》和《C语言大学实用教程学习指导(第3版)》也被评为“十二五”普通高等教育本科国家级规划教材。相信他们的探索经验必将对提高大学专业课程和教材的质量提供有益的借鉴。
【参考文献】
[1] 苏小红,孙志岗,陈惠鹏,等.C语言大学实用教程(第3版)[M].北京:电子工业出版社,2012.
[2] 苏小红,孙志岗等.C语言大学实用教程学习指导(第3版)[M].北京:电子工业出版社,2012.
[3] 苏小红,等.发挥本科生创新潜能,提升创新意识和实践能力[J].计算机教育,2009(19):4-6.
[4] 王宇颖.面向创新实践能力培养的精品课程建设与教学支撑环境建设[R].哈尔滨:哈尔滨工业大学,2010.
[5] 苏小红.面向实践能力培养的C程序设计考试改革与教材建设[R].哈尔滨:哈尔滨工业大学,2010.
[6] 苏小红.面向创新实践能力培养的计算机实践教学改革[R].哈尔滨:哈尔滨工业大学,2010.
[7] 孙志岗.网络改变教与学[R].哈尔滨:哈尔滨工业大学,2010.
[8] 苗炜,等.科学家的摇篮麻省理工:一个让想象飞翔的地方[J].三联生活周刊,2010(41):51-92.
[9] 苗炜,等.创新资本主义的魔法汤斯坦福大学:硅谷的心脏[J].三联生活周刊,2012(41):41-77.
[10] [美]吉姆·克利夫顿.盖洛普写给中国官员的书(又名:迫在眉睫的职业战争)[M].北京:中国青年出版社,2012.
[11] [美] 托马斯·弗里德曼.世界是平的(第二版)[M].长沙:湖南科学技术出版社,2006.
收稿日期:2013-3-24
作者简历:童占梅(1964—),河北人,副编审。曾在大学从事过15年计算数学和计算机课程教学工作,后转入电子信息类高等教材出版行业,在专业课教材出版方面业绩突出,曾获得电子工业出版社突出贡献奖;研究方向为大学专业课程与教材出版;
冉哲(1973—),北京人,副编审。一直从事电子信息高等教材出版工作,研究方向为大学专业课程与教材出版。