论文部分内容阅读
摘要:该文通过对《C语言程序设计》公共基础课教学活动的现状调查,着眼于:课程目标、教学目标、教学内容与教学方法以及教学辅助平台四方面,详细剖析现存的问题,并从目标建设、备课与反思、教学辅助平台建设三方面提出几点建议,以期对改善和提高《C语言程序设计》公共基础课教学质量提供一点参考意见。
关键词:C语言程序设计;基础课;教学
中图分类号:G424文献标识码:A 文章编号:1009-3044(2011)23-5673-02
由于C语言功能强大且语法简洁的特点,所以是学生学习计算机语言的一门很好的入门语言。《C语言程序设计》已成为我国大多数高校非计算机专业本科生的公共必修课,对于学生而言,由于牵涉到的概念比较复杂,规则较多,使用灵活,容易出错,又缺乏必要的计算机软硬件基础知识,因而学习起来困难重重,普遍认为该门课程抽象、艰涩、难懂极易产生厌学情绪;对于教师而言,由于学生的基础薄、情绪低、课程学时少、教学内容繁多等原因,被多数教师认为是最难教的课程之一。知识本身的难度,学生起点的薄弱都是不可更改的事实,那么解决目前教与学的困难现状,就只能从教学活动入手,寻找目前教学中存在的问题,力求探索出适合的解决途径。
1 问题分析
目前整个教学中存在的问题有如下几点:
1.1 课程目标存在的问题
目标可以分为:培养目标、课程目标和教学目标三种。培养目标是学校根据国家的教育目的和自己学校的性质和任务,对培养对象提出的特殊要求。实现培养目标,必须靠课程目标和教学目标的制定与顺利实施才能完成。课程目标依据培养目标从课程的角度规定了人才培养的具体规格和质量要求,是课程计划的重要组成部分,明确了课程目标才能确定课程方案,才能确定教学目标。教学目标是教学工作者根据课程目标具体要求结合学生情况而制定的,将直接规定教与学活动的内容、程度并制约着教与学的方式方法。目前《C语言程序设计》课程(以下简称《C》)主要面向四类学生开设:非计算机专业理工类本科生、计算机类专业本科生、高职高专计算机类专业学生、高职高专非计算机专业理工类学生。应该说各个学校的性质、学生起点及学科专业的要求都不尽相同,在总的培养适应21世纪信息化时代的人才需求目标下,应该在课程目标的设置上体现出其中的差别,但目前我们看到的课程目标的设置存在两种情况:1)太过宽泛,课程目标本应是明确而又清晰的,要有“内容”和“行为”两个方面,可以直接应用其对教与学进行评价,但目前我们的课程目标很多地方几乎是培养目标的再述,统一而模糊,缺乏明确导向和可操作性;2)不切实际,调查显示《C》公共基础课的课程目标、专业基础课的课程目标以及高职高专的专业课或公共课表述雷同,甚至有的地方是直接把专业课的课程目标拿来作为公共基础课的课程目标,这里显然有问题,不切实际的课程目标掣肘了下一步教学目标的制定以及教学任务的完成。
1.2 教学目标存在的问题
要明白教学目标不是教师随心所欲的编造,不是课堂教学可有可无的点缀,它在教学活动中处于核心位置,它指出了教学的主攻方向,规定了一节课的教学内容、重点难点、学习层次水平,影响着教学方法的选择以及教学的深广度等,制约着教学活动的全过程,它既有定向功能又有调控功能。倘若确立教学目标这个环节出了毛病,必将导致教学活动的偏差或失误。而在我们的实际教学中发现,有两种常见现象:1)忽略教学目标,有的学校只有一个简单的教学进度表,教学目标由授课教师独立完成,而许多老师在备课时也只是“心中有数”,在授课中通常只是罗列出本堂课要讲授哪些内容,比如只出示教学内容为:“字符数组的定义与初始化,字符数组的应用”,将精力重点放在字符数组应用时应选取哪些案例,如何做好ppt呈现等等工作上面,根本没有教学目标的准备与制定;2)表述不明确,即使制定了教学目标,也多流于形式,或照抄课程目标中的内容,表述不明确,操作性不强。如“熟练掌握循环结构”“掌握字符数组的应用”,这样的描述对课堂教学活动显然不能充分发挥导向作用。教学目标不仅是为教师的教学活动定向更是学生用以检测自己学习效果的标准,而没有或模糊的表述,对学生的自我核查是很难起到作用的。
1.3 教学内容与教学方法存在的问题
为了解决《C》课程的学习与授课难度,广大一线教师做了很多尝试,但纵观我们对教学的改进、改革,会发现似乎更多的是在教学方法上的改革,比如大家很熟悉的一些研究是:案例法在《C》教学中的应用、项目驱动法在《C》教学中的应用、目标法在《C》教学中的应用,问题式教学法在《C》教学中的应用等等,事实上教学方法的选择要受“教学内容、学生情况、教师特点”等的影响与制约,在方法与内容两者之间,有效的教学应该首先关乎的是教学内容,内容如果选取或侧重点有问题,那么方法再新颖、讲的再精彩,其价值也是有限并值得商榷的。所以较之教学方法,教学内容更为重要,我们应该优先考虑的是教什么?先教什么?再教什么?后教什么?重点教什么?哪里是可以简单带过的等等。而目前我们的情况是教师对两者的关注度失衡,备课时老师们花大力气在思考采用哪一种先进的教学方法,或怎么用上这些先进的教学方法。忽视了很重要的一点:教什么要更重于怎么教。
1.4 教学辅助平台存在的问题
由于学时的紧张,课上学生练习时间难以充分保证,遇到问题,教师很难一一照顾过来,所以急需延展课堂的外延,而因为互联网技术的发展,很多学校都设计了精品课程学习网站、购买或自主研发学习平台,希望为学生打开另一扇学习之窗,笔者在本文统称教学辅助平台,教学辅助平台它不仅是《C》课程,也是当前各个学科普遍通用的教学辅助工具,它提供了一个不受时空限制、无处不在的学习环境,在平台上有课程的相关资源,学生可以随时获得帮助,教师也可以通过网络教学平台检查学生对知识点的掌握程度,利于与学生保持及时、必要的情感交流。如下图是我校正在使用的“C语言自主学习园地”,分“基础知识概要”、“单元测试”、“综合测试”、“经典算法”4个模块,园地中利用率最高的是两个测试模块,学生在测试模块中可以对知识掌握做出自我判断,但还存在以下三个主要问题:1)平台功能不强,最主要的是缺少交流平台;2)资源更新过慢,学生做过几次之后,题目都见过就不再愿意使用 3)师生应用不多,这个问题也可以说是前两个问题的必然结果。没有交流,资源更新缓慢,就无法形成良好的使用氛围,极大地限制平台的功能的发挥,无法达到我们预期的目的。
2 几点建议
身边讲授C语言的老师曾做过这样的比喻,《C》的课堂像战场,稍不留神就有兵败的感觉。根据前述分析,笔者有以下几点建议:
2.1 关注目标建设
这里的目标指课程目标和教学目标两个方面。
1)对于课程目标,要充分考虑目标的适宜性。明确我们的《C》课程是全校公共基础课,而非专业必修课,要全盘考虑:学校的性质、学生的起点与特点、师资力量、专业培养计划、学校的总体培养计划等等各方面因素,它应由校、二级学院专家、授课组教师共同参与制定,以保证课程目标适宜本校学生的发展。并且由于课程目标通常给的比较宽泛和宏观,为了更好的实现目标,需要制定具体的课程目标说明,将目标中的要求逐条解读,为下一步授课教师制定教学目标、开展教学活动提供充分的指导依据。
2)对于教学目标,要关注目标的制定过程。首先要改变对教学目标的制定现状,学期和单元教学目标的制定不应是教师的个人行为,而应由专家和一线教师集体完成,任课教师根据学期和单元教学目标和自己所任班级学生特点制定出适宜本班的课堂教学目标,并在每堂课教学中予以出示,使学生明确自己的学习任务,并检测自己的学习效果。其次,在具体对教学目标的设置中,要强调目标的可操作性,学习制定教学目标的方式方法。表述上要使用清晰、易于检测、易于操作的动词来表述,将行为具体化。例如:说出函数定义时需要注意的问题;说出while 、do ……while、for三种循环结构的执行流程;能用printf()语句输出任意类型的数据;能使用循环结构求出某范围内符合要求的数据和。
关键词:C语言程序设计;基础课;教学
中图分类号:G424文献标识码:A 文章编号:1009-3044(2011)23-5673-02
由于C语言功能强大且语法简洁的特点,所以是学生学习计算机语言的一门很好的入门语言。《C语言程序设计》已成为我国大多数高校非计算机专业本科生的公共必修课,对于学生而言,由于牵涉到的概念比较复杂,规则较多,使用灵活,容易出错,又缺乏必要的计算机软硬件基础知识,因而学习起来困难重重,普遍认为该门课程抽象、艰涩、难懂极易产生厌学情绪;对于教师而言,由于学生的基础薄、情绪低、课程学时少、教学内容繁多等原因,被多数教师认为是最难教的课程之一。知识本身的难度,学生起点的薄弱都是不可更改的事实,那么解决目前教与学的困难现状,就只能从教学活动入手,寻找目前教学中存在的问题,力求探索出适合的解决途径。
1 问题分析
目前整个教学中存在的问题有如下几点:
1.1 课程目标存在的问题
目标可以分为:培养目标、课程目标和教学目标三种。培养目标是学校根据国家的教育目的和自己学校的性质和任务,对培养对象提出的特殊要求。实现培养目标,必须靠课程目标和教学目标的制定与顺利实施才能完成。课程目标依据培养目标从课程的角度规定了人才培养的具体规格和质量要求,是课程计划的重要组成部分,明确了课程目标才能确定课程方案,才能确定教学目标。教学目标是教学工作者根据课程目标具体要求结合学生情况而制定的,将直接规定教与学活动的内容、程度并制约着教与学的方式方法。目前《C语言程序设计》课程(以下简称《C》)主要面向四类学生开设:非计算机专业理工类本科生、计算机类专业本科生、高职高专计算机类专业学生、高职高专非计算机专业理工类学生。应该说各个学校的性质、学生起点及学科专业的要求都不尽相同,在总的培养适应21世纪信息化时代的人才需求目标下,应该在课程目标的设置上体现出其中的差别,但目前我们看到的课程目标的设置存在两种情况:1)太过宽泛,课程目标本应是明确而又清晰的,要有“内容”和“行为”两个方面,可以直接应用其对教与学进行评价,但目前我们的课程目标很多地方几乎是培养目标的再述,统一而模糊,缺乏明确导向和可操作性;2)不切实际,调查显示《C》公共基础课的课程目标、专业基础课的课程目标以及高职高专的专业课或公共课表述雷同,甚至有的地方是直接把专业课的课程目标拿来作为公共基础课的课程目标,这里显然有问题,不切实际的课程目标掣肘了下一步教学目标的制定以及教学任务的完成。
1.2 教学目标存在的问题
要明白教学目标不是教师随心所欲的编造,不是课堂教学可有可无的点缀,它在教学活动中处于核心位置,它指出了教学的主攻方向,规定了一节课的教学内容、重点难点、学习层次水平,影响着教学方法的选择以及教学的深广度等,制约着教学活动的全过程,它既有定向功能又有调控功能。倘若确立教学目标这个环节出了毛病,必将导致教学活动的偏差或失误。而在我们的实际教学中发现,有两种常见现象:1)忽略教学目标,有的学校只有一个简单的教学进度表,教学目标由授课教师独立完成,而许多老师在备课时也只是“心中有数”,在授课中通常只是罗列出本堂课要讲授哪些内容,比如只出示教学内容为:“字符数组的定义与初始化,字符数组的应用”,将精力重点放在字符数组应用时应选取哪些案例,如何做好ppt呈现等等工作上面,根本没有教学目标的准备与制定;2)表述不明确,即使制定了教学目标,也多流于形式,或照抄课程目标中的内容,表述不明确,操作性不强。如“熟练掌握循环结构”“掌握字符数组的应用”,这样的描述对课堂教学活动显然不能充分发挥导向作用。教学目标不仅是为教师的教学活动定向更是学生用以检测自己学习效果的标准,而没有或模糊的表述,对学生的自我核查是很难起到作用的。
1.3 教学内容与教学方法存在的问题
为了解决《C》课程的学习与授课难度,广大一线教师做了很多尝试,但纵观我们对教学的改进、改革,会发现似乎更多的是在教学方法上的改革,比如大家很熟悉的一些研究是:案例法在《C》教学中的应用、项目驱动法在《C》教学中的应用、目标法在《C》教学中的应用,问题式教学法在《C》教学中的应用等等,事实上教学方法的选择要受“教学内容、学生情况、教师特点”等的影响与制约,在方法与内容两者之间,有效的教学应该首先关乎的是教学内容,内容如果选取或侧重点有问题,那么方法再新颖、讲的再精彩,其价值也是有限并值得商榷的。所以较之教学方法,教学内容更为重要,我们应该优先考虑的是教什么?先教什么?再教什么?后教什么?重点教什么?哪里是可以简单带过的等等。而目前我们的情况是教师对两者的关注度失衡,备课时老师们花大力气在思考采用哪一种先进的教学方法,或怎么用上这些先进的教学方法。忽视了很重要的一点:教什么要更重于怎么教。
1.4 教学辅助平台存在的问题
由于学时的紧张,课上学生练习时间难以充分保证,遇到问题,教师很难一一照顾过来,所以急需延展课堂的外延,而因为互联网技术的发展,很多学校都设计了精品课程学习网站、购买或自主研发学习平台,希望为学生打开另一扇学习之窗,笔者在本文统称教学辅助平台,教学辅助平台它不仅是《C》课程,也是当前各个学科普遍通用的教学辅助工具,它提供了一个不受时空限制、无处不在的学习环境,在平台上有课程的相关资源,学生可以随时获得帮助,教师也可以通过网络教学平台检查学生对知识点的掌握程度,利于与学生保持及时、必要的情感交流。如下图是我校正在使用的“C语言自主学习园地”,分“基础知识概要”、“单元测试”、“综合测试”、“经典算法”4个模块,园地中利用率最高的是两个测试模块,学生在测试模块中可以对知识掌握做出自我判断,但还存在以下三个主要问题:1)平台功能不强,最主要的是缺少交流平台;2)资源更新过慢,学生做过几次之后,题目都见过就不再愿意使用 3)师生应用不多,这个问题也可以说是前两个问题的必然结果。没有交流,资源更新缓慢,就无法形成良好的使用氛围,极大地限制平台的功能的发挥,无法达到我们预期的目的。
2 几点建议
身边讲授C语言的老师曾做过这样的比喻,《C》的课堂像战场,稍不留神就有兵败的感觉。根据前述分析,笔者有以下几点建议:
2.1 关注目标建设
这里的目标指课程目标和教学目标两个方面。
1)对于课程目标,要充分考虑目标的适宜性。明确我们的《C》课程是全校公共基础课,而非专业必修课,要全盘考虑:学校的性质、学生的起点与特点、师资力量、专业培养计划、学校的总体培养计划等等各方面因素,它应由校、二级学院专家、授课组教师共同参与制定,以保证课程目标适宜本校学生的发展。并且由于课程目标通常给的比较宽泛和宏观,为了更好的实现目标,需要制定具体的课程目标说明,将目标中的要求逐条解读,为下一步授课教师制定教学目标、开展教学活动提供充分的指导依据。
2)对于教学目标,要关注目标的制定过程。首先要改变对教学目标的制定现状,学期和单元教学目标的制定不应是教师的个人行为,而应由专家和一线教师集体完成,任课教师根据学期和单元教学目标和自己所任班级学生特点制定出适宜本班的课堂教学目标,并在每堂课教学中予以出示,使学生明确自己的学习任务,并检测自己的学习效果。其次,在具体对教学目标的设置中,要强调目标的可操作性,学习制定教学目标的方式方法。表述上要使用清晰、易于检测、易于操作的动词来表述,将行为具体化。例如:说出函数定义时需要注意的问题;说出while 、do ……while、for三种循环结构的执行流程;能用printf()语句输出任意类型的数据;能使用循环结构求出某范围内符合要求的数据和。