陈丛
摘要:该文基于独立学院的培养目标和学生特点,深入剖析了《高级语言程序设计》课程的教学定位和教学现状;总结了该课程的教学改革活动;找出了一些提高该课程教学质量和学生动手实践能力的方法。
关键词: 程序设计;C/C++;课程改革;实践;教学
中国分类号:TP311 文献标识码:A 文章编号:1009-3044(2012)34-8192-02
高级语言程序设计是高校信息技术类专业的基础课程。基础编程能力和编程思维的养成对于学生后续的专业课程学习和日后的专业能力的培养存在重大影响,这些都决定了这门课程的特殊地位。传统的程序教学模式中理论教学与实验教学的学时比重不均衡;同时实验课上教师的时间有限,面向的学生众多,无法有针对性的辅导每一位学生;学生以个人为单位完成实验,相互间的交流不够。同时,部分学生心理上存在着畏难情绪,存在着依赖和功利心理,学习积极性不够。这些情况直接或间接的导致了这门课程的教学无法达到预期的目标,学生的动手能力偏弱。
1课程定位
从1999年至今,国内大学办学模式呈现多元化发展,独立学院的办学模式也有所发展。在十多年的发展历程中,各独立学院都在不断探索适合自身的教学教研和人才培养模式。基于独立学院学生的综合素质和专业设置,我们在信息技术相关专业的教学中可以采取如下的思路:在理论教学中突出够用、能用、会用,在实践教学突出基本技能、专业工作能力和综合技能,在实验教学中突出基本实验、综合实验、仿真与开放实验。换句话说,我们可以将学生的培养目标定位为培养应用型本科人才,以匹配社会就业的要求。同时,独立学院作为正规本科,所培养的应用型本科人才应区别于高职高专学校培养出的技能操作应用型人才。
编程语言类课程是各高校信息技术类相关专业的必修的基础课。我院在相关专业(包括计算机专业、网络工程专业、通信专业等)的一年级开设了《高级语言程序设计》课程。该课程为一个学年,包含了C语言和C++语言的学习,旨在培养学生的编程思维能力和实践动手能力,从而为后续的专业课程学习奠定良好的基础。
2教学中存在的问题
在较大的范围内,编程语言的教学往往存在理论性强,内容枯燥困难,不易掌握等问题,而学生则缺乏学习的积极性和动力,不愿意迎难而上,为应付考试“死记”程序,缺乏思考能力和动手实践能力。结合实际教学的情况,笔者认为在目前的教学过程中可能存在以下一些问题。
2.1学生个性化色彩浓厚
90后的学生有着广泛的途径接收各种各类的知识和信息,大多具有较强的个性。同时,作为独立学院的学生,他们与一般研究型本科院校的学生有所区别。对于教师和课本,他们并不奉为经典,在学习的过程中,带有更多的随性的色彩,往往根据个人的兴趣和情绪选择性的接收知识;对于不感兴趣的内容,则排斥心理较强。
2.2学生功利心理较强
随着社会就业压力的增大,越来越多的学生从一入学就感受到这种压力,越来越多的学生在学习知识和技能的时候首先考虑的不是怎么学好,而是“有没有用”。而对于基础类的课程,由于课程性质和课程定位的限制,往往受到这种思想的强烈影响。学生比较容易忽略基础课程的重要性。
2.3学生存在畏难心理
学生在学习上存在依赖和畏难心理,希望教师提供最为详细的思路和步骤,而由自己完成按部就班的执行。较多学生不够重视大学与高中两个不同阶段学习方法和培养目标上的差异。大学阶段的学习中,教师更多的承担着引导者的角色,而希望学生能够具备一定的自学能力。但是一年级的新生在这个转换的过程中存在一定的困难,从而容易导致因困难而放弃,最终影响学习。
2.4实验辅导缺乏针对性
部分教师在教学过程中过于强调理论的讲授,而忽略了本课程所要求的动手实践能力。同时由于实践教学的时间相对较少,单个教师面对的学生数较多,在实验教学中没有足够的面对单个个体学生的指导实践,在实验中的指导具有广泛性而缺乏针对性。
教与学的任何一个环节出现问题,都将影响最终的教学效果。在开展教学的过程中,教师需要进一步的完善自身,改进教学方式方法,同时要更加注重对于学生的引导,通过不同的方法促进、激发学生的学习积极性与主动性,避免学生出现厌学情绪和急功近利的不良心理。
3教改实践与体会
经过几年教学活动的开展,本课程的教学改革取得了一定成效,积累了较多经验。
3.1培养学生兴趣,提高学习积极性
兴趣永远是自主学习的关键。我们可以采取多样化的教学方法来激发学生的学习兴趣,逐步的进行引导,使学生逐渐适应编程学习,养成良好的编程思维。首先,在课程初始时,教师可以通过作品展示的形式为学生建立一个实践目标,并注意作品选择过程中的难度和趣味性,在起始阶段引发学生的兴趣。其次,在教学过程中,要尽量避免大量语法性知识的直接抛出,而采取从案例中引出知识点的方式,进一步维持学生的学习积极性,阻止畏难情绪的产生。再次,在课堂案例的选择和设置中要注意连贯性,注意前后知识的衔接;在课堂上可以选择适当的案例进行例题设错,一方面强调了相关知识点的应用,另一方面也有助于提高学生的程序阅读和纠错能力。最后,实验题或课后题的设置要注意难度梯度的设置,既避免能力较弱的学生失去信息,也避免能力较强的学生丧失挑战的兴趣。
3.2促进学生协作学习,培养团队合作精神
协作学习由DavidW.和RogerR.Jonson教授提出,是学生以小组形式参与、为达到共同的学习目标、在一定的激励机制下最大化个人和他人习得成果,而合作互助的一切相关行为。协作学习是一种通过小组或团队的形式组织学生进行学习的一种策略。小组内部个体之间可以采用对话、商讨、争论等形式对问题进行充分论证,以期获得达到学习目标的最佳途径。协作学习有利于发展学生个体的思维能力,增强学生个体之间的沟通能力以及对学生个体之间差异的包容能力。协作学习对提高学生的学习成绩、形成学生的批判性思维与创新性思维等都有明显的积极作用。在实际教学中,在尊重学生个体差异和确保一人一机的基础上,利用局域网,将学生分成小组进行协作实验;将实验心得体会、结论等共享,改变各自为阵,互不往来的实验组织方式。
3.3开展课程设计,以项目方式培养实践能力
在一个学年的课程结束之后,学生积累了一定的理论知识和实践能力,在此基础上,我们可以采取课程设计的方法来使学生对于已学知识进行融会贯通,培养其工程开发能力。同时,可以让学生产生成就感,通过学习可以独立完成一个作品。除了实践能力方面的锻炼之外,课程设计中还要求学生为设计作品提供相应的开发文档,在提交作品时完成演示和答辩的环节,使学生获得文档撰写等方面的锻炼。课程设计实施以来,学生中反响良好,动手能力有了普遍提高,对于软件开发及其流程具备了一定程度的了解。
4结束语
自2005年以来,在学院各级领导的支持下,本课程教学团队不断总结教学经验,逐步完善自身的教学技能;不断尝试新的教学方式方法,教学效果有较大提高,学生在编程能力上有一定的提高,对软件项目的开发有了一定程度的了解,为后续的专业课程的学习打下良好的基础。
参考文献:
[1]张素芹,吴连生.独立学院“C语言程序设计教学改革实践”[J].计算机教育,2010(14):21-23.
[2]谢志英,王静,陈静.C语言课程中学生问题求解能力的培养[J].计算机教育,2011(3):56-61.
[3]丁海燕.C语言程序设计教学主线与教学创新[J].高等理科教育,2012,4:122-125.
[4]蒋霞.基于CDIO理论的C语言程序设计课程改革[J].电脑知识与技术,2012(27):6523-6524.
[5]王晓霞.《C语言程序设计》教学策略与效应[J].电脑知识与技术,2012(26):6310-6312.
[6]刘树锟,陈振,文雄军,梁华.应用型民办院校程序设计教学方式探讨[J].计算机教育,2011(24):84-86.
[7]吴丽娟,申海,张浩华.C语言课程设计教学模式的探索与实践[J].沈阳师范大学学报:自然科学版,2012(1):122-125.
[8]何海棠.程序设计类课程教学思考[J].甘肃联合大学学报:自然科学版,2012(4):107-110.