李澤龍 于瀚翔 張鑫鵬 王濤
摘要:隨著計(jì)算機(jī)科學(xué)與技術(shù)的發(fā)展,計(jì)算機(jī)逐漸成了學(xué)習(xí)和工作中必不可少的工具,編程逐漸走進(jìn)了大眾的視野當(dāng)中,本文針對計(jì)算機(jī)編程初學(xué)者的教育為研究對象,了解討論編程教育的背景和現(xiàn)狀,進(jìn)一步分析了當(dāng)前編程教育的主要教學(xué)方式以及存在的問題和不足,并提出了一些提升編程教學(xué)質(zhì)量的建議與策略,希望能對編程教育的進(jìn)一步發(fā)展提供一定的參考。
關(guān)鍵字:計(jì)算機(jī)編程;計(jì)算思維;編程教育
一、背景與現(xiàn)狀
(一)編程教育的背景
新一輪科技革命和產(chǎn)業(yè)革命的孕育興起,對專業(yè)人才的需求發(fā)生了一系列的變化,對于人才的培養(yǎng)和教育也提出了更加前沿的要求 ,開展人工智能與編程教育已經(jīng)成為當(dāng)今的流行趨勢。伴隨著云計(jì)算、大數(shù)據(jù)、人工智能等IT技術(shù)迅速發(fā)展及與傳統(tǒng)行業(yè)實(shí)現(xiàn)快速融合,一場由數(shù)字化和智能化轉(zhuǎn)型帶來的產(chǎn)業(yè)變革正在孕育[1]。近幾年國內(nèi)奧賽等競賽競賽活動正在持續(xù)發(fā)展且十分向好,之前有高校自主招生的驅(qū)動,現(xiàn)在有國家“強(qiáng)基計(jì)劃”的引領(lǐng),加上時代潮流和教育政策的導(dǎo)向,越來越多的人看到了科技類創(chuàng)客類的教育,其中尤其是編程教育項(xiàng)目。學(xué)習(xí)編寫程序與進(jìn)行程序的設(shè)計(jì),除了學(xué)習(xí)編程基礎(chǔ)知識之外,還會培養(yǎng)學(xué)生的計(jì)算思維,鍛煉學(xué)生依靠自身獨(dú)立思考并解決問題的能力,也就是邏輯思維能力,提高學(xué)生對信息的敏感程度,增強(qiáng)學(xué)生處理復(fù)雜問題的信心。這就為學(xué)生在未來的學(xué)習(xí)和工作中奠定了獨(dú)立思考與解決問題的思維習(xí)慣,這種思維習(xí)慣對學(xué)生的成長至關(guān)重要,成為學(xué)生在學(xué)習(xí)和工作中的核心競爭力。
(二)編程教育的現(xiàn)狀
在政策層面,2017年7月,國務(wù)院在《新一代人工智能發(fā)展規(guī)劃 》中首次明確提出,要“實(shí)施全民智能教育項(xiàng)目,在中學(xué)階段設(shè)置人工智能相關(guān)課程,逐步推廣編程教育”[2]。在 2018 年新發(fā)布的課標(biāo)中,信息技術(shù)、通用技術(shù)、數(shù)學(xué)等都加入了“互聯(lián)網(wǎng)、人工智能、大數(shù)據(jù)處理”與編程教育相關(guān)的知識內(nèi)容;由教育部發(fā)布的《2019年教育信息化和網(wǎng)絡(luò)工作要點(diǎn)》也指出,要“推在中學(xué)階段設(shè)置人工智能相關(guān)課程,逐步推廣編程教育”;因此,為了提高基礎(chǔ)教育階段學(xué)生的未來的數(shù)字適應(yīng)力,現(xiàn)階段迫切需要在中小學(xué)推廣實(shí)施編程教育的相關(guān)課程[3]。
當(dāng)前互聯(lián)網(wǎng)編程教育已經(jīng)進(jìn)入啟動期,大量的投資的涌入了市場,行業(yè)中的廠商已經(jīng)逐漸拉開差距,并探索出不同的發(fā)展模式。編程貓從創(chuàng)新性編程工具及全產(chǎn)業(yè)鏈覆蓋切入;童程童美、極客晨星、小碼王堅(jiān)持線下與線上結(jié)合策略;傲夢與VIPCODE主打一對一或一對多的小班教學(xué);西瓜編程與核桃編程主推低價課程搶占用戶。通過差異化運(yùn)營,各廠商正在加強(qiáng)用戶的產(chǎn)品認(rèn)知,從而形成了現(xiàn)狀百花齊放的狀態(tài)。
二、踐行編程教育的現(xiàn)實(shí)意義
編程是模擬在現(xiàn)實(shí)生活中根據(jù)目前的需要,按照計(jì)劃順序進(jìn)行任務(wù)處理和問題解決的過程,編程是計(jì)算機(jī)系統(tǒng)運(yùn)行所必需的。研究表明,編程教學(xué)對培養(yǎng)個人的重要技能如反省和思考、批判和分析思維是有效的。編程教學(xué)具有重要的功能,如培養(yǎng)計(jì)算思維,開發(fā)個人的想象力,幫助他們以過程為導(dǎo)向的方式思考,處理信息,獲得與他人進(jìn)行團(tuán)隊(duì)合作的習(xí)慣。
“計(jì)算思維”的培養(yǎng)是編程教育提升學(xué)生思維能力主要表現(xiàn),提高學(xué)生對問題和信息的綜合處理能力。計(jì)算思維作為一種分析問題解決問題、進(jìn)行系統(tǒng)設(shè)計(jì)、理解人類行為的綜合思維模式,受到社會各界的廣泛關(guān)注,當(dāng)前基礎(chǔ)教育也十分關(guān)注和重視對計(jì)算思維的鍛煉。編程學(xué)習(xí)可以有效促進(jìn)計(jì)算思維的培養(yǎng)。圖形化編程、機(jī)器人編程大量的相關(guān)文獻(xiàn)和研究表明,編程教育與計(jì)算機(jī)科學(xué)之間存在著一種不可分割的有機(jī)聯(lián)系,編程教育是培養(yǎng)計(jì)算思維的一項(xiàng)有效工具[4]。Lee[5]和 Saritepeci均在其研究中發(fā)現(xiàn),學(xué)生的編程自我效能感、計(jì)算思維技能以及計(jì)算思維技能發(fā)展之間存在顯著的相關(guān)關(guān)系[4]。
在當(dāng)今這個時代計(jì)算機(jī)逐漸成為大部分人在工作和學(xué)習(xí)中沒有辦法離開的工具,在各種各樣的事務(wù)和情況中,數(shù)字化、數(shù)據(jù)化、電子化、信息化已經(jīng)成為一種趨勢,越來越多的工作和事務(wù)需要計(jì)算機(jī)來處理,信息和數(shù)據(jù)的處理已經(jīng)成為工作和學(xué)習(xí)的基本手段和方法。在此基礎(chǔ)上,計(jì)算思維必然與實(shí)證思維和邏輯思維一樣,成為一個現(xiàn)代公民必須掌握的基本思維模式。近年來,計(jì)算思維(Computational Thinking)的價值和意義日益突顯,成為當(dāng)前國際計(jì)算機(jī)界、教育界廣為關(guān)注的一個熱點(diǎn)主題。圍繞著科技創(chuàng)新和人才創(chuàng)新,計(jì)算思維的培養(yǎng)也成為國際競爭的重要抓手。而編程教育正是具有培養(yǎng)計(jì)算思維能力的重要途徑和方式。
三、編程教學(xué)的方法
(一)遠(yuǎn)程教學(xué)模式
通過遠(yuǎn)程的線上直播視頻等形式,通過一對一、一對多等遠(yuǎn)程教育模式,輔導(dǎo)入門學(xué)習(xí)者學(xué)習(xí)。遠(yuǎn)程教學(xué)的模式不會受到地域地理因素的影響,不會受到地區(qū)的限制,能夠?qū)⒔虒W(xué)資料和課程傳送到任何地方,可以對編程教育進(jìn)行很好的推廣,讓更多無法在傳統(tǒng)教育和線下實(shí)體學(xué)習(xí)的學(xué)生一個接觸學(xué)習(xí)編程的機(jī)會。遠(yuǎn)程教學(xué)模式在時間上更加富有彈性,學(xué)生也可以根據(jù)自己的學(xué)習(xí)時間來進(jìn)行安排,極大地提高了教學(xué)的靈活性,同時也激發(fā)了學(xué)生自主學(xué)習(xí)的積極性和興趣。編程教育在遠(yuǎn)程教學(xué)模式上有著特殊的優(yōu)勢,編程本來就是需要在計(jì)算機(jī)的環(huán)境上進(jìn)行學(xué)習(xí),采取線上教學(xué)模式,既符合編程需要的操作環(huán)境,也可以降低總體成本,解決空間設(shè)備利用,地理制約等層面的問題。
(二)游戲化教學(xué)
游戲化教學(xué)工具的使用會給學(xué)生帶來更高程度的動機(jī)。以一個游戲故事為背景作為引導(dǎo)線索,讓學(xué)生根據(jù)自己的想法、標(biāo)準(zhǔn)、速度、策略和技能來行動。在故事中提供不同的路徑并以多種選擇或者具有一定開放性的操作在教育層面上,在教育層面上這種方式能夠促進(jìn)學(xué)習(xí),以此來鍛煉學(xué)生解決問題的思維能力。游戲化的教學(xué)工具可以加強(qiáng)與學(xué)生的交互,提高學(xué)生的學(xué)習(xí)動機(jī)。給予學(xué)生一個具體化的情景,使得學(xué)生在身歷其境的情況下進(jìn)行問題的思考以及困難的解決。
(三)Online Judge+題庫
OJ(Online Judge+)最初應(yīng)用于ACM / ICPC, O1等編程競賽項(xiàng)目的分?jǐn)?shù)評定,而后在各編程學(xué)習(xí)者間廣泛普及?,F(xiàn)階段各高校學(xué)生廣泛使用橙汁進(jìn)行編程聯(lián)系,很多高校都有自己的橙汁平臺。對應(yīng)其評測功能,各橙汁配有其相應(yīng)題庫,方便使用者進(jìn)行學(xué)習(xí)。對題庫的充實(shí)和優(yōu)化將為橙汁系統(tǒng)帶來更大的競爭力。配合適當(dāng)?shù)慕虒W(xué)體系,可尋思推進(jìn)使用者的編程學(xué)習(xí)進(jìn)度。教育平臺可利用其服務(wù)器投入等特性,幫助學(xué)習(xí)者使用。
四、編程教學(xué)中存在的問題
(一)教學(xué)過程中缺乏計(jì)算思維的培養(yǎng)
在教學(xué)方面,教師更注重編程語言的語法教學(xué),而不是推廣解決問題的方法和編程能力。在一些高校當(dāng)中大學(xué)計(jì)算機(jī)課程仍然停留在基礎(chǔ)知識和技能操作的培養(yǎng)上,沒有能夠真正地進(jìn)行思維能力的培養(yǎng)。對于計(jì)算機(jī)編程的入門學(xué)習(xí)者來說,培養(yǎng)良好的計(jì)算思維打下思維基礎(chǔ),才能在日后的學(xué)習(xí)當(dāng)中更加有序游刃有余地解決問題。
學(xué)生需要學(xué)習(xí)如何分析問題的編程和數(shù)據(jù)結(jié)構(gòu)的概念。學(xué)生應(yīng)該進(jìn)行分析和說明步驟,以理解問題。在當(dāng)前的社會發(fā)展過程中,最關(guān)鍵的不是解決具體問題的技巧,這種技巧往往只能解決單一的問題,而將問題轉(zhuǎn)化為可以使用計(jì)算機(jī)解決的形式,這樣的思維方式才能造就解決問題的基本方法。
(二)不合適的教學(xué)方法削弱了學(xué)生編程學(xué)習(xí)的積極性
計(jì)算機(jī)編程對于教師和學(xué)生來說都是一門很難教的課程。在很多的編程教學(xué)過程中,仍然是以編程語言的語法為先導(dǎo),這讓學(xué)生在學(xué)習(xí)難以記憶和理解的編程語言語法時遇到了困難。在學(xué)習(xí)編程相關(guān)課程的過程中,當(dāng)學(xué)生們認(rèn)為自己在做一項(xiàng)困難的任務(wù)時,學(xué)生在很大程度上會產(chǎn)生消極態(tài)度。同時,學(xué)生在普通的編譯器中進(jìn)行編程練習(xí)時經(jīng)常會遇到自己難以理解的報(bào)錯,錯誤地將編程學(xué)習(xí)變成了一種修改錯誤和消除漏洞的過程。在程序中消除漏洞的過程既費(fèi)時又煩瑣,進(jìn)一步削弱了學(xué)生學(xué)習(xí)編程語言的積極性。
編程教學(xué)是一個復(fù)雜的過程,需要很多的技能,學(xué)生在編程教學(xué)中會遇到各種各樣的困難。編程入門學(xué)習(xí)者在學(xué)習(xí)計(jì)算機(jī)編程時面臨許多障礙,包括需要學(xué)習(xí)新的語法和計(jì)算模型編程語言的語法,看似深奧的標(biāo)點(diǎn)符號和格式規(guī)則,在編寫程序時必須遵循,可能是一個嚴(yán)重的障礙。計(jì)算機(jī)科學(xué)的研究表明,學(xué)生在編程過程中會在大量的代碼中迷失,淹沒在編程代碼的細(xì)節(jié)上。導(dǎo)致學(xué)生過于關(guān)注代碼的語法細(xì)節(jié),而不是程序的設(shè)計(jì)和思維的拓展上。
(三)缺乏優(yōu)秀的教師
在編程教育行業(yè),缺乏專業(yè)能力過硬和教學(xué)方法優(yōu)秀的教師,行業(yè)頂尖人才非常珍貴,每年都會有優(yōu)秀的計(jì)算機(jī)人才涌現(xiàn),但是進(jìn)入編程教育行業(yè)的優(yōu)秀計(jì)算機(jī)人才卻少之又少。隨著我國產(chǎn)業(yè)結(jié)構(gòu)的不斷升級,云計(jì)算技術(shù)、機(jī)器學(xué)習(xí)等人工智能技術(shù)在世界范圍內(nèi)的推廣,在移動應(yīng)用、智能手機(jī)終端、云管理、云物流等領(lǐng)域出現(xiàn)了巨大的人才缺口。在此情況下,相關(guān)行業(yè)頂尖人才愈發(fā)珍貴,流人教育行業(yè)人才較少,課程質(zhì)量難以突破。專業(yè)計(jì)算機(jī)編程人才普遍進(jìn)入傳統(tǒng)計(jì)算機(jī)行業(yè)如:開發(fā)程序、程序測試、運(yùn)營維護(hù)等。編程教育者在實(shí)驗(yàn)編程過程中必須掌握發(fā)現(xiàn)、分析和解決問題的能力,并能將這種思維能力通過言傳身教的教學(xué)方式傳授給學(xué)生,但是這一點(diǎn)正是計(jì)算機(jī)專業(yè)出身人才的薄弱點(diǎn)。而具有過硬教學(xué)技能的教師卻對編程教育不夠?qū)I(yè),成了編程教育行業(yè)缺乏優(yōu)秀教師的主要痛點(diǎn)和難點(diǎn)。
五、編程教學(xué)教育質(zhì)量提升策略
(一)建立更加多樣化的編程工具
建立更加多樣化的編程工具并引入游戲化和情境化教學(xué)方法,利用具體情景和游戲化的活動在教學(xué)過程中培養(yǎng)計(jì)算思維思想來輔助學(xué)生進(jìn)行問題的解決和知識的學(xué)習(xí),從而完成了培養(yǎng)學(xué)生計(jì)算思維的目標(biāo)。
圖形化編程的方式可以有效降低學(xué)生認(rèn)知負(fù)荷,提升學(xué)生的學(xué)習(xí)興趣以及提升編程思維。圖形化編程工具可以幫助學(xué)生對任務(wù)和目標(biāo)進(jìn)行分解,將一個龐大的問題分解為多個小問題,通過解決分解出的小問題有條不紊地解決整個問題,鍛煉了學(xué)生分析問題、解決問題的能力,增強(qiáng)學(xué)生解決問題的邏輯性?;趬K的編程環(huán)境通常包括可視化編程。在這類環(huán)境中,可以通過對屏幕上的可視對象進(jìn)行拖放的方法來執(zhí)行編碼過程,而不必按照編程語言的語法規(guī)則編寫代碼。
更加多樣化的編程工具開發(fā)減少了認(rèn)知負(fù)擔(dān),從而激勵新學(xué)習(xí)者學(xué)習(xí)編程,提供這種開發(fā)的連續(xù)性可能是一種解決方案。因此,建立更加多樣化的編程工具被用來幫助編程初學(xué)者理解編程和參與編程。讓學(xué)生透過不同的編程工具,創(chuàng)造性的反映他們的想法,在不同的工具中應(yīng)用程序設(shè)計(jì)的概念。
(二)編程教育要更加注重以培養(yǎng)計(jì)算思維為導(dǎo)向
對于計(jì)算機(jī)編程入門學(xué)習(xí)者來說,無論是中小學(xué)生還是大學(xué)本科生,計(jì)算思維的培養(yǎng)要遠(yuǎn)比編程能力的培養(yǎng)重要得多。比起學(xué)習(xí)具體的編程語言和語句語法,讓學(xué)生形成利用計(jì)算機(jī)來處理問題的習(xí)慣和思維模式更加重要??梢宰寣W(xué)生一個問題的解決當(dāng)中領(lǐng)悟和歸納出一種解決問題的思維和方法。學(xué)習(xí)編程步驟必須培養(yǎng)解決問題的技能,學(xué)習(xí)編程的過程就包含解決問題步驟的過程。
(三)建立系統(tǒng)的課程體系和授課模式
建立系統(tǒng)的成熟度課程體系和授課模式,通過多種多樣教學(xué)課程對學(xué)生進(jìn)行積極引導(dǎo),例如使用游戲化的編程工具、可視化圖形編程工具等進(jìn)行授課,培養(yǎng)學(xué)生的計(jì)算思維、思考能力和創(chuàng)新意識,提高學(xué)生的解題能力。編程教學(xué)根據(jù)先易后難,循序漸進(jìn)的學(xué)習(xí)進(jìn)程,為學(xué)生培養(yǎng)創(chuàng)造性思維提供學(xué)習(xí)平臺,讓學(xué)生學(xué)習(xí)編程的過程變得有趣有效。操作簡單的雙師系統(tǒng)以及師生雙向引進(jìn)學(xué)習(xí)的多元化的教學(xué)模式,讓教學(xué)更加智能化,信息化,高效化。改進(jìn)教學(xué)方法和增加多種授課模式,如:實(shí)踐上機(jī)練習(xí)、項(xiàng)目學(xué)習(xí)、課堂授課、研討會和輔導(dǎo)課、基于問題的教學(xué)。實(shí)踐上機(jī)練習(xí)很有效的教學(xué)方式,讓學(xué)生在練習(xí)和實(shí)踐中更好地理解和體會所學(xué)習(xí)的基礎(chǔ)知識和概念,提高學(xué)生編程能力;項(xiàng)目學(xué)習(xí)讓學(xué)習(xí)者在具體的項(xiàng)目中學(xué)習(xí),在參與到實(shí)際的編程項(xiàng)目的過程當(dāng)中,增強(qiáng)了學(xué)生參與解決問題過程中的感受,增強(qiáng)了學(xué)生的積極性;課堂授課是傳統(tǒng)的教學(xué)方法時獲得知識的主要場所,仍然是必不可少的,可以幫助學(xué)生獲得系統(tǒng)的編程知識;研討會以及基于問題導(dǎo)向的教學(xué)可以讓學(xué)生在思維和知識的碰撞中交流想法,從而有效幫助學(xué)生對知識進(jìn)行理解,提高學(xué)生自主學(xué)習(xí)的效果。
六、結(jié)束語
在當(dāng)今這個時代計(jì)算機(jī)逐漸成為大部分人在工作和學(xué)習(xí)中必不可少工具,數(shù)字化、數(shù)據(jù)化、電子化、信息化已經(jīng)成為一種趨勢,信息和數(shù)據(jù)的處理已經(jīng)成為工作和學(xué)習(xí)的基本手段和方法。學(xué)習(xí)編程具有很大的現(xiàn)實(shí)意義,可以提升學(xué)習(xí)者的綜合素質(zhì)。但是對于編程入門學(xué)習(xí)者的教學(xué)仍然存在教學(xué)過程中缺乏計(jì)算思維的培養(yǎng),不合適的教學(xué)方法削弱了學(xué)生編程學(xué)習(xí)的積極性,編程教育的行業(yè)內(nèi)缺乏專業(yè)優(yōu)秀教師的問題。因此,在編程的教學(xué)方面需要建立更加多樣化的編程工具,在編程教學(xué)中要更加注重以培養(yǎng)計(jì)算思維為導(dǎo)向,建立系統(tǒng)的課程體系和授課模式讓編程初學(xué)者能夠更加有效地掌握編程能力和計(jì)算思維。
參? 考? 文? 獻(xiàn)
[1]王子行,楊帆.面向商業(yè)新業(yè)態(tài)? 重構(gòu)學(xué)習(xí)新場景[J].中國高等教育,2020(20):9-10.
[2]新一代人工智能發(fā)展規(guī)劃[J].科技導(dǎo)報(bào),2018,36(17):113.
[3]孫發(fā)勤,馮銳.編程教育中的智能導(dǎo)師系統(tǒng):架構(gòu)、設(shè)計(jì)與應(yīng)用[J].遠(yuǎn)程教育雜志,2020,38(01):61-68.
[4]傅騫,章夢瑤.實(shí)體編程的教育應(yīng)用與啟示[J].現(xiàn)代教育技術(shù),2018,28(12):108-114.
[5]計(jì)算思維教學(xué)改革宣言[J].中國大學(xué)教學(xué),2013(07):7-10+17.
作者單位:李澤龍? ? 于瀚翔? ? 張鑫鵬? ? 王濤? ? 貴州師范大學(xué)國際教育學(xué)院