文章快速检索    
  高等建筑教育  2014, Vol. 23Issue (3): 135-140  DOI: 10.11835/j.issn.1005-2909.2014.03.035 RIS(文献管理工具)
0

引用本文 

范圣刚, 陆金钰, 张晋, 等. 土木工程专业程序设计及算法语言教学改革调查与剖析[J]. 高等建筑教育, 2014, 23(3): 135-140. DOI: 10.11835/j.issn.1005-2909.2014.03.035.
FAN Shenggang, LU Jinyu, ZHANG Jin, et al. Teaching reform of programming design and algorithmic language of civil engineering specialty[J]. Journal of Architectural Education in Institutions of Higher Learning, 2014, 23(3): 135-140. DOI: 10.11835/j.issn.1005-2909.2014.03.035.

基金项目

东南大学教学改革项目(2007001,2013018)

作者简介

范圣刚(1974-), 男, 东南大学土木工程学院副教授, 博士, 主要从事钢结构教学与研究, (E-mail)101010393@seu.edu.cn

文章历史

收稿日期:2014-02-20
土木工程专业程序设计及算法语言教学改革调查与剖析
范圣刚, 陆金钰, 张晋, 卢瑞华     
东南大学 土木工程学院, 江苏 南京 210096
摘要:针对目前高校土木工程专业程序设计及算法语言教学中存在的通病,通过对东南大学土木工程专业一年级本科生的问卷调查,结合教学过程中的体会与经验,提出了适用于程序设计及算法语言的教学改革措施,且在教学实践中加以应用,效果良好。
关键词土木工程专业    教学改革    程序设计    问卷调查    
Teaching reform of programming design and algorithmic language of civil engineering specialty
FAN Shenggang, LU Jinyu, ZHANG Jin, LU Ruihua     
School of Civil Engineering, Southeast University, Nanjing 210096, P. R. China
Abstract: At present, the teaching of programming design and algorithmic language of civil engineering specialty in universities and colleges can hardly achieve good teaching effect. We analyzed existing problems in the course teaching and carried out a questionnaire survey on freshmen majored in civil engineering in Southeast University. Based on the investigation result and our teaching experience, we proposed measures for teaching reform of programming design and algorithmic language. The result shows that a good teaching effect is achieved.
Key words: civil engineering specialty    teaching reform    programming design    questionnaire survey    

在信息化时代,计算机成为主要工具,使用计算机不仅能提高生产数量,也能提高生产和生活质量;因此,基本的计算机应用技术必须掌握。在人才培养过程中,程序设计及算法语言是一门重要的基础课。土木工程专业开设本课程的目的是使学生学会使用计算机这一现代化科学计算和数据处理工具,深入理解计算机解决问题的基本原理和工作方法,能利用计算机解决工程设计、管理和生产中的实际问题,同时使学生树立以算法为基础的程序设计理念,锻炼逻辑思维能力,为进一步学习与土木工程专业相关的信息处理技术打下基础。

在土木工程专业中,程序设计类课程不仅要培养学生的逻辑思维能力、抽象思维能力和动手能力,还要培养一定的工程实践能力,因此,在程序设计及算法语言课程的教学中,除了对学生完成语法知识、算法思想和动手能力的培养外,还需要培养学生工程实践能力,以适应社会的需求。文章结合笔者申报并获得批准立项的东南大学教学改革研究项目“启发式教学在C++程序设计课程中的探索与实践”的研究,分析了东南大学土木工程专业程序设计及算法语言的教学现状,阐述了此课程的教学改革进程。

一、教学中存在的问题 (一) 学生学习兴趣不高,学习目标不明确

学好程序设计及算法语言课程通常需要学生具有较强的逻辑思维、扎实的数学功底和相应的英语基础。然而,在一年级本科生的学习过程中,绝大多数学生是以数学与英语为学习重点,轻视理论性强、操作复杂的程序设计及算法语言课程的学习。在程序设计及算法语言学习过程中,多数学生又觉得课程内容枯燥乏味,学习难度大,也不清楚课程与专业知识学习的关联作用,导致学习目标不明确、学习兴趣不高、学习态度不端正,投入时间与精力不够,甚至部分学生放弃学习此门课程,给程序设计及算法语言课程的教学工作带来了一定的困难。据东南大学教务处学籍科的统计,一年级本科生程序设计及算法语言课程的不及格率历年来居高不下。

(二) 学生计算机水平参差不齐

由于地域环境的不同以及高中阶段的教育模式差异,来自不同地区的新入学本科生的计算机掌握程度不同,因此计算机水平呈现参差不齐现象,给程序设计及算法语言课程的教学计划与教学安排带来较大的困难。

(三) 教学方式与教学手段的落后

教师在教授程序设计及算法语言时的教学方式与教学手段过于陈旧、传统。在教学过程中,课程内容为教“语言”而教,过分注重语法、语句、基本概念等细节,没有注意算法与程序编写能力的培养。学生不能很好地掌握编程思想的精髓,实际动手编程能力差,导致学生解决与分析实际问题的能力不强。多数教师将程序设计及算法语言当成“语言”课讲授,没有培养学生的“设计”思维。

(四) 课程间关联度不够,工程实践性不足

在当前高等院校本科生课堂教学中,存在着“重理论轻实践”的共同现状,多数学生学习一门课程知识后,理论基础较强,但解决工程实践问题能力较差[1]。目前,土木工程专业计算机基础教育仍采用“三板块”的课程教学模式,即计算机应用基础、高级语言程序设计、计算方法与CAD技术[2]。高级语言程序设计课程是其中第二层次的核心,也是计算机基础教育的基础与重点,是衡量大学生计算机素质的重要标志[3]。程序设计语言类课程之间有相近的内容,也有各自不同的特点,在课堂教学时应要注重各语言之间的关联度,让学生学习过程中能够触类旁通。

从土木工程专业程序设计及算法语言的实践教学内容(尤其是课程设计)来看,内容设计往往比较死板枯燥,缺乏与工程实践的紧密结合,学生学习兴趣不高,且多数学生在学习完课程内容后不能很好地把相关知识应用到专业学习中,也不能熟练地应用计算机来解决本专业的实际问题,造成与专业课程之间的严重脱节。在土木工程专业的学生培养过程中,程序设计及算法语言课程应以工程实践为依托,让学生在理解和掌握程序编程思想的基础上,很好地将计算机知识应用到工程实践中,培养学生解决工程实际问题的能力。

(五) 考核手段单一

程序设计及算法语言课程的传统考核方式是采用卷面考试为主,上机编程考核为辅。此种考核方式在一定程度上可以检验学生对课程知识点的掌握程度,但考核方式未注重对学生平时学习的考核和阶段学习效果的考核,存在着一定的片面性,不能达到全面培养学生的目标。

程序设计及算法语言课程为东南大学土木工程学院土木工程专业的基础课程,学院将课程设置为院级平台课程,成立专门的课程教学小组,初步形成了一定的教学特色,取得了一定的成效,受到一年级本科生的普遍关注。尽管土木工程学院每年都结合各门课程设置了期中教学检查工作,有机会听取学生关于程序设计及算法语言课程的教学意见和建议,并根据学生反馈的意见和建议逐年改进工作,但全年级范围广泛地征求学生意见工作并未开展。为了使程序设计及算法语言课程的教学工作更加规范和科学合理,体现“以学生为本”、“与时俱进”的教学改革精神,结合笔者负责的东南大学教学改革研究项目,对东南大学2009级土木工程专业一年级学生进行无记名问卷调查,为课程教学改革提供第一手资料。

二、学生问卷调查 (一) 调查问卷的内容设计

此次对土木工程专业学生进行的程序设计及算法语言课程问卷调查表共设计了20个问题,内容主要包括以下5个方面:(1)调查课程的开设情况,即课程开设的必要性、课程学习对学生自身能力培养与专业知识掌握的帮助程度;(2)考察学生对课程的学习兴趣与学习方法;(3)重点掌握学生对课堂教学方法、教学手段及教学效果的反馈信息;(4)了解与其他课程的关联度;(5)了解学生对课程上机指导、课程设计及考核方式的建议等。

(二) 问卷调查结果

2009年11月,东南大学土木工程学院程序设计及算法语言课程教学小组面向本院2009级土木工程专业一年级全部学生进行调查, 共发放问卷220份, 回收216份, 回收率98.2%。调查问卷结果的主要统计情况详见表 1~表 5

表 1 课程开设的情况
表 2 学生学习兴趣与学习方法
表 3 课堂教学方法、教学手段与教学效果
表 4 课程间的关联度
表 5 课程设计、上机指导与考核方式
(三) 调查问卷分析

表 1可知,近六成的学生认为土木工程专业开设程序设计及算法语言课程是非常必要的,但多数学生认为与土木工程专业知识的关联度不够,对专业知识的提升与专业技能培养的作用不大,仅对自身的编程能力帮助较大。

表 2可见,过半学生对程序设计及算法语言课程的学习兴趣一般,在课程学习过程中,多数学生很少甚至不向授课教师请教问题,基本采取被动的学习方法,教师讲课到哪里,听课就听到哪里,更有近三成的学生采取自学方式。

良好的教学方法和教学手段是保证课堂教学的重要前提,表 3主要是针对课堂的教学方法、教学手段与教学效果进行的学生问卷调查。由表 3可以看出,在课堂教学方法和教学手段上,绝大多数学生希望教师课堂能够采用启发式的教学方法,在课堂教学过程中实现师生之间的互动,增强课堂教学氛围,调动学生学习的主动性。在教学改革效果方面,多数学生对“教师挂牌、学生选择教师”的教学改革措施表示认可。在课程的教材选用上,近六成学生认为是合适的。在课堂教学课时和分班教学上,学生表现的观点较为分散。

表 4显示,近八成学生认为程序设计及算法语言课程教学内容应紧密结合大学生计算机等级考试内容,二成学生认为不需要结合或无所谓。由此可见,多数学生对本课程的教学内容与计算机等级考试相关内容的关联度表示认可。随着计算机应用技术在日常生活中的不断普及,过半数学生认为程序设计及算法语言课程与大学生计算机文化基础课程之间的关联度逐步下降,有必要分开教学。绝大多数学生认为,在土木工程专业除开设C++程序设计及算法语言外,应适当辅助开设其他高级语言程序设计,如Basic、Matlab、Fortran等。

课程设计与上机编程是提高学生实践操作能力与动手编程能力的必备条件,课程考核方式是检验学生对程序设计及算法语言知识学习掌握程度的重要依据。表 5是针对程序设计及算法语言课程的课程设计、上机指导与考核方式进行的学生问卷调查。通过表 5的调查结果可以发现,由于课程设计题目往往具有实践性强、操作复杂、难度大等特点,因此绝大多数学生希望课程设计采用“二人一题”或“多人一题”,联合编程,不同学生可根据题目要求按模块编程,形成各自模块子程序,再组装集成大程序。在课程的考核方式上,多数学生认为无需增设期中考试,应采用卷面结合上机考试的形式。

三、教学改革设想与尝试 (一) 设立课程教学小组

程序设计及算法语言课程为东南大学土木工程学院土木工程专业的基础课程,为了更好地提高本课程的教学质量,规范教师队伍,学院将本课程设置为院级平台课程,专门成立了课程教学小组。课程教学小组主要由课程负责人和多位具有博士学位的青年教师组成,实行课程人负责制,课程的教学内容、教学大纲、教学计划及教学任务均由课程负责人统一制定与安排。

课程教学小组定期组织教师进行教学交流与教学观摩学习,鼓励与支持年轻教师参加东南大学青年教师授课竞赛。

(二) 学生分班教学与教师挂牌教学方式

由于土木工程专业的一年级本科生在计算机水平方面存在着一定的差异,在课程教学过程中尝试分班教学方式,按学生入学后的计算机能力测试结果,设置了快、慢班教学,取得了一定的教学效果。同时,在课程教学安排过程中,实行教师挂牌教学方式,在选课网站上给出各位授课教师的介绍,让学生根据对授课教师的了解情况进行选课,然后组班上课。此种教学方式效果很好,但也带来很多不便,比如不同授课教师上课的班级人数会出现较大差异,不同专业的学生选课呈现混乱状态,给学生学籍管理与成绩统计带来较多不便。

(三) 教学内容的模块化

基于程序设计与算法语言的教学大纲要求,对教学内容进行重新整合与革新,将教学内容分成必修模块、选修模块、自修模块,采用模块化教学[1]

必修模块内容是课堂重点讲解的内容,可根据不同要求设置对应的知识点,主要包括要求学生掌握、理解和了解的内容。选修模块内容是教学过程中辅以讲解的内容,应根据学生基础和自身学习能力的不同加以不同的规定与要求。自修模块内容是课堂教学以外的相关内容,主要通过学生自学、教师辅导与答疑等方式完成,可根据学生的兴趣爱好与所学专业不同进行设置。教学内容的模块化,可以实现课堂教学过程的灵活安排,教学知识点由浅入深,教学内容的纵向深化和横向拓展。

(四) 教学过程的实践化

与传统学科的教学方法相比,程序设计及算法语言课程具有较强的实践性与工程性。在课程的教学过程中,应重视实践教学环节,要求学生既要掌握基本概念,又要学会动手编程,还应具有上机调试运行程序的能力。教师在设计与安排实践教学内容时,应充分考虑学生所学的专业知识,结合不同的教学内容,精心设计制作不同阶段的题目,提高学生的编程能力,锻炼学生的动手能力。

在教学过程中,还应着重以培养学生“构想—设计—实施—操作”的能力为主线[4],培养学生分析问题、解决问题、研究和探索问题的能力和团队协作精神。因此,教师应适度减少或淡化课堂教学内容,全方位地将理论与实践应用相结合,强化学生自学能力,让学生在实践过程中不断领悟知识点,最大限度地发挥学生主观能动性,调动学生学习热情。

(五) 加强课程间的关联度

在教学过程中,教师应注重同类程序设计语言课程之间的关联,避免各课程间的内容重复,绝不能孤立地进行教学,应引导学生掌握同类课程间的共性知识,融会贯通。土木工程专业学生学习程序设计及算法语言课程的最终目的在于工程实践的应用[5]。一方面,在程序设计及算法语言的教学过程中,授课教师应加强课程教学内容与专业知识的结合与贯通;另一方面,更需要各门专业课程(如工程力学、结构力学、地基基础、工程结构设计原理、建筑结构设计、课程设计与毕业设计等)的授课教师在教学过程中对学生的计算机编程提出相应的要求,给学生利用计算机编程解决与分析工程实践问题创造机会和条件。

(六) 教学方法与教学手段的创新

教有良方,但无定法,贵在得法,重在启发。在程序设计及算法语言教学中,目前可采用的教学方法有启发式教学和案例教学[1]。在教学活动中,教师可根据实际需要灵活采取不同的教学方法。在启发式教学方法中,教师的主导作用是外因,学生的主体作用是内因,教师应多启发与鼓励学生,充分调动学生的学习积极性,让学生独立分析问题与解决问题,循序渐进地学习和掌握编程技能。案例教学方法是一种通过先介绍程序再学习程序设计语言基本语法、基本概念的教学方法,是一种从微观到宏观、从具体到抽象、从个别到一般的教学方法,更注重培养学生解决各种具体问题的能力,从本质上掌握程序设计的思想与方法,可以较好地培养学生的逻辑思维能力、综合运用能力。

课堂教学手段可采用多媒体教学,教师在教学过程中可以编制多媒体教学课件和程序演示录像,化抽象为直观,使原本比较枯燥的、抽象的、呆板的教学内容变得生动活泼,消除学生的畏难情绪,激发学生的学习兴趣,强化教学效果,提高学生的综合思维能力。同时,教师可利用网络平台建立相关课程网站,上传教学与学习资源,布置与批改作业,开展课程学习答疑,教师与学生即时互动,提高学生的学习能力。

四、结语

程序设计及算法语言课程为土木工程专业本科生的一门基础课程,理论性与实践性较强,其教学改革需要经过一个不断探索与实践的过程。文章针对东南大学土木工程专业程序设计及算法语言教学中存在的问题,结合对土木工程专业一年级本科生的问卷调查,从教师队伍建设、教学内容、实践环节、课程间关联度及教学方法与教学手段等多方面,对课程教学进行全面地总结和思考,并提出了一些有效的教学改革措施,以便进一步完善程序设计及算法语言课程的课堂教学效果。

参考文献
[1] 邹翔, 曹晶华. 适应工程教育环境的程序设计语言教学[J]. 计算机教育, 2010(12): 95–98. DOI:10.3969/j.issn.1672-5913.2010.12.026
[2] 胡忠望, 谌新年. 非计算机专业计算机基础教育课程体系改革[J]. 机械工业高教研究, 2002(2): 65–67.
[3] 谢步瀛, 王祎. 与土木工程专业相结合的VB教学[J]. 高等建筑教育, 2007, 16(3): 120–123.
[4] 黄建忠, 黄传河, 曹加恒, 吴黎兵. 创新型计算机实验教学体系的建设与改革研究[J]. 计算机教育, 2007(22): 28–30. DOI:10.3969/j.issn.1672-5913.2007.22.008
[5] 李飞, 徐雪源, 程鹏环. 土木工程专业学生计算机应用能力培养探析[J]. 江苏广播电视大学学报, 2001, 12(6): 66–68.
表 1 课程开设的情况
表 2 学生学习兴趣与学习方法
表 3 课堂教学方法、教学手段与教学效果
表 4 课程间的关联度
表 5 课程设计、上机指导与考核方式
土木工程专业程序设计及算法语言教学改革调查与剖析
范圣刚, 陆金钰, 张晋, 卢瑞华