曾雪強 盧家興 吳水秀


[摘 要] 創新型人才培養是高等院校應用型本科人才培養的重要目標,鼓勵學生參加程序設計競賽是提高計算機專業學生創新實踐能力的有效途徑之一。結合近幾年江西師范大學計算機信息工程學院程序設計競賽集訓隊的實踐,探索并提出基于程序設計競賽的創新型人才培養新模式,采用三級分隊方式進行隊員管理,以教練指導與隊員以老帶新相互結合的模式組織日常訓練,通過各項競賽實戰強化提高隊員的程序設計水平。新模式在創新型人才培養的實踐中取得了良好的效果,江西師范大學在近年的各大程序設計競賽中取得了優異成績。
[關鍵詞] 創新型人才培養;程序設計競賽;程序設計能力;實踐教學
[基金項目] 2021年度江西省教學研究重點課題“基于‘一中心三階段競賽驅動的計算機本科生程序設計創新能力培養模式研究”(JXJG-21-2-27);2018年度國家自然科學基金“基于漸進抽樣的學習模型選擇方法的研究”(61866017)
[作者簡介] 曾雪強(1978—),男,江西南昌人,博士,江西師范大學計算機信息工程學院教授,博士生導師,主要從事自然語言處理和機器學習研究;盧家興(1976—),男,湖南寧鄉人,碩士,江西師范大學計算機信息工程學院講師,主要從事模型檢測和區塊鏈技術研究;吳水秀(1975—),女,江西進賢人,碩士,江西師范大學計算機信息工程學院副教授,碩士生導師,主要從事自然語言處理和模式識別研究。
[中圖分類號] G434 [文獻標識碼] A[文章編號] 1674-9324(2023)24-0032-04 [收稿日期] 2022-05-16
創新型人才是具有創新精神和創新能力的人才,能提出有別于常規或常人思路的見解,利用現有的知識和物質改進或創造新的事物,并取得一定的有益效果[1]。高等院校大力培養創新型人才是時代發展的必然要求,是緊跟時代發展步伐的必然選擇[2]。但是長期以來,由于各種主、客觀因素制約,地方高校計算機專業的實踐教學存在較多問題,對學生創新能力的培養存在不足[3]。
程序設計競賽在計算機專業教學改革實踐中具有重要作用,鼓勵學生積極參與程序設計競賽,可以開闊學生的視野,增強團隊合作意識,提升學生利用計算機分析和解決問題的創新實踐能力[4]。近年來,基于我院程序設計競賽集訓隊訓練和參賽的實踐,筆者探索并總結出一套完整的基于程序設計競賽的計算機專業創新型人才培養模式。通過采用新培養模式,我院學生的程序設計水平逐年提高,在近年的各大程序設計競賽中取得了優異的成績。
一、程序設計競賽
程序設計競賽的一般比賽形式是給出若干道程序設計問題,要求選手進行問題分析和算法設計,現場編碼完成程序設計,并提交程序通過實時在線評判系統。參賽隊伍的成績在賽場上實時更新,賽后現場為優勝隊伍頒獎。程序設計競賽的實時比賽模式,對參賽選手的綜合素質要求高,可以考查選手在壓力下編寫程序、分析和解決問題的能力[5]。除了比賽形式和考查內容與其他學科競賽不同,程序設計競賽還具有獎項含金量高、高水平賽事獲獎難度大、訓練周期長等主要特點。
參加程序設計競賽活動可以顯著提高學生對計算機專業知識的掌握程度和實際動手能力,學生在準備競賽的過程中需要自學很多有難度的算法知識,并完成大量的題目。在本科階段,一名優秀的程序設計競賽選手完成的編寫代碼量,一般可以達到普通大學生平均程序設計量的數倍甚至更多。組織學生參加程序設計競賽是一種有效的創新素質教育的手段,大學生參加競賽,可以培養學生的創造能力、激發學生的創新能力、培養學生的科學素質、鍛煉學生的心理素質、提高學生的團隊素質。
盡管近年來國內大學對計算機程序設計能力的重視程度與以前相比有所提高,但在“雙非”本科院校中仍存在很多的不足。比如,有一些院校對程序設計的實踐性重視不夠,實際知識的運用訓練較少;實踐教學不夠系統和完善,實踐項目的設計沒有充分考慮能力目標的培養而過多關注程序語言本身的特性;練習和考試多采用書面或驗證性實驗的形式,缺少考查知識靈活運用的練習題,忽視對程序設計能力的鍛煉;學生缺乏完整系統的程序設計方法,代碼質量意識弱,代碼質量差,不具備中等規模以上的程序設計能力。
二、程序設計競賽隊伍培養模式
經過不斷探索和實踐發現,讓學生參加學科競賽,可以有效提升計算機專業大學生的創新能力和綜合素質,最終達到培養創新型人才的目標。
針對程序設計競賽的特點和目前存在的問題,需要在隊員管理、培訓方式、激勵方式等方面制定相應對策。筆者通過深入研究各大高校在程序設計競賽中的成功經驗,結合本學院近年來的競賽培訓實踐,針對程序設計競賽集訓隊提出了一系列行之有效的培養模式,貫穿學生學習的全過程。該培養模式主要包括三個方面:(1)采用三級分隊方式進行隊員管理。(2)采取教練指導與隊員以老帶新相互結合的日常訓練模式。(3)通過各項競賽實戰,強化提高隊員的程序設計水平。下面對新培養模式的具體措施進行介紹。
(一)隊員三級分隊管理
隊員三級分隊管理模式是指按照學生的年級,將集訓隊員分為大一隊、大二隊和大三隊。采用三級分隊管理方式,可以有針對性地合理安排隊員的學習內容,讓隊員循序漸進地提高競賽水平。
教練和老隊員通過每年的新生宣講,鼓勵有意愿的計算機專業大一新生參與大一隊的隊員選拔。大一隊的主要任務是學習程序設計競賽的基礎知識,并從入門階段開始逐步培養良好的專業學習、專業思維和專業實踐習慣。由于大部分新生是從零開始學習程序設計,基礎較為薄弱,在正常的課程教學之外,集訓隊需為大一隊開設專門的訓練課程,安排隊員系統地學習C/C++編程語言、簡單數據結構和基本算法(如遞推、遞歸、貪心及DP基礎),并通過上機做題的方式鍛煉程序設計的動手能力。大一隊的基礎十分重要,需要以月為單位設置多輪選拔考試,一方面提升學生的參與度、體驗感,另一方面也激發了學生的興趣;在大一下學期舉行選拔大二隊隊員的新生賽。
通過一年的訓練,大二隊的隊員已經具備一定的程序設計基礎,需要進一步提升程序設計競賽水平。大二的上學期和下學期分別開設“ICPC程序設計競賽基礎”和“ICPC程序設計競賽進階”兩門選修課;在每年的暑期開設“程序設計競賽強化集訓營”,培養隊員利用計算機分析和解決復雜工程問題的能力。通過這些訓練課程,讓隊員著重學習一些相對復雜的算法,同時兼顧數學、建模、幾何等知識,在培養團隊合作精神的同時,提高了學生的綜合素質。
大三隊的隊員一般已經具有較強的程序設計能力,是爭取競賽獲獎的主力。大三隊隊員的主要任務是鍛煉如何在競賽中快速地建立模型、構思算法的實戰能力。除了參加各項競賽實戰,大三隊平時的訓練以參加各類模擬賽為主,通過三人組隊做綜合型的成套題目,磨合隊伍、發現短板,再根據自身的特點有針對性地強化練習和攻克難題。一方面可以讓學生享受到艱苦付出的成果,為今后的學習提供動力,另一方面也可以提升學生畢業設計的質量和水平。
(二)教練指導與隊員以老帶新相互結合
針對不同階段隊員的特點,競賽集訓隊的日常訓練主要采用教練指導與隊員以老帶新相互結合的模式。
大一隊和大二隊的隊員,采用以教練指導為主、老隊員幫助為輔的形式。低年級學生處于程序設計競賽學習的初級階段,需要指導教師的正確引導。指導教師以課程、講座、定期討論等方式組織學生訓練,并通過專題訓練的形式對一些經典知識點和經典題目進行強化學習。老隊員具有豐富的實戰經驗,可以幫助低年級學生快速提升實戰能力,特別是已經獲獎的老隊員,具有顯著的榜樣作用。在實際的教學過程中,可讓老隊員直接參與大一隊和大二隊的指導過程,幫助教練進行上機指導和作業檢查,并主講一些專題講座。
大三隊的訓練以參加各類競賽實戰為主。一般情況下,大三隊隊員已經具有較高的競賽水平,需要進行個性化的專項訓練。另外,大部分程序設計競賽以團隊賽形式進行,組隊策略和團隊合作等戰略戰術也是隊伍獲獎的重要因素,并肩作戰的三名隊員需要通過多組隊打模擬賽,不斷地磨合,增進相互了解,加強團隊協作,才能在競賽中發揮高水平,賽出好成績。
(三)以賽促練
程序設計競賽的訓練是一個長期的過程,如何讓隊員在枯燥的訓練期間保持學習的動力,是競賽隊教練需要解決的重要問題之一。我校競賽集訓隊的做法是組織學生多參加各類競賽實戰,以賽代考,以競賽成績促進日常訓練。各項競賽主要分為校內賽和正式賽兩大類。
校內賽主要包括每月的訓練賽、每學期的校賽和不定期的專題訓練賽等。這些比賽一般由老隊員出題或使用歷年真題,讓學生有更多的鍛煉機會。集訓隊設置嚴格的校內賽考勤制度,要求所有隊員都參加校內賽,并將校內賽成績作為隊員日后代表學校參加正式賽的重要依據。正式賽是指各項省級和國家級的程序設計競賽。很多正式賽設置有資格選拔賽,讓學生通過這些選拔賽公平地競爭參賽名額。
通過以競賽促學習的訓練方式,學生在得到實戰鍛煉的同時,能清楚地認識到自己與優秀選手之間的差距,便于總結經驗、加緊訓練,強化提高自身的程序設計水平。競賽的成績一方面能夠檢驗出一所高校計算機教學的整體實力;另一方面也可以依據成績的好壞對程序設計教學過程進行檢視,提升程序設計課程的教學水平。
三、實踐效果
通過采用基于程序設計競賽的創新型人才培養新模式,我院競賽隊隊員的程序設計熱情越來越高、程序設計水平不斷提升。近年來,我院在ACM-ICPC、CCPC、天梯賽、藍橋杯和江西省大學生科技創新與職業技能競賽·程序設計競賽等重要的程序設計競賽的成績取得顯著進步,競賽成績在江西省高校名列前茅。
以2021年為例,我校在ACM-ICPC區域賽和邀請賽上共獲得1項金獎、3項銀獎和4項銅獎。在CCPC比賽中,我校獲得分站賽金獎1項、銅獎1項,女生賽銀獎1項、銅獎1項和全國總決賽銅獎1項。在江西省大學生科技創新與職業技能競賽·程序設計競賽中我院學生獲得一等獎3項、二等獎1項和三等獎2項。另外,在近年的天梯賽和藍橋杯比賽中,我校成績始終位于江西省高校前列。我校近三年的天梯賽成績如表1所示,2013—2021年藍橋杯具體獲獎情況如圖1所示。
結語
本文提出的基于程序設計競賽的創新型人才培養模式凝聚了江西師范大學的實踐教學經驗,形成了較為規范的創新型人才培養體系。實踐表明,該培養模式可以有效地鍛煉學生的實踐能力和創新能力,提高學生的程序設計競賽水平,使得我校在各大程序設計競賽中的獲獎成績顯著提升。未來,我校還將繼續踐行這套培養體系,不斷總結,凝練方法,為提高計算機專業創新型人才的培養水平持續努力。
參考文獻
[1]劉曉勇,方剛,付輝,等.基于學科競賽的計算機類專業創新型人才培養模式研究[J].高教學刊,2018(19):42-44.
[2]張琪.社會主義核心價值觀在創新型人才培養中的引領功能[J].教育理論與實踐,2021,41(15):42-45.
[3]滕永晨.以學科競賽為導向,提升計算機類專業程序設計語言教學質量[J].中國多媒體與網絡教學學報(上旬刊),2021(6):234-236.
[4]朱立軍,楊中秋,李漫紅,等.新工科背景下程序設計競賽課程建設的研究與探索[J].高教學刊,2021(3):96-99.
[5]鄺祝芳,余紹軍,楊衛民.ACM/ICPC對培養信息學科創新型人才的作用[J].計算機教育,2013(3):4-6.
Exploration on the Training Mode of Innovative Talents of Computer Specialty Based on
Programming Competition
ZENG Xue-qiang, LU Jia-xing, WU Shui-xiu
(School of Computer and Information Engineering, Jiangxi Normal University, Nanchang, Jiangxi 330022, China)
Abstract: The cultivation of innovative talents is an important goal for the cultivation of applied undergraduate talents in higher education institutions. Encouraging students to participate in programming competitions is one of the effective ways to improve the innovation and practical ability of computer science students. Combining with the practice of the programming competition training team of the School of Computer Information Engineering of Jiangxi Normal University in recent years, this paper explores and puts forward a new training mode of innovative talents based on the programming competition. The new model adopts three-level team management, organizes daily training under the guidance of coaches and team members, strengthens and improves the programming level of team members through various competitions. The new model has achieved good results in the practice of innovative talent training, and Jiangxi Normal University has achieved excellent results in major programming competitions in recent years.
Key words: innovative talent cultivation; programming competition; programming ability; practical teaching