前言:中文期刊网精心挑选了计算机程序设计论文范文供你参考和学习,希望我们的参考范文能激发你的文章创作灵感,欢迎阅读。
计算机程序设计论文范文1
论文摘 要:计算机程序设计算法在高中信息科技教学过程中是重点,也是难点。程序设计算法的相关概念比较枯燥,理论过于抽象,对学生的逻辑思维能力要求较高,所以在教学过程中往往难以把握,也不易调动学生的兴趣。在传统的教学过程中,学生对这部分知识的掌握比较困难。本文结合课堂教学实践,从三个方面探究运用建构主义教学理论构建计算机程序设计算法教学过程,促进学生对知识的理解和掌握,与传统的教学方法比较,运用构建主义理论教学方法取得更好的教学效果。
计算机程序设计算法作为高中信息科技选学模块的内容,是课程改革的一种新的尝试,旨在培养和提高学生的逻辑思维能力,以及分析问题和使用计算机解决问题的能力。在传统的教学模式下,教师的实践活动在很大程度上受到行为主义的影响。教师的教学任务主要是为学生提供一系列刺激和强化,并引导学生作出适当的反应。教学的目标就是为了让学生模仿适当的行为,教师对学生模仿的结果进行判断和修正。在程序设计算法的教学过程中,这种教学模式难以取得理想的教学效果。[1][2][3]作者介绍了建构主义教学理论及其要义,并对利用建构主义教学理论对教学过程进行改革和优化进行了分析与评价。具体应用建构主义教学理论应用在高中程序设计算法的尝试,还没有查到,因此尝试用建构主义方法应用于计算机程序设计教学效果,具有重要的意义。
一、利用建构主义教学法创设学习情境,激发学生学习兴趣
在计算机程序设计算法教学过程中,教师利用建构主义为学生创设一个学习的情境,以激发学生对所学内容的兴趣,将学生的思维引入到学习情境中。创设情境,即在真实世界中建构知识意义、学会解决问题的经验,尽管在传统课堂教学中,我们无法将学生带到知识应用的现场(而计算机程序设计算法中一些抽象性、逻辑性、数理性的知识也难以找到这样的现场),也没有虚拟现实技术的产品去模拟真实世界,但在教学中,教师要学会运用有效的教学策略和各种可行的技术手段,设法让知识“从情景中走出,又最终走入情景”,即从现实情景中提炼问题,又能设计一些将新知应用于现实情景的实例,从而给予学生解决实践问题的机会。也只有跟现实生活紧密联系在一起的教学活动才激发学生的兴趣,引发学生的共鸣,教学中可以向学生提出生活中的实际问题,激发起学生的兴趣,引导学生针对趣味性问题和生活实际问题进行思考、讨论,从而将学生引入教学情境中来。
二、设置学习任务,让学生主动探索知识
计算机程序设计算法的相关概念比较枯燥,理论过于抽象,对学生的能力,尤其是创造性思维能力的要求较高,所以在教学过程中难以把握,也不容易引发学生的兴趣。在算法的教学过程中,利用建构主义教学理论对教学过程进行改革和优化将取得更好的教学效果。
比如,在介绍排序计算机程序设计算法时,如果纯粹地以数字为例进行介绍,给予学生的印象不会太深刻,而且会显得过于抽象,不通俗易懂。所以针对这一现象,可以充分利用学生对排队这一活动的熟悉程度来引出排序算法,加深学生对排序算法的直观印象,促进学生对排序算法的理解。具体可以这样操作,在提出排序算法之前,教师可在班级内随机抽取五名高矮不一的学生随机站立,然后请这五位学生演示以不同的方法从矮到高的排队过程,教师可在一旁指导学生先按照冒泡排序的方法进行排队演示,并记录他们演示过程中的每一次移动。
这样,在计算机程序设计算法教学中通过任务的设计,改变了知识的传输方式,培养了学生的科学探索精神和实践能力,把静态的教学变成学生主动参与的开放式教学。 转贴于
三、利用建构主义教学评价,强化教学目标
高中计算机程序设计算法包含了数学模型建构、逻辑推理等多方面的知识,学生理解和掌握的难度比较大,不同学生理解和掌握的程度也不尽相同,教师在教学过程中应当及时有效地评价学生的学习过程,从而获取有价值的反馈信息,并根据反馈及时调整教学进度和教学策略。同时,学生也可以反思自己的学习过程,调整认知策略,改变思考角度,加深对学习目标的理解和认识。
评价的过程是学生发现自我、提高自我的过程,也是学生与学生、学生与老师情感交流的过程。有效地教学评价,不仅能够真正确立学生在课堂教学中的主体地位,还能够促进学生在课堂上的积极参与,使得学生充分活动,形成良好教学氛围和师生互动关系,也只有在这样的课堂氛围中,学生才能更好地学习,得到更好的发展。有效地教学评价,也可以让老师更多地了解学生优势和不足,监控学生的学习过程,正确评估自己的教学效果。
四、小结
新课程改革要求以学生发展为本,让学生参与,提高学生的学习兴趣;优化教学环境,加强交流与合作;给每位学生以期望和激励,让学生有成功感;利用建构主义教学理论引导学生对知识的意义建构,从根本上改变了老师和学生在知识学习过程中的地位和角色。在计算机程序设计算法教学过程中,通过情境引入、课堂任务设计,学生能够主动参与程序设计算法数学模型的建构、自主探索、合作交流,乐于参与系统知识的学习过程,充分调动学生学习的主动性,同时更利于学生身心的发展。
参考文献:
[1]陈琦,张建伟.建构主义学习观要义评析[J].华东师范大学学报:教育科学版,1998(1):61-68
计算机程序设计论文范文2
[论文关键词]高校 非计算机专业 计算机课程
[论文摘要]计算机教学旨在使学生掌握信息技术、计算机程序设计及其他相关的基本知识,培养学生利用计算机分析问题、解决问题的能力,提高学生的计算机素质。文章分析了高校非计算机专业计算机课程教学中存在的问题,并就如何通过教学改革,提高大学生的计算机应用能力进行了探讨。
计算机教学主要是为学生提供计算机知识、能力等方面的教育,旨在使学生掌握信息技术、计算机程序设计及其他相关的基本知识,培养学生利用计算机分析问题、解决问题的能力,提高学生的计算机素质。计算机课程是高校非计算机专业大学生计算机教育的必修课程,一般开设“信息技术基础”和“Visual Basic程序设计”或“Visual FoxPro程序设计”两门课程。在计算机课的教学过程中,存在很多问题,因此,有必要对该课程的教学进行改革。
一、非计算机专业计算机课程教学存在的问题
1.教学方法呆板,不能激发学生兴趣。目前,计算机课程教学多采用黑板与投影仪相结合的方式,既可以板书又可用投影仪演示多媒体信息。但这种教学方法仍显得有些呆板。第一,教学方法仍以教师为主导,忽视了学生的主体地位,师生缺少交流,学生只能被动接受,不能很好地调动学生的积极性和主观能动性。第二,有些多媒体课件只是把黑板的内容搬到了大屏幕上,多媒体教学的特点没有真正体现出来。第三,对于非计算机专业的学生来说,计算机课的许多知识大都概念性、理论性强,内容多且抽象,具有严密的逻辑性,因此,学习难度较大。有的学生会产生畏难情绪,学习积极性不高。还有些学生认为,这门课程和自己的专业没多大关系,学习只是为了应付考试,这样就失去了学习的兴趣。
2.课时数偏少,不能完成教学任务。以邢台学院(以下简称“我院”)非计算机专业计算机课的教学为例,我院非计算机专业的“计算机程序设计”课程安排在第二学期,每周3节课(2节理论+1节实验),实际教学周数为每学期15~16周,实际总课时为45~48节。而大多数学生的计算机基础较差,根本没学过编程,在教学过程中,教师有时为了赶教学进度,就简化教学内容。由于课时少,学生没有时间建立一个系统的、完整的开发思想,这样导致学生学完这门课后,只会孤立地做几个小程序,而不会把它们联系起来开发成一个系统。这也导致学生在学习过程中学习被动,只是一味模仿课本上实例,知识点零散,对系统开发认识模糊,这样就大大影响了教学质量。
3.重理论轻实践,教学效果不理想。计算机课程是实践性较强的课程,必须通过上机实践,学生才能真正理解教学内容,掌握所学知识。上机操作实践是形成和提高学生应用能力的重要环节之一。然而,很多高校非计算机专业计算机课的理论教学时数多于实践教学时数,这不利于培养学生的实践操作能力,也不利于学生加深对理论知识的理解,因为,理论知识需要在实践的过程中加以理解、消化。理论课时比实验课时多,比例不合理,造成教学效果不理想。
4.考试形式不合理。我院非计算机专业的“信息技术基础”课采用河北省计算机统一考试,全部都在计算机上进行,其中有30%的选择题,70%的操作题。这样的考核方式对学生能力的测试是合适有效的。但“计算机程序设计”课程只采用笔试的方法,学生往往背几个程序就可以考高分,这种考试方式不利于发挥学生的主观能动性和创造性。
二、非计算机专业计算机课程教学改革建议
1.改进教学模式,采用分级教学。针对非计算机专业学生的计算机知识与能力参差不齐的现状,进行分级教学,即根据学生入学时计算机基础水平的差异,分不同的教学班进行教学。新生入学后,进行“信息技术基础”课的摸底考试,根据考试结果对学生进行分级,甚至部分学生可免修。同时,开设相应的选修课,使免修学生能多学一些新知识,激发学生的求知欲。在分级教学中,可根据教学计划和教学大纲的规定使学生共同达到一定的要求,还可因材施教,使优秀学生在原有的基础上学得更多、更深。
2.改进教学方法,提高教学效果。很多高校计算机课的教学还是采用教师讲、学生听,课后做作业的灌输式教学方式。这种教学方式使学生的个性受到束缚。实际上,每个学生的个性不同,这也导致学生对同一知识的需求不同。这就要求教师在教学中应以学生为主体,根据学生的不同需要进行有差别的教学,这种差别可以体现在教师引导学生学习的启发式、发问式等教学方法中,也可以体现在根据学生的个性布置差异的作业等方面。
以学生为主体并不是降低了教师的作用,而是对教师提出了更高的要求。要求教师在教学中从单纯传授知识转变为指导学生学习;从课堂专制式转变为平等、讨论或对话式;从填鸭注入式转变为启发诱导式;从单向传播式转变为双向感应式;从无视学生个体的差异转变为重视学生的个性,把其个性、特长作为资源加以利用,使学生既学习了知识,又提高了能力和素质。 转贴于
3.采用多种方式教学,提高学生兴趣。教师可以采取换位方式,在教师的引导下让学生主导课堂;对某些问题采取“百家争鸣”的方式进行讨论或研讨;可以在教师的引导下,让学生收集资料,作为课堂学习的补充;可以采取平等对话方式,让学生发表自己的见解,通过互动引导学生分析问题,解决问题。在细节上可以采用发问、启发、引导、存疑等教学方式。总之,利用尽可能多的手段引导、培养学生批评质疑和创新的思想,增强其创新能力。
在进行计算机课的教学时,应与学生所学的专业结合起来,提高学生的学习兴趣。如在教会计专业的“VFP程序设计”时,教师可以要求学生编写一个关于财务收支报表的小型应用系统。在讲课时,把这种小型的应用系统分解成不同的项目,每讲完一部分,就要求学生设计这个子项目。从信息的收集到方案的设计与实施,都由学生具体负责。学生在项目的实施过程中可能会遇到各种各样的问题,就会想方设法解决问题。在解决问题的过程中,学生既学习了新知识,又复习了学过的内容。通过一个个项目的实施,最后完成小型应用系统的开发。这样不仅既能够培养学生用计算机语言的思维来理解程序所能实现的功能,又能够帮助学生理解系统开发的基本架构。同时,这种方法还训练了学生的专业技能,提高了学生的认知水平,也使学生感到这门课程与自己所学专业的紧密关系,从而提高学习兴趣。
4.注重实验教学。计算机课程是实践性很强的课程,其知识的掌握与能力的培养在很大程度上有赖于学生的实践操作。加强实验教学环节有利于培养学生动手操作能力、解决实际问题能力。实验教学是计算机课程教学的一个重要环节,它与理论教学互为依存,对于培养学生的能力,尤其是研究创新能力有着不可替代的作用。计算机课程不仅要注重课堂上的演示操作,更要注重实验教学。可以采用课内上机实验教学、课外多人合作项目,开发小型应用系统。这样不仅可以弥补课时的不足,也可以调动学生学习的积极性。
5.改革考试方法。考试是一种手段而不是目的。应改革传统的死记硬背的考核方法,对于“计算机程序设计”这类课程可以实行开卷考试,让学生个人或几个人完成一个小型应用系统的开发,最大限度地发挥学生在学习过程的主动性、积极性和创造性。成绩评定可以采用学生答辩的方式,锻炼和培养学生的思维能力和表达能力。这样可以避免学生盲目追求高分采取死记硬背的方法学习计算机知识,激励学生追求全面的知识,提高学生的自主创新能力。这样出题既有新意,避免雷同,又能够充分检查学生的掌握情况和应用能力。
综上所述,针对高校非计算机专业计算机教学中普遍存在的问题,应采用科学的授课模式,同时,利用计算机教学中的创造教育的因素,大胆地让学生自由发挥,与自己所学的专业相结合,挖掘其潜在的创造才能,让学生的创造性思维与个性得到发展,从而实现学生素质的全面提高。
[参考文献]
[1]关心.关于高等学校计算机基础教学存在问题的探讨[J].黑龙江教育(高教研究与评估版),2006(3).
[2]李建.《计算机公共基础教学》的困惑与对策[J].福建电脑,2006(4).
计算机程序设计论文范文3
〔论文关键词中职学校 计算机 程序设计 教学方法
〔论文摘要计算机程序设计课程是中职学校计算机专业的主要课程之一,曾受到各中职学校的高度重视。但程序设计课程教学设计、教学目标及教学方法远远跟不上形势,怎样调动中职学生对程序设计语言的学习兴趣与提高他们的学习效率成为中职计算机教师们的共同关注的焦点。
程序设计课程作为计算机专业的一门基础课程,它有利于提高学生的思维能力,对学生深人学习计算机专业知识有很大的帮助。其目的就是通过学习程序设计语言的基本思想、语法知识和编程方法,提高学生的程序设计能力、分析解决实际问题的能力,并培养形成严密的逻辑思维能力。那么如何根据社会经济发展变化,对程序设计语言课程的教学内容、教学方法、考核方式进行相应的改革,实现培养高等技术应用型和高技能型计算机人才目标,已经成为广大中职教师普遍关注和重点研究的课题。
1程序设计语言教学中存在的问题
1.1教学课时少
目前我校计算机专业的学制2+1的模式,学校开设的程序设计语言课程的课时(包括理论课时和实践课时)较少,这就导致实际教学中存在理论课时和实践课时不够的情况,学生只能掌握最基础的程序设计知识,理解书本上现有的一些设计实例,而不能用该程序设计语言进行实际问题的处理。
1.2学生基础参差不齐,学习程序设计的信心、兴趣不足
因为学习程序设计需要较强的逻辑思维能力和较扎实的数学功底,而中职学校的学生普遍数学基础较薄弱,导致在学习程序设计时显得力不从心。由于缺乏对计算机本身解题的认识和了解,有些基础较差的学生还对计算机程序产生一种莫名其妙的神秘感和畏惧感,人为的给自己学习程序设计语言设置了一道门槛。学生对程序设计课程的学习兴趣不高,课堂教学中反常行为较多,如卜课睡觉、讲话、玩手机、不配合老师、不交作业等。学生普遍反映难学,提不起学习兴趣,感觉学不到知识或学的知识没用。
1.3学校对程序课程的重视程度不高
计算机程序设计课程注重对学生的思维能力的训练,这与图像处理,动画设计等培养学生动手能力的课程不同,不能立竿见影的看到学生的学习成果。这就导致一些领导对这门课程不够重视,从而使部分教师对这类课程的教学参与兴趣不浓厚,甚至有些学校以取消了程序设计语言的课程设置。
1.4教学方法落后
中职程序设计语言课程一般采用的教学方法是教师课上讲授加学生实验的形式,学生在上机实验时仅仅是对书本上现有的一些实例进行编辑调试,一旦调试成功就完成任务。这种教学方法实际上只是让学生掌握了一些程序设计的语法知识和调试技巧,而达不到培养学生利用该程序设计语言从一个实际问题人手分析问题、解决问题的能力。
1.5考核方式较简单不能全面检验学生的学习效果
目前的考试方式以试卷为主,无法全面检验学生的学习效果,对学生的实践能力考查无法体现学生的真正学习效果。
2间题分析
是什么原因造成了以上这些问题那?随着高中教育不断普及,中职生源及综合素质急剧下降。普遍特点是他们基础薄弱,尤其数学和英语,这是学好程序设计的最大障碍。教材不能适应中职教学的要求。现今中职程序设计语言教材存在的普遍问题是实践性教学和实训内容不足,没有体现教材的实用性和职业性,不能保证对学生实践能力的培养,不能体现技术应用型人才的培养要求,缺少中职教育特色。面对这些问题,我们不能望而却步,一味地去埋怨是起不到效果的,要真正想解决问题,最好就要去不断地摸索,寻找解决问题的突破点,探索适合学生发展的教学方法和教学内容,以充分调动他们的学生积极性和主观能动性。
3解决间题的关键在于教育方法的创新
古人云:“知之者不如好之者,好之者不如乐之者。”兴趣对学生的学习有着神奇的内驱动作用,能变无效为有效,化低效为高效。充分激发学生的学习兴趣是当前开展素质教育,优化课堂教学,减负提质的最根本、最有效的途径之一。兴趣的产生来源于兴趣源,兴趣源必须由教师来创造,并贯穿于教师授课全过程的各个环节中。针对程序设计这门课程的特点教师可采用以下一些方法提高学生的对本课程的兴趣。
(1)基于问题的教学。提出问题,以学生独立完成为主,教师只提供必要的辅导,培养学生探索问题和解决问题的能力,更有利于创新能力的培养。
(2)“项目驱动”教学。在理论教学中采用“项目驱动”教学法,整个课程教学围绕一个“工程项目”进行,通过逐步拓展的实训项目和设计,将每一阶段的学习进行小结性的贯穿与能力提高,将知识点都溶化到一个个实训项目的程序编写中。
(3)讨论教学法。在教学过程中,充分发挥学生的积极性与主动性是非常重要的一环。程序设计有一个最大的特点,一题多解。针对这个特点,教师在习题课的教学中,可以采用讨论式教学方法。在此过程中,学生们通过提问、答辩、论证、反驳、判断等激烈的讨论,互相启发、相互协作去分析问题、发现问题、解决问题,总结经验。不仅可以让学生获得课外的知识,同时也利于充分挖掘学生的学习潜力。
(4)归纳教学法编程语言有很多的定义、概念、语法规则,它们使用灵活、难以记忆,也特别容易出错。如果能够引导学生进行归纳,将会起到事半功倍的效果。编程语言的定义、概念、语法规则有许多相似的地方,例如:FOR ……TO……与DO……W HILE等命令,有很多语法规则是一样的,对它们进行归纳之后,学生只要记住其中一个,另一个自然就会使用了。
(5)分组教学法。注重培养团队精神,以“竞”求进上机编程实践是学好程序设计语言的关键。但上机实践过程中如果“各自为战”,或在教师的统一“指挥”下以完成不同题型的任务为实践内容,对于中职学生而言很容易失去上机兴趣,也很难达到上机实践之目的。因此,不妨针对中职学生的特点,适当转变上机实践的形式。以组建团队的形式上机实践,事前分配给每个学习小组不同的实践任务。组长负责本组学生利用课余时间去思考、收集资料,上机时各组先分别完成相应任务,然后相互演示成果,评判优劣,最后再进行任务交换,讨论编程心得。在此过程中教师主要充当协调者的角色,对确有疑难的地方可适当加以指导,主要过程可由学生自行解决,则学习能力强的学生自然会成为教师的助手。
(6)案例分析教学。对程序设计语言的教学,不仅仅是教程序设计语言知识,更重要的是让学生学会如何利用程序设计语言知识去编程,去应用于实际需求中。采用案例教学,可以实现课堂内外的有机结合,实现理论与实践相结合。结合学生自学,让学生带着疑问进行案例分析,教师在分析过程中穿插讲授专业理论知识,学生在分析案例的时候,一方面增长知识视野,丰富分析应用技巧;另一方面,在探索思考如何把知识运用于实践,从而及时有效地促进学生对知识的消化吸收,真正达到理论与实践相结合的目的。当然在案例的选择上应结合学生的专业实践,让学生能学以致用。
计算机程序设计论文范文4
论文摘要:该文分析了程序设计在计算机学科中的地位以及程序设计有关的知识和能力构成,结合自己多年的计算机专业教学实践,探讨了在计算机教学中培养学生程序设计能力的有效策略。
计算机科学是一种创造性思维活动,其教育必须面向设计。计算机的本质是“程序的机器”, 只有懂得程序设计,才能懂得计算机,真正了解计算机是怎样工作的。培养学生程序设计能力对计算机专业的学生来说不仅是培养职业技能的需要,也是培养大学生创造性思维的重要途径。学习程序设计语言可以培养学生运用算法来解决实际问题的能力,这种解决问题的方式是计算机所独有的,也只有通过对计算机的程序设计语言和程序设计方法的学习才有可能获得这种解决问题的能力。
1 程序设计在计算机学科中的地位
程序设计是利用某种计算机语言,编制完成某一特定功能的程序的过程,是涉及描述、开发及有效实现求解的一系列活动,是利用计算机实现自动化的重要手段。
计算机学科主要是系统地研究信息描述和变换的算法过程,包括它们的理论、分析、设计、效率、实现和应用。可以这样说,一切算法的基本问题是“什么能被自动化”以及“如何有效地自动化”。这个自动化的过程就是程序设计的过程。
程序设计语言是人们学习计算机的最基本的工具,也是人们学习计算机基础与应用知识的基本课程。通过学习,使学生掌握程序设计的基本概念、基本知识和基本方法,养成良好的程序设计风格,得到一定的程序设计训练,具备初步编写程序解决实际问题的能力。程序设计也正是有形表达抽象思维的方法,在程序设计过程中贯穿阅读判断、分析思考、工具利用、抽象表达、综合创造等多项技能,是理论、抽象、设计和应用的综合能力培养过程。因此程序设计是计算机学科教学的重要内容之一,对计算机专业人才素质的培养至关重要。
2 程序设计的知识和能力构成
根据循序渐进的原则,与程序设计有关的教学内容主要有:计算机基础知识和操作、程序设计语言和基本的程序设计方法、最基本的数据结构及其基本算法、常用的算法设计方法等。在学习这些知识的同时,必须与能力的训练有机地结合起来。程序设计能力表现在以下几个方面:
1)自然语言能力。要有较强的运用自然语言描述现实事物的能力,只有运用背景知识正确且清晰地陈述问题及其求解目标,才能确定程序的功能。
2)数学描述能力。程序设计是为了告诉计算机做什么和如何做。这就需要利用定义、定理、公式、函数等数学工具把问题形式化,建立数学模型。
3)数据结构设计能力。选择合理的存储结构,在计算机中表示数学模型,是程序设计的一个重要方面。
4)算法构造能力。好的程序由精心构造的、好的算法构成。给出问题求解的离散化计算过程,是程序设计中最具有创造性的工作。
5)程序编码能力。用某种程序设计语言表达算法,尽管这种能力往往被认为技术含量不高,但也需要对程序设计语言的熟练掌握和对算法设计的深刻理解。
6)程序调试能力。程序调试能力是一种专业综合技能,需要对程序设计语言和程序结构有深刻的理解,需要熟练的操作技能,需要会设置测试数据和设置程序断点,这些都有待于学生在实践中逐步积累经验。
可以说,程序设计能力的高低很大程度上反映在驾驭自然语言、数学语言和计算机语言的能力上。这3种语言是人们毕生有用的3种通用智能工具。前两者是后者的基础,良好的英语和数学训练是学好程序设计语言和培养程序设计能力的重要基础。
3 培养程序设计能力的有效策略
知识的价值在于运用,知识的运用需要技能,而技能的形成则依赖训练。程序设计知识的学习和能力的培养需要各方面的知识基础,它是一个系统的教育训练过程,需要多个教学环节的紧密配合才能完成。
1)明确教学要求
程序设计语言课程一般是为应用性教学而设置的,因此,课程的教学不仅仅是传授知识,而且应该强调应用性,应该以培养学生的能力为主。程序设计语言的内容比较丰富,在教学中如果面面俱到,必会耗费较多课时,而且教学效果不一定好。因为过分强调程序设计语言的系统性和完整性就可能会转移学生对课程重点的注意力,关键在于教会学生如何正确运用程序设计语言编写程序,训练实用编程能力。所以必须突出重点,突出应用性,侧重教思想,即把程序设计语言的基本思想、基本环境、基本概念、基本知识和基本方法教给学生,使他们在学习中对硬件、软件环境、程序设计的基本思想和基本技巧,所学程序设计语言的基本概念和使用方法以及编程技术有一个比较全面的感性认识,从而提高解决实际问题的能力。
2)打好数学基础。严格的数学训练是程序设计能力的基础,学习和加强排列与组合、数列、数学归纳法等离散系统的数学方法对提高程序设计能力尤为重要。问题描述和建立数学模型是程序设计的前奏,数学归纳法、穷举法、构造证明法等证明技巧是算法设计方法的基础。
3)强化英语水平。程序设计语言的符号系统以英语为基础,程序设计文档语言首选英语。英文资料是计算机最新和最大的技术资料来源,英语水平是我国软件产业发展和参与国际竞争的制约因素。
4)重视阅读训练。从某种意义上来说,程序设计是用程序设计语言和方法进行的一种写作。可以想象,如果学生没有阅读过一份完整、规范、有实用价值的标准程序,即使记住了有关语言的语法规则,也不可能写出像样的程序。所以,大量阅读、分析、修改和扩充典型的算法和程序,是提高程序写作能力的有效途径。而这个重要学习环节往往未得到应有的重视,缺乏配套的程序设计阅读分析教材。教师应经常指导学生阅读程序,理解程序,提高学生分析程序的能力。
5)注重算法设计,突出数据结构内容。瑞士科学家、PASCAL语言和MODULA-2语言的发明者沃思(Wirth)教授提出了著名的公式:程序=算法+数据结构。这个公式表达了程序的实质,说明对于一个程序设计问题来讲,算法与程序设计是紧密联系的,绝不能脱离数据结构去讲解算法设计。程序设计语言的教学应该结合数据结构的基本内容。对于同一个计算问题,选用不同的数据结构,其算法大不一样,算法的优劣程度也不同。因此,要教会学生对不同的问题选择合适的数据结构。在整个程序设计课程中,必须强调算法设计方法,通过不断的算法设计训练,使学生切实掌握迭代、枚举、递归、分类等常用算法设计方法。
6)更新教学内容。计算机学科是一门综合性学科,而且程序设计语言的应用领域在不断扩大和发展。因此,在教学中应结合专业的特点和教学的要求,将软件工程的思想方法贯穿于整个教学过程,介绍程序设计语言的最新发展和应用,重视面向对象程序设计方法的引入,搞好教材内容的更新。如图形程序设计、下拉式或弹出式菜单、计算机病毒防治等等。这样不仅能把最新的知识和最新发展动态充实到教学上来,大大丰富了教学内容,而且使学生加深对程序设计语言的理解和掌握,保持对信息技术和专业的兴趣,及时跟上信息技术日新月异的发展趋势,在今后工作中保持领先地位。
7)采用先进教学手段。用传统的课堂教学方法讲授动态的算法和数据结构是十分低效的,像排序、递归等抽象动态的内容讲解就常常是费力不讨好。应该根据课程特点,采用先进的现代教学方法,如直观教学方法:利用挂图、教具等讲解,以及计算机辅助教学(CAI)和计算机辅助学习(Computer Aided Learning,简称CAL)进行教学,通常开发利用与课程内容与教学特点相适应的多媒体课件进行教学。它们是讲解算法和进行程序设计训练的最佳教学平台,既能增加学习的趣味性,又可利用图形的直观性帮助抽象和动态过程的理解。
8)加强实践环节,强化创造性思维能力培养。在教学中,常常听到学生提出这样的问题:“程序设计语言有什么用?”,有的学生还反映:“程序设计语言并不难学,就是不知道如何应用?”一些学生学到了一定的科学知识,但上机动手水平低。这种现象与普遍忽视实践环节有关。为了扭转这一局面,在整个教学过程中,必须强调实践环节的重要性,充分安排上机实践时间,加强系统训练和实践能力的培养,强化创造性思维能力培养。根据课程特点,在教学中,采用案例驱动教学,进行兴趣引导;在实践中,可以精心组织一系列由易到难、由浅入深、配套衔接、结合学科学习、有一定设计技巧的程序设计作业,最后再安排一次综合性强、有一定难度的课程设计实践,对学生进行项目训练,提高学生应用能力。通过上机作业和课程设计的完成,使学生独立思考,各显才干,总结经验,培养他们的动手能力和编程能力,以及分析问题和解决问题的能力。
4 结论
总之,培养学生计算机程序设计能力的方法和途径很多,但是编程序不难,编好程序不易。作为教师,必须从培养学生编程思维的角度出发,按照以上策略认真进行编程知识的教学和技能的培养,加强实践,提高学生科学思维的能力,真正学会程序设计的真本领。
参考文献:
[1] ,王楠.浅谈程序设计语言课程教学方法[J].吉林大学学报(信息科学版),2005(S2).
[2] 徐进华.提高学生程序设计能力的几个措施[J].计算机时代,2005(11).
[3] 李凌.浅谈高级语言程序设计课堂教学方法[J].淮北职业技术学院学报,2005(04).
计算机程序设计论文范文5
论文摘要 针对现阶段程序设计语言教学中存在的普遍问题,在对程序设计教学思想、程序设计能力认识分析的基础上,提出程序设计语言教学中的若干要点。
1 引言
在计算机专业和非计算机专业的计算机教学中,学校几乎都设置了高级语言程序设计课程。与一些应用软件或工具软件相比,编程课程的教学具有较大的灵活性。很多学生的学习能力较差,课后不肯花时间,久而久之,导致听不懂,给计算机编程语言课的教学带来一定的难度。采用何种教学模式进行教学就成为编程语言教学的一个关键。
2 现阶段程序设计语言教学中存在的普遍问题
根据以往的教学经验和通过与学生、同事之间的交流,得知部分学生反映上课时都能听懂讲解,可在涉及到具体的编程及上机操作时,往往会出现没有思路、无从下手或错误百出,不会调试程序等各种情况,究其原因,在教学方面可能存在以下2个问题。
2.1 过于注重对语句语法的讲解,缺乏以算法为核心的编程题教学教师钟情于举一反三地对使用语句、语法的深入教学,而不是有机地结合算法思想进行教学,贴近生活并引起学生兴趣的编程题讲得很少。由于教学不是站在如何应用计算机工具编程解决实际问题或实际项目的角度,就没有把逻辑与编程解题思路放在主体地位,也就没有很好讲解如何分析问题和解决问题。结果导致学生程序设计能力、上机解题能力训练不够,更谈不上引导学生进行课题研究和科研探索。
2.2 学生厌倦传统的课堂教学,缺乏师生之间的沟通交流学生对于先讲后编、先听后编这一传统的课堂教学方式有厌倦心理。课堂成了教师的“一言堂”,教与学不能衔接起来。有时教师为了赶进度,讲授法成了唯一的教学方法,师生之间缺乏足够的交流和沟通,学生没有有效、实用的学习辅助途径,也间接影响着学生的学习兴趣和学习效果。
3 程序设计教学思想解析
学生与教师的角色改变,就是教与学相互渗透的结果。教学中突出学生的主体能动性,是现代教学方法的核心。教学过程是教师根据教学的目的和任务以及学生身心发展的特点有计划地引导学生掌握知识、认识客观世界的过程,是通过知识的传授和掌握来促进学生身心全面发展的过程。而在教学过程中一定要按照教学规律,只有按照教学规律办事,才能提高教学质量,增强教学效果,并促进学生思维的拓展和能力的提高。
教学应该在理论与实际的结合过程中传授和学习基本知识,从而引导学生运用所掌握的知识去分析问题和解决问题,在动手实践中达到培养学生手脑并用能力的目的。除了进行一些必要的概念讲解之外,教师主要应该让学生通过上机实践的办法来掌握所学内容。一方面,通过上机实践可以加深对课堂理论内容的理解和掌握;另一方面,通过上机实践可以提高学生上机调试程序的能力,提高学生的编程能力,提高学生分析问题和解决问题的能力。
4 程序设计能力认识
程序是软件的本体,程序设计(Programming)是指设计、编制、调试程序的方法和过程。它应排除软件开发中的工程与管理因素,主要指软件开发过程中的技术因素,尤其是计算机技术因素。
根据调查分析,合格程序员必须具有:1)扎实的专业基础知识;2)很强的综合分析和解决问题的能力;3)熟练的编程调试能力;4)创新能力;5)团队合作能力;6)持续的自学能力;7)强烈的好奇心;8)较高的英语水平和软件工程的实践能力等。
应看到,程序设计能力,并非完全等价于程序员所应具备的专业素质,它还包括其他一些内容,如:1)理解问题,根据已知条件,找出求解该问题的数学方法或建立相应的数学模型;2)归纳程序的基本功能;3)设计数据结构和算法;4)用程序设计语言实现算法描述;5)编译与调试;6)测试程序,保证程序正常运行。
综上所述,可以将程序设计能力定义为:依据程序设计思想与观念,应用程序设计语言,采用相应程序开发技术和环境,进行程序设计并达到预计结果的程度。
5 程序设计语言教学要点分析
基于对程序设计教学思想、程序设计能力的认识,为使学生充分掌握程序设计的思想和方法,有效实现程序设计课程教学目标,我认为程序设计教学还应注意并强调以下几个基本的教学任务和要求。
5.1 程序设计基本概念的灌输在整个课程教学过程中,结合具体实例的演示,应向学生反复强调程序,注意学生程序设计中基本概念的理解。学生只有对程序设计基本概念有了正确的掌握,才会为以后课程学习打下基础,为学习兴趣培养埋下伏笔;同时程序设计作为一门特殊意义上的课程,包含了许多计算机用于数据处理的基本原理、基本过程和特点,这些知识蕴藏于程序的基本概念之中,同时这些概念也是程序设计思想与观念的载体。
5.2 结构化程序设计基本概念的培养结合控制语句结构和函数的学习,应着重培养学生的结构化程序设计的基本观念。结构化程序设计的基本思想是采用“自顶向下,逐步求精”的程序设计方法和“单入口单出口”的控制结构,它是程序设计的基本原理之一。贯彻课程始终、通过具体实例潜移默化地培养这一思想,比在软件工程中空洞的说教,更容易被学生理解和接收。
5.3 计算机算法观念的培养通过控制结构、函数等学习,初步培养学生在程序设计中的算法观念。如同数据结构观念培养一样,一则增强学生的程序设计观念,二则也为学生留下广阔的思考空间,以增强学习兴趣。再次,通过这种观念的培养,能够直接提高学生初步的程序设计能力。
5.4 通过优秀的有趣的实例,激发学生学习兴趣恩格斯说“兴趣与爱好是最好的老师”。为了使初学者能尽快地掌握计算机知识,进入计算机的应用领域,在课程讲授过程中,要特别注意培养学生的学习兴趣。学习兴趣就是学生在心理上对学习活动产生爱好、追求和向往的倾向,是推动学生积极主动学习的直接动力。学习兴趣直接关系到教学效果的好坏。为提高学生的学习兴趣,笔者归纳出6个办法:1)通过演示程序突出程序语言的实用性;2)通过简单的编程练习突出语言的易学性;3)运用恰当的类比使复杂问题形象化、简单化;4)做到一题多解;5)要善于举一反三;6)通过解决实际问题使学生乐学。
5.5 有选择地运用多媒体教学直观、形象、便捷的多媒体教学可以使学生在有限时间内迅速理解、掌握、获取更多知识和信息,在教学过程中,我们有选择地使用多媒体教学,将编程语言语法中的深奥理论和逻辑推理的内容,运用多媒体教学直观、形象地讲授给学生,加深其对问题的理解。这样的多媒体教学,收到了将抽象问题形象化、枯燥问题生动化的效果。对于多媒体教学不易实施的程序设计方法的讲解,我们可以采用传统的教学方法,教会学生如何思考、推理,如何用语句实现算法,培养了学生的抽象思维、逻辑推理能力。这样,将传统的教学方法与多媒体教学相结合,大大提高了学生的综合思维能力。
5.6 教师在教学过程中,应当注意设置疑难问题,引导学生思考和探索教学时发现,学生问不出问题的原因往往在于没有真正学好。实际上,问题是最好的老师,是学生学习的引导者,没有问题便没有深入。在教学过程中,引导学生在问题解决中学习,即提出问题,留给学生时间思考、讨论、解决问题,从而更深入地展开学习。实践证明,这种教学方法充分调动了学生学习的积极性和主动性。
5.7 充分利用上机实践程序设计语言,学生与教师在理论课与实践课的角色是不同的。教师从课堂上的教学组织者转变为上机操作的指导者。作为教学组织者,负责知识点的传授,此时教师有较充分的主动性,易于控制所传递的知识内容,可使学生在较短时间内获得较多的知识。但学生只是被动地接受知识,学生的积极参与少。上机操作是实现检验计算机编程语言课堂教学效果的重要方面。此时的教师是上机的辅导者,学生亲自动手、动脑参与教学活动。但是上机操作课对学生来说是轻松的,若教师管理不当,会造成学生无所事事的局面。上机课是对理论课的应用和检验,对教师有更高的要求,因此,上机操作前教师要根据知识点布置相应的练习任务,编程序或调试程序。同时学生要完成有针对性的上机报告,进一步巩固上机成果。
5.8 布置代表性的作业做作业是复习、练习的过程,也是继续和深入学习的过程。我们每次课后给学生布置一些有代表性、恰当的习题,以巩固课堂上所学的内容。也通过学生所做作业的好坏来了解学生对课程内容的掌握程度以及教师的教学效果。对作业中比较普遍出现的错误,我们都要在下节课上当堂讲解,因为那是在上节课没讲清楚所致。作业中表现出与众不同的、新颖的程序设计方法和思路,也要当堂宣讲或作业批注,以鼓励这种另辟新径的有创意的学风。
在程序设计语言教学中,尤其语言基本要素的讲解过程中,或隐或显地,把如上几点教学内容纳入到课堂中,程序设计语言教学必定会从一种就语言而教语言的呆板模式中走出来,充分发挥出其在程序设计能力培养中的作用。
计算机程序设计论文范文6
关键词:计算思维;教学模式;计算机课程改革;计算思维课程体系
0.引言
近年来,众多专家学者关注计算思维,研究如何把它引入到大学计算机基础教育课程中,认为计算思维是近十年来计算科学和计算机学科中最具有基础性、长期性的重要学术思想。同时,国家提出了深化高等教育改革应该走以提高质量为核心的发展道路。为此,我们将计算思维融入计算机基础教学,努力构建“素质培养-思维训练-拓展创新”课程体系,形成教学整体解决方案,新的计算机基础教学计划已在北京交通大学全面实施。
1.“1+X”的计算机基础教学课程体系
1997年高教司155号文件《加强非计算机专业的计算机基础教学的几点意见》明确提出高校要将计算机课程纳入学校基础课程范畴,确立了计算机基础教学的必修课和入门课地位。教育部高等学校计算机科学与技术教学指导委员会2006年了计算机基础教学白皮书――《关于进一步加强高等学校计算机基础教学的意见暨计算机基础课程教学基本要求》,据此构建“大学计算机基础”课程和6门典型核心课程的“1+X”的设置方案。“1+X”课程体系强调课程知识体系的完整性,内容涉及知识面广,理论内容较深,但由于实践体系不完善,因此难以达到教学目标。在教学实践中我们发现该体系课程内容设置忽视了非计算机专业对计算机知识的需求,没有充分体现计算机公共基础课程的特征,同时缺少完善的教学实践系统。经过多年的教学改革,我们积累了从线上虚拟实践系统到机房和硬件实验室的线下实验环境,我们整合这些资源,提出了“重文化-强能力-求创新”的计算机基础教学新模式(以下简称“新模式”),如图1所示。
实践育人是目前我国大学教育面临的新问题。尽管多年来大学教育一直强调教学实践,但是如何完善实验环境,使实践教学与课堂教学有机融合,是我们面临的问题。新模式注重实践教学体系,从计算机技术的产生、发展以及发展过程中里程碑式的人和事,使学生对计算机技术影响人类文明发展有了全面系统的了解;突出计算机技术在相关专业和交叉学科中解决问题的思维方式与科学方法,进而激发学生的思维与创造力;拓展学生的自我学习空间,构造多层次创新人才成长环境,使学生充分感受到计算机科学与技术的渗透力,面对未来敢于挑战。
基于新模式构建的课程体系突出公共基础课程的特点,从单纯的技能培养上升到强调通识知识、文化的学习和对学生计算机思维能力的培养。围绕新模式我们开展了一系列教学实践,构建以资源整合为基础的实践训练平台。
2.以计算思维为导向的计算机基础教学课程新体系
计算机基础教学课程新体系以学分制为基础实施目标管理,设定总体学分要求,学生可据此自主构筑知识结构。新的课程体系内容包括如下3层:
(1)素质培养层。通过大学计算机基础培养大学生所必须具备的计算机文化基本素质,在计算机基础知识与综合能力方面打基础,为后继课程作准备。
(2)思维训练层。以培养学生计算思维的基本方法和运用计算机的基本能力为目标。计算机程序设计作为大学计算机基础课程后的一门重头课,教学内容针对不同专业领域,覆盖面向对象的C++、Java、VB、Web等不同的实践环境,支持实现分类分层教学,满足学生的学习要求。
(3)拓展创新层。该层目标是开拓学生视野,提升学生综合应用计算机的能力,使学生具有基本的创新意识。通过一组选修课程(如与专业结合的计算机课程、前沿技术的计算机课程等),进一步培养学生的计算机综合应用能力和创新能力,满足专业需求和信息化社会对人才的需求。
3.以培养思维创新能力为核心的实践教学体系
3.1多层次人才培养的实践教学平台
按照新的教学体系,以文化修养熏陶和基本操作技能训练为基础,以计算思维素质培养为核心,以综合应用和创新能力培养为主线,构建新的实践课程体系(以下简称“新体系”)。新体系横向划分为4个层次,重视操作型和技能验证型实验,普及设计型和综合型实验,鼓励研究型和创新型实验。
第1层次为文化修养熏陶。学生通过计算机认知学习平台了解和认识计算机,注重计算机在人类发展历史上的作用和新的发展趋势,加深对计算机的学习与理解。该层次要求学生掌握计算机基本操作,如文字处理以及通过网络进行信息检索。学生可通过立体化学习资源以及课外辅导自行完成。
第2层次为基本技能实验。以操作型和技能验证型实验为主,注重基本的实验原理、实验方法和实验技能,初步培养学生的创新意识和综合素质。以计算机基本操作和基本应用为主,如掌握信息获取、数据处理、信息展示等相应软件的使用。学生可以通过选修课、实训等方式在开放的软件实验环境完成。
第3层次为计算思维素质实验。以设计型和综合型实验为主,训练学生的计算机程序设计能力,重在培养学生计算思维,主要包括C++语言程序设计、Java语言程序设计、VB语言程序设计、Web程序设计和网站与网页设计等课程。不同专业方向的学生根据专业需求进行选择。本层实验强调提高软件应用能力,培养应用所学知识解决工程实际问题的综合能力。
第4层次为综合应用与创新实验。本层次包括计算机硬件、数据库、计算机网络、多媒体等课程,以创新型、新技术和高层次应用实验为主,重在启发和培养学生的研究兴趣和动手能力,提高学生综合素质和研究能力。本层次的教学结合大学生创新项目,强调将教师的研究成果应用于教学中。教师根据自己的研究工作和科研项目实验项目内容。学生选择相应实验项目后,在教师指导下,自主地对实验项目进行分析和设计,以小论文或软件形式给出结果。
3.2“以学生为主体,以教师为主导”的实践教学模式
在教学实践中,我们发现提高教学效果的一个根本问题是如何提高学生的计算机应用能力,这需要通过大量的实验实践来实现。学生在课外练习中,经常遇到课堂上不曾讲授过的知识和问题,由于不能尽快获得教师的指导,使得一些疑难问题得不到解决,严重影响学生的学习兴趣和学习效果。为此,结合大学计算机基础课程的教学改革,我们对教师工作进行重新配置,保证线上和线下都能参与辅导。同时,安排高年级研究生进行实时线上辅导,安排教师在实验室值班,承担起学生课外计算机应用技能的辅导。我们构建以能力为主导的课程考试机制,检验学生是否掌握计算机知识和技术,即学生如何应用计算机解决实际问题。考试机制将提高计算机实测比例,根据解决问题的实际效果客观评判。总成绩为“基础知识+综合实验+教学参与”,占比为5:4:1。
建立学习奖励机制,即成绩结构中的教学参与成绩,对学习拓展模块和参与创新型实验的同学,综合其实验报告、实验结果演示、答辩等环节,对他们的学习主动性进行评价。在课程的总成绩中,实验成绩所占比例由20%提高到40%,对其别优秀的,经过答辩组老师的评议,其成绩可直接作为该课程的成绩,免予期末考试。
3.3“惠及大众,培育冒尖”的创新人才培养模式实践
ACM-ICPC(ACM International Collegiate Programming Contest)是世界上公认的规模最大、水平最高的国际大学生程序设计竞赛,是当代信息技术相关专业的大学生展示其创新实践能力和国际竞争力的高端平台。为此,我们构建了以ACM程序设计竞赛为基础的拓展创新训练平台,坚持“惠及大众,培育冒尖”的主导思想,践行“赛课结合,赛练互动”的执教方法,重视“训练平台,管理机制”的建设环节,获得了良好的实践效果。
ACM程序设计竞赛是少数精英型学生参与的活动,但是也不能曲高和寡、脱离大众。根据学生的实际需求,结合国内、国际不同层次的计算机竞赛要求,在重点培养拔尖人才的同时,充分利用优势资源,面向全校开设讲座以及校内竞赛,达到鼓励一般、重点培养的目的。
4.差异化教学实践模式
4.1基于学科差异的分类教学
好的教学体系需要一个操作性强的教学模式来支持。计算机基础教学面对全校不同专业的学生,每个专业的计算机能力要求差异较大。在对北京交通大学各学院调研的基础上,我们对专业需求进行分析、归类和总结,根据“学科专业、知识结构、培养层次”构建如下的计算机基础课程分类、分层和模块化的教学模式。
学科专业分为3个大类:理工类、人文/外语类、经济/管理类。
知识结构分为3个模块:大学计算机基础、程序设计基础和计算机技术与应用。
培养层次分为2个层次:基本能力培养和创新能力培养。
4.2基于学生个体差异的分层教学
根据学生个体差异,构建“强基础,重技能,鼓励创新”的层次教学结构,强化对理论知识的掌握和对实践能力的培养,如图2所示。
理论知识分为基础知识、专项应用和综合应用3层;实践能力分为基本技能、应用技能和创新技能。
新课程体系在教学实践中考虑学生的个体和专业差异,培养方案面向全体学生。如图2所示,基础教学强调对基本的概念、原理和方法的掌握,目标定位在使绝大部分学生通过学习能够掌握该课程领域的基本知识和技能。学生在学习过程中可以根据各自的基础选择学习或免修。个体培养而向优秀学生(如思源班、卓越工程师计划班、国际班等),该部分教学与学校的大学生创新活动和学科竞赛相结合,使学生有机会进一步拓展视野,提高能力。
4.3基于过程的模块化课程教学
在分类、分层次教学体系中,每门课程采取“重基础、强实践、过程考核”的模块化教学。每门课程包括基础知识模块和研究拓展模块。基础知识模块为本课程所有学生必须掌握的基础理论和基本技能;拓展模块为根据授课对象构建的该课程的专项应用知识和技能。我国中学计算机教育状况不均衡,为满足不同水平学生的求知欲望,考试采用阶段性过关考核方式,每学期安排至少2次考试,对于已学习过相关内容的学生可以参加第一次考核,通过后进入优秀学生培养过程的学习,进行拓展模块知识的学习。拓展模块由任课教师根据所在教学班的具体情况进行安排,充分发挥教师的优势,体现个性化教育。
4.4实践教学新体系
建立与理论教学并行的,既相对独立,又相互联系的实践教学新体系。新体系加强基础,拓宽专业知识面,培养学生综合实践能力,全面提高学生的实验知识、实验技能、工程素质和创新能力,加强学生的社会适应能力。新体系压缩了课内教学时数,增加实验时数,同时精选知识点和技能点。
教师在课堂上讲出内容的精髓后,让学生在计算机上练习实验相关的技术和方法。教学和实验时数一般达到1:1甚至1:2,如C语言程序设计课程,24学时上课,24学时实验教学,再加上24学时的课外实践。
5.教学实践与成果
5.1新课程体系应用
2012北京交通大学新教学计划规定非计算机专业计算机课程选修学分为4学分。根据计算机基础教育的指导思想与教育理念,大学本科学生入学后先学学计算机基础课程,然后选修1门程序设计课及相应的课程设计,如表1所示。
5.2教学实践成果
新课程体系经历了“研究-实践-调研-修改”的螺旋式发展过程,我们从教学实践中找问题,发现新方法,不断完善课程体系。
1)开展能力培养与思维训练相结合的实践教学。
利用自制的立体化教学资源,突出实验教学中的分类、分层的分级实践教学模式,以满足不同基础不同层次不同专业学生对教学的需求,实现因材施教和个性化培养。新课程体系在2010年选择了3个学院、4个课堂进行试点,2011年开始在新生范围内试运行,2012年在全校范围内试行新课程体系。
2)突出过程考核与理论考试相结合的能力检查机制。
利用自主研制开发的在线考试系统和试题库构建灵活的考核机制。自2008年以来每届新生的大学计算机基础课程考试全部采用“实验作业+课程设计”方式,强调对学生实践动手能力和计算机综合应用能力的培养;C语言程序设计课程采用笔试和上机编程相结合的模式,其他系列课程则分别采用开卷、半开卷等模式进行考核。
3)探索“惠及大众,培育冒尖”的创新人才培养模式。
2008-2011年间,北京交通大学代表队连续4年晋级ACM-ICPC全球总决赛,并获排名奖状,其成绩在中国大陆名列前茅(中国大陆只有上海交通大学、清华大学、北京大学、浙江大学、复旦大学、中山大学和北京交通大学7所学校连续4年晋级全球总决赛并获排名奖状);北京交通大学代表队在ACM-ICPC亚洲区预赛中获金奖5次、银奖9次和铜奖17次。