- 收藏
- 加入书签
以程序设计竞赛为驱动的计算机专业人才培养模式实践探索
——以白城师范学院为例
摘要:本文深入探讨了程序设计竞赛对计算机专业学生的多方面影响,包括知识技能提升、思维能力培养、团队协作与沟通、职业发展以及对学习态度和自信心的塑造等,并提出了基于程序设计竞赛的计算机专业人才培养策略。
关键词:程序设计竞赛;计算机专业;人才培养;
一、引言
信息时代、大数据和AI发展带动了对高水平计算机人才的需求。计算机应用技能更新迅速,企业要求不断提高。程序设计竞赛自20世纪70年代起,规模与影响力持续扩大,成为全球计算机专业广泛参与的活动。竞赛题目难度大、时间紧,涵盖算法设计、数据结构、编程语言等。参与竞赛能提升学生编程技能,培养逻辑思维、问题解决和团队协作能力,对计算机专业人才培养具有重要现实意义。
二、程序设计竞赛对计算机专业学生的影响
(一)知识技能提升
参与程序设计竞赛需要学生具备扎实的编程基础和熟练的编程技巧。在竞赛准备过程中,学生需要不断地练习和实践,掌握各种编程语言的特性和用法,提高代码的质量和效率。通过解决竞赛中的各种难题,学生的编程能力得到了极大的锻炼和提升。
(二)创新思维能力培养
在程序设计竞赛中,传统的思维模式往往难以找到最优解,学生需要不断尝试新的方法和思路。这种创新思维的训练,不仅有助于学生在竞赛中取得好成绩,还能够培养他们的创新意识和创新精神,为未来的学习和工作打下坚实的基础。
(三)团队协作能力培养
程序设计竞赛通常以团队形式进行,团队成员之间需要密切配合,共同解决问题。在团队协作过程中,学生需要学会分工合作,充分发挥各自的优势,共同完成竞赛任务。这有助于锻炼学生的团队协作能力,培养学生的团队合作精神。
三、基于程序设计竞赛的计算机专业人才培养策略
(一)加强师资队伍建设
优秀的师资队伍是培养计算机专业人才的关键。白城师范学院计算机科学学院程序设计竞赛指导团队于2020年成立。团队注重教师的专业素养和经验,邀请多位经验丰富的教师加入。教师团队包括 C(C++)课程组、数组结构课程组及算法设计与分析课程组教师,团队成员既擅长编程基础教学,同时也在数据结构、算法等方面有丰富的教学经验,以助学生应对竞赛低高阶题目。
(二)完善课程体系和教学内容
根据程序设计竞赛的要求和计算机行业的发展趋势,完善课程体系和教学内容。在C(C++)程序设计、数据结构与算法设计与分析的课程教学中,依据不同难度层次,相关课程组引入竞赛训练题目作为例题或实验项目,以促进学生对于知识点的深入理解和掌握。随着学生逐步掌握C(或C++)语言的精髓,并建立起扎实的编程思维框架,适时调整题目难度,设置一系列梯度上升的挑战任务。这一过程不仅促使学生不断深化对C(C++)程序设计知识的理解与掌握,还促使他们主动探索、勇于尝试,有效培养了其创新思维与实践应用能力。
当学生群体中出现了一批具备良好编程基础与积极竞赛态度的学生时,我们特别安排在大一上学期末之前启动程序设计竞赛小组的招募工作。这一举措旨在汇聚对程序设计竞赛抱有浓厚兴趣的学生,共同组成精英团队。加入该小组的学生将获得宝贵的参赛机会,通过参与各类程序设计类竞赛,将所学知识应用于实战,进一步磨砺技能,拓宽视野,为未来的专业发展奠定坚实的基础。
(三)分级训练与教师学生双指导模式
分级训练与教师学生双指导模式是一种教育策略,旨在通过不同层次的训练和双重指导体系来提高学生的学习效果和能力。能过分级训练评估学生层级,根据学生的能力和需求制定个性化的训练计划。在指导学生过程中,教师负责传授专业知识和技能,为学生提供理论支持和指导,能力较强的学生可以指导其他学生,促进互助学习。几年来,我们团队按分级培训。大一学生编入1队,专注C(C++)基础知识;大二学生编入2队,强化数据结构与算法;大三学生编入3队,深入数论等高阶知识。老师定期组织内部竞赛,动态调整队伍配置。优秀学生将晋升,基础需加强者则调整至相应队伍。
在训练过程中,我们采取了教师学生双指导的模式。具体措施如下:
(1)对于1队学生,以教师知识传授为主,同时辅以2队、3 队中获奖学长进行指导。教师的授课确保了知识的准确性,而学长的参与则更易于与学生建立亲近感,传授他们丰富的实战经验,同时也促进了学长自身能力的提升。
(2)对于第2队学生,已具备编程能力,故加强自主性。教师布置任务,教师学生每两周答疑讨论解决难题。此模式锻炼独立思考和问题解决能力。
(3)对于第3队学生,已完成所有竞赛相关课程的学习,具备了参赛能力,主要接受实战和个性化训练。师生定期讨论,解答学生疑问。考虑程序设计竞赛多为团队形式,第3队学生还接受小队训练,以提升团队默契和协作能力。
(四)从选拔到反思:构建竞赛活动的完整周期
构建一个完整的竞赛活动周期需要从选拔到反思的各个环节都进行细致规划和精心组织。通过明确选拔标准、制定训练计划、组织竞赛活动、评估竞赛成果和反思经验教训等步骤,可以确保竞赛活动的顺利进行和公平竞争,同时促进学生的全面发展和综合素质提升。在每次参赛之前,我们会对1至3队的所有学生进行严格的选拔,以确保按照参赛名额选出最具能力的学生参与。选拔过程着重于评估学生的能力,而非仅仅考虑其年级。此选拔赛不仅是对学生能力的筛选,同时也是对学生所在小队进行调整的依据。
参赛之后,竞赛题目会被发布到训练平台上,针对比赛题目进行讨论,师生共同回顾比赛的环节,深入分析比赛过程中的得失与策略。通过这样的互动与分享,师生能够共同成长,为未来的比赛做好更充分的准备。
四、程序设计竞赛成效
近年来,我校程序设计教学团队积极创新训练策略,实现了师生能力双重提升。通过竞赛式教学法与渐进式题目设计,激发了学生兴趣,提升了编程与问题解决能力。学生在程序设计竞赛中屡创佳绩,获奖数量与名次逐年攀升。教师团队也在此过程中不断成长,紧跟行业动态,提升教学能力与专业素养。师生良性互动构建了创新学习环境,全面提升了教学质量,为培养创新人才奠定了坚实基础。团队教师将“以赛促教、以赛促改”落到实处,显著提升了教学能力,数据结构课程获评校级一流,并成功立项7项省级教研课题。
五、结论
参与竞赛能提升学生知识技能、思维能力,锻炼团队协作与沟通,拓宽职业发展前景,塑造积极学习态度和自信心。高校应重视程序设计竞赛作用,积极组织,提供更多实践机会。学生也应主动参与,提升自我。高校需紧跟时代,创新人才培养模式,为培养优秀计算机人才贡献力量。
参考文献:
[1] 陈广明,侯跃恩,陈生庆. 计算机程序设计竞赛促进地方高校创新型人才培养实践探究[J]. 软件导刊,2022,21(12):221-225.
[2] 韩腾跃,蒋晶,梁雅丽. 计算机程序设计类竞赛教学体系探索[J]. 才智,2023(23):88-91.
[3] 陈英,郑巍,杨丰玉,等. 程序设计类竞赛集训模式探讨及作用分析[J]. 计算机教育,2019(4):116-119.
作者简介:柳佳(1982-),白城师范学院副教授;研究方向:数据挖掘。

京公网安备 11011302003690号