王 杰
(辽宁科技大学)
程序设计,作为一门强调实践的课程,在其教育教学模式上,需注意理论教育和实践教育的双重把握,不可偏废,而其中尤应注意突出实践方面的教育。就目前高校就业反馈信息来看:高校计算机编程人才的培养与企业需求之间尚存在一定程度的差距。应届毕业生的实际操作能力普遍不能满足企业需要,企业更希望应聘者能立刻为企业带来实际的生产效力,而不希望花更多额外的培训资本。因此,在实际教学过程当中要特别注重对学生实际应用能力的培养,以满足市场需求,将实践动手能力作为最接近企业需求的重要内容,着重体现到实验教学当中。
一、目前计算机实验课程存在的问题和研究目的
作为实验教学的核心任务,计算机动手能力的培养与发展具有综合性、层次性和实践性等特点。“计算机教学应根据这些特点采取有效的教学策略来培养与发展学生的计算机动手能力。而计算机动手能力的形成和发展离不开智力技能的支持,计算机操作技能中包含有智力成分,需要学习者智力活动的积极参与,手脑并用才能完成。”学生的计算机动手能力是在不断地进行上机操作练习的实践活动中积累形成的,离开了上机操作,即使学生具备良好的素质和学校提供良好的环境条件和教育手段,其动手能力也是难以培养的。我们在实际教学过程中发现,目前我们的实验教学呈现出实验模式单一、内容相对固定的情况。从实验工程上看,以单一的基础型、知识型、验证型实验为主,而综合型、设计型的实验较少。很多实验内容只是要求学生照搬照抄已有的知识内容,简单地调通、验证完毕即可,并没有给学生自由、独创的空间。这使学生失去了对实验课程的兴趣,继而也就失去了应有的积极性和主动性。反思目前我们对语言的教学,尚停留在纯粹的语言语法阶段,所配置的实验以验证为主,学生在练习以后懂得的仅仅是一些基本语法,而对开发整个工程却仍然很陌生,工程性的知识比较欠缺,学生依旧是“只见树木,不见森林”,自然不能很好地适应以后工作的需要。
此次研究的主题,是通过工程的形式来驱动实验教学的改革,以改善课程当前实验教学效果,以培养出具有较强实验动手能力的学生。假设的实验全部采用工程的形式给出,按照软件工程的规定原则,要求学习者进行可行性与需求分析、系统设计、程序设计、测试、维护等,并以分组的形式进行实验,以加强学生的团队合作精神的训练。在实际的工程开发过程中,以工程带动学生去深入学习语言结构必然会给学生更多发现问题、解决问题的机会,这对学生进行自主学习起到了很好的带动作用。在这方面,目前国内有部分高职院校以“工程驱动”的方式进行了教学开发和实践,取得了一定效果,但由于本科教育更注重教育的宽泛度和理论性,致使“ 程序设计”课程的实际课时相对较少,在培养学生的动手能力方面尚有很大提升空间。
二、工程方式与非工程方式的实验教学特点的比较
(一)非工程方式的教学特点
非工程方式是程序设计教师较常用的实验教学方式,是目前主流的实验教学模式。教师一般会在每个学期之前根据课程安排分章节、分知识点设计一些基础性较强、突出验证特征的实验。
1.针对性:这种实验模式由于实验数目没有严格限制,所以其在内容涵盖上会比较丰富,能够顾及到各个课程的重、难点,进行针对性的实验教学。并且针对教学某一特定内容来说,采用此种实验方式能够更加具体、深入地对该知识进行学习和探索,有利于学习的深化。能针对性地训练学生的专项操作技能,让学生在编程过程中发现问题、解决问题。如果实验设计的初衷得以顺利实现,将有助于学生打好语言编程基础,并较深刻体会其中遇到的某些重难点。
2.可控性:非工程的实验方式具有较强的可控性。对于短而精的实验,教师可根据实验周期或进度灵活地对实验安排进行撤销、添加或更改。在学生进行实验室实验的同时,也可对其进行个别指导和调整。譬如,当与某个知识内容相关的实验由于教学计划的更改需要撤销时,可以立刻应对教学大纲的安排作出机动性的调整;而对于小实验的安排也没有更多课时上的拘束,可以临时添加诸如两个学时的短实验以巩固学生相关内容的知识。
3.重复性:学生在进行该类型的实验操作时,实验内容相同,内容上重复。在这种情况下,一方面,将有助于教师对学生进行个别辅导,加强反馈式教学的效果,即:自主性自学※自动性反馈※纠偏性补授※诊断性反馈※课堂讨论。通过总结问题的类型和数量,及时反映到教学内容的设计和重新整理中,对实验中呈现出来的重难点进行重点教学,亦能加强学生之间的交流和对问题的共同探讨,达到共同进步。但是另一方面,也有可能会助长某些学生的投机意识,而不愿去主动学习,这样也就违背了教师设计实验教学的本意,值得注意。
(二)工程方式的教学特点
1.系统性:工程方式的实验教学有利于培养学生的大局观,能使其从整体上把握系统的构建和设计,了解这一特定语言的组成规则和运转规则,实现业务“零距离”,提高其工程性意识及工程性设计能力。通过系统性的实验学习,学生能融合软件工程的思想,有能力独立完成工程的设计与开发。
2.多角度:鉴于工程方式的实验形式明显地利用了软件工程的思维,较严格地参照了软件工程所要求的步骤进行实验安排,故而工程方式的实验教学在操作过程当中会对学生进行更多角度的培训,包括工程可行性与需求分析、设计或是测试维护等方面能力的培养。这也在无形之中加深了学生在计算机程序设计中的软件工程意识,对日后进行企业工程的编码设计产生积极影响。
三、教学改革
通过以上对双方教学特点及优劣的比较可以看出,工程方式的实验教学较之于一般的实验教学,对学生掌握课程及更好地运用所学知识具有更直接的促进作用。因而在宏观上,以工程方式驱动实验教学的改革成为绝佳的选择。不过,我们可以不必只是呆板的撤换,而应对两者灵活地加以利用。
(一)优化实验教学内容,精心设计实验大纲
在以前的实验教学中,实验内容大都是验证性内容,验证前次课堂讲授的知识点,沿用基础课程的实验教学模式,割裂了各个知识点之间的联系。我们在考虑实验教学学时数和学生已有程序设计学习基础上,拟对实验内容进行改革。改革后的实验工程有四个,大多为工程型实验,突出了综合性、设计性实验在实验课中的主体地位。
总体来看,实验安排以工程为主,非工程为辅,教学理念上“以教师为主导,以学生为主体”,以提高学生素质为根本宗旨,把握学科教育本质和目的,以培养学生创新精神和学习能力、实践能力为重点。这使培养出来的学生具有扎实的理论基础,具有很宽的专业知识面,有很强的工程分析能力和设计能力,具有很强的适应学科发展的能力。学生在进行工程型实验操作的同时,需注意打好程序设计理论基础,切忌建造“空中楼阁”。实验的指导方针是以“工程驱动”方式带动实验的改革,在以巩固所学知识的理念的基础上强调了实验的重要性,以工程带动语言的学习,培养学生的工程设计能力。
(二)采用分层次、开放的实验教学
对于教学对象而言,因为学生的层次不同,掌握知识的多少、编程能力高低也大相径庭,所以实验方式的选择可以根据不同类型的学生而有所侧重:一方面是有语言学习基础的学生可以采用纯工程的方式;一方面是没有语言学习基础的学生要先以基础学习、小实验为主,基础扎实了,最后再结合工程方式进行系统式的编程训练。故而实验的设计需保留必要的基础性实验,精简内容单一的验证性实验。
(三)提供给学生更多的自由
在程序设计的实验教学中要调动学生学习的主动性,充分考虑学生的学习基础和学习需求,尽可能地提供完善的软、硬件设备及其他教学条件,包括上文提到的实验课程分层次教学,实验室开放,高质量的教材,完善的实验教学辅导系统,具有启迪新思维、有助于提高动手能力的实验仪器。
目前大多数的实验是被动实验,即所谓“照着做”的实验。这种完全按照教师意愿修订的实验教学大纲,缺乏灵感,思维较单一,容易遏制学生的创新思维。故而对程序设计,教师在修订实验大纲时要注重科学性,集思广益,设计出能让学生自主创新的实验大纲,使学生改变被动学习的局面,使学生在实验课程中自主学习,探索知识。教师则应在学生发挥主体作用的过程中当好指导者、激励者和引路人的角色。
(四)优化课程考试方式
以前的“程序设计”的考试是以闭卷的方式进行,以最后的试卷分来评定学生这门课的成绩,缺乏实验教学考核标准。在实验教学中,很多实验课不独立考核,不占学生的学分,学生的学科考试主要是看卷面成绩,对学生的素质评价以理论课的成绩为依据。这样的分数只能反映出学生对知识点的掌握程度,不能很好地体现出学生实际的动手能力。对于这样的课程,更重要的是体现其编程能力,所以笔者准备将参加工程的最后的答辩成绩作为学生的最后成绩。
四、结语对计算机专业,特别是计算机语言的学习需转变教学观念,强调培养学生的整体素质,计算机语言的学习不能仅仅停留在语法本身,不能为了学习语言而学习语言,而要在工程的实践中自然地对语言语法结构融会贯通。对于这样一门典型的计算机语言来说,这样的观念必须树立起来。
参考文献
[1]陈燕红,沈大盛.谈谈如何提高高校计算机实验教学质量[J].广西民族学院学报(自然科学版),2017,(5):233~235.
[2]侯书芹,刘学莉.计算机实验教学的素质教育作用[J].安阳师范学院学报,2016,(5):90~ 91.
[3]李丽滨,卢宇.高校计算机实验教学改革的思考与探索[J].辽宁教育研究,2017,(9):52~53.
[4]王素文.大学教学中的研究性学习:特点与模式[J].教育发展研究,2007,(12B):29~32.