趙敏之,王 敏,廖清遠(yuǎn)
(湖南商務(wù)職業(yè)技術(shù)學(xué)院 商務(wù)信息技術(shù)學(xué)院,湖南 長(zhǎng)沙 410205)
程序設(shè)計(jì)課程是高職IT類(lèi)專(zhuān)業(yè)必修課,課程開(kāi)設(shè)目標(biāo)旨在培養(yǎng)學(xué)生求解問(wèn)題的思路和方法,即算法能力。程序設(shè)計(jì)語(yǔ)言由一系列關(guān)鍵字和語(yǔ)法規(guī)則構(gòu)成,抽象的語(yǔ)法、語(yǔ)義和內(nèi)部運(yùn)行機(jī)理使邏輯思維能力較弱的高職學(xué)生難以入門(mén);傳統(tǒng)的“先上課,后上機(jī)”按部就班完成上機(jī)任務(wù)的教學(xué)模式更顯得枯燥乏味,學(xué)生長(zhǎng)期處于“淺思考”甚至“不思考”狀態(tài),動(dòng)手能力和解決問(wèn)題的能力難以提升。如何通過(guò)程序設(shè)計(jì)課程教學(xué)提高學(xué)生應(yīng)用信息技術(shù)思考問(wèn)題、解決問(wèn)題的能力,并具有一定創(chuàng)新創(chuàng)造能力的智慧人才是高職人才培養(yǎng)的關(guān)鍵。計(jì)算思維是一種通過(guò)抽象和分解的方法,選擇合適的方式對(duì)問(wèn)題進(jìn)行建模,將復(fù)雜問(wèn)題約簡(jiǎn),轉(zhuǎn)化成學(xué)生容易接受的思維模式的能力,是信息社會(huì)創(chuàng)新必須的思維方式[1]。但“思維不可見(jiàn),思維難以教”卻成為培養(yǎng)的障礙。
通過(guò)構(gòu)建智慧課堂,把教學(xué)關(guān)注點(diǎn)從“知識(shí)”轉(zhuǎn)移到“智慧”,教會(huì)高職學(xué)生怎樣思考,從而實(shí)現(xiàn)自主探究式學(xué)習(xí),培養(yǎng)“不只會(huì)使用軟件,而是會(huì)利用軟件作為工具進(jìn)行開(kāi)發(fā)和創(chuàng)新”的智慧型人才是“3智慧”人才培養(yǎng)模式的內(nèi)涵。其中“3智慧”有兩層含義:一是從構(gòu)建智慧課堂到促進(jìn)智慧生成,最后培養(yǎng)智慧人才的3個(gè)階段;二是“智慧人才”中的智慧包含學(xué)習(xí)智慧、協(xié)作智慧和創(chuàng)新智慧[2]。
有瀏覽器的地方就有JavaScript,全球最大求職引擎indeed.com公布的“2017年需求最高的編程語(yǔ)言”統(tǒng)計(jì)中JavaScript名列前三。無(wú)處不在的瀏覽器使JavaScript成為當(dāng)下最熱門(mén)的Web開(kāi)發(fā)語(yǔ)言。相對(duì)其他編程語(yǔ)言,JavaScript更直觀,編輯運(yùn)行更方便。JavaScript這種可視化編程的特性對(duì)高職學(xué)生而言,是一種更容易接受的編程工具。
教育部《教育信息化“十三五”規(guī)劃》提出:應(yīng)“深化信息技術(shù)與教育教學(xué)的融合發(fā)展,著力提升學(xué)生的信息素養(yǎng)、創(chuàng)新意識(shí)和創(chuàng)新能力,養(yǎng)成數(shù)字化學(xué)習(xí)習(xí)慣,促進(jìn)學(xué)生的全面發(fā)展”[3]。在麥克思統(tǒng)計(jì)的2014屆畢業(yè)3年后月收入較高的主要高職高專(zhuān)專(zhuān)業(yè)中,軟件技術(shù)專(zhuān)業(yè)畢業(yè)生以平均月收入7 797元位居榜首。作為高職高專(zhuān)月收入最高的軟件技術(shù)專(zhuān)業(yè)對(duì)畢業(yè)生有更明確的要求——具備較強(qiáng)的編程能力和創(chuàng)新能力。另一方面,招收的學(xué)生與社會(huì)和企業(yè)的需求存在一定的差距。
JavaScript網(wǎng)頁(yè)編程課程是軟件技術(shù)專(zhuān)業(yè)第二學(xué)期開(kāi)設(shè)的專(zhuān)業(yè)基礎(chǔ)課,是一門(mén)將抽象的編程邏輯和可視化網(wǎng)頁(yè)設(shè)計(jì)相融合的課程。第一學(xué)期已開(kāi)設(shè)Java程序設(shè)計(jì)基礎(chǔ)和HTML&CSS網(wǎng)頁(yè)設(shè)計(jì)。通過(guò)前期的學(xué)習(xí),能力強(qiáng)的學(xué)生已較好地掌握了相關(guān)知識(shí),但一部分學(xué)生對(duì)于JavaScript的函數(shù)、數(shù)組等邏輯性較強(qiáng)的知識(shí)點(diǎn)還不能很好地理解和應(yīng)用。
學(xué)生前期專(zhuān)業(yè)知識(shí)學(xué)習(xí)和學(xué)習(xí)心理的分析見(jiàn)表1。
課程采用“知識(shí)講解+案例實(shí)踐”的方式進(jìn)行教學(xué)安排??紤]到面向?qū)ο蟮母拍顚?duì)一年級(jí)學(xué)生來(lái)說(shuō)還比較困難,且后續(xù)會(huì)有Java面向?qū)ο蟮日n程專(zhuān)門(mén)講解,因此略去面向?qū)ο笙嚓P(guān)內(nèi)容。講解內(nèi)置對(duì)象知識(shí)點(diǎn),并調(diào)整該節(jié)案例“制作年歷”為更能調(diào)動(dòng)學(xué)生興趣的“猜數(shù)小游戲”。
“猜數(shù)小游戲”利用HTML、CSS設(shè)計(jì)網(wǎng)頁(yè)內(nèi)容和樣式,根據(jù)輸入的數(shù)字利用分支結(jié)構(gòu)進(jìn)行判斷,給出不同的消息框。有效地串聯(lián)了網(wǎng)頁(yè)設(shè)計(jì)和編程的知識(shí)點(diǎn),入手難度相對(duì)不大,可擴(kuò)充完善的空間較大。游戲由簡(jiǎn)入難分為5關(guān),有利于學(xué)生鞏固已學(xué)知識(shí),并能動(dòng)手實(shí)踐,也有利于學(xué)有所長(zhǎng)的學(xué)生進(jìn)一步提升和拓展。
本案例要求學(xué)生綜合利用前面所學(xué)的JavaScript基本語(yǔ)法、函數(shù)和新知識(shí)點(diǎn)內(nèi)置對(duì)象完成網(wǎng)頁(yè)制作。
重點(diǎn)是利用內(nèi)置對(duì)象、函數(shù)實(shí)現(xiàn)網(wǎng)頁(yè)的基本功能交互,即產(chǎn)生隨機(jī)數(shù)à用戶輸入所猜的數(shù)字à判斷猜的數(shù)字與隨機(jī)數(shù)的大小à提示猜大了、猜小了或猜數(shù)正確。
難點(diǎn)為自主分析需求、自主設(shè)計(jì)并實(shí)現(xiàn)合理的拓展功能交互。
通過(guò)對(duì)教學(xué)對(duì)象和教學(xué)內(nèi)容的分析,確定本單元的知識(shí)與技能、過(guò)程和方法、情感與態(tài)度目標(biāo),見(jiàn)表2。
為了化解矛盾、突破重難點(diǎn)、達(dá)成目標(biāo),采用“3智慧”教學(xué)策略。
(1)呼云喚雨,構(gòu)建智慧課堂;
(2)轉(zhuǎn)知為智,促進(jìn)智慧生成;
(3)以生為本,培養(yǎng)智慧人才。
(1)通過(guò)藍(lán)墨云班課、傳智播客高校學(xué)習(xí)平臺(tái)、W3School在線學(xué)習(xí)網(wǎng)站等打造時(shí)時(shí)可學(xué)、處處能學(xué)的環(huán)境,拓展學(xué)習(xí)的時(shí)間和空間;
(2)利用思維導(dǎo)圖分析需求、理清思路,利用流程圖表現(xiàn)算法,實(shí)現(xiàn)思維可視化;
(3)利用可視化開(kāi)發(fā)工具HBuilder將思維轉(zhuǎn)化為網(wǎng)頁(yè)作品,利用極域電子課堂了解學(xué)習(xí)情況,進(jìn)行適時(shí)的廣播分享,實(shí)現(xiàn)師生思維碰撞,讓思維可見(jiàn)、可教。
表1 學(xué)情分析
表2 教學(xué)目標(biāo)
以猜數(shù)小游戲?yàn)橹骶€貫穿課前感受游戲、課中設(shè)計(jì)游戲、課后優(yōu)化游戲3個(gè)環(huán)節(jié),培養(yǎng)學(xué)生的學(xué)習(xí)智慧、學(xué)科智慧(計(jì)算思維)和協(xié)作智慧??傮w教學(xué)流程圖見(jiàn)圖1。
1)課前感受游戲。
課前感受游戲環(huán)節(jié)包含兩個(gè)任務(wù):看游戲和析游戲。
看游戲:教師發(fā)布學(xué)習(xí)任務(wù),要求學(xué)生觀看游戲視頻。對(duì)照視頻,分析游戲需求,并繪制初步的思維導(dǎo)圖和簡(jiǎn)單的流程圖。
析游戲:學(xué)生分析游戲中用到的知識(shí)點(diǎn),查看相關(guān)學(xué)習(xí)資源,并自主在網(wǎng)上搜索相關(guān)信息。根據(jù)分析,繪制流程圖或思維導(dǎo)圖,并在云班課“答疑/討論”活動(dòng)中提出疑問(wèn)或參與解答;教師根據(jù)學(xué)生的反饋調(diào)整任務(wù)單和其他資源。
2)課中設(shè)計(jì)游戲。
課中設(shè)計(jì)游戲環(huán)節(jié)對(duì)照軟件開(kāi)發(fā)的流程分成5關(guān),難度從低到高,學(xué)生在逐級(jí)挑戰(zhàn)的過(guò)程中充分調(diào)動(dòng)原有思維經(jīng)驗(yàn)與知識(shí)基礎(chǔ),經(jīng)歷分析、構(gòu)想、抉擇、發(fā)現(xiàn)、歸納,解決未知的問(wèn)題。課中設(shè)計(jì)游戲環(huán)節(jié)思路和任務(wù)見(jiàn)表3。
第1關(guān):需求分析。
動(dòng)手寫(xiě)代碼之前一定要先把思路理清,需求分析、概要設(shè)計(jì)優(yōu)于編寫(xiě)代碼。在強(qiáng)調(diào)需求分析的重要性時(shí),有些學(xué)生還是不以為然。在教學(xué)中須通過(guò)重復(fù)的強(qiáng)調(diào)和訓(xùn)練,讓學(xué)生逐步養(yǎng)成軟件工程的思想。
圖1 “猜數(shù)小游戲”總體教學(xué)流程圖
表3 “課中設(shè)計(jì)游戲”環(huán)節(jié)思路與任務(wù)
本關(guān)首先講解random()隨機(jī)數(shù)函數(shù),要求學(xué)生比較round()、ceil()、floor()的用法;解答學(xué)生自主學(xué)習(xí)中的其他疑問(wèn)。學(xué)生自主思考如何解決生成隨機(jī)數(shù)的問(wèn)題;教師通過(guò)極域下發(fā)任務(wù)單,學(xué)生對(duì)思維導(dǎo)圖和流程圖進(jìn)行細(xì)化,明確游戲需求,確定游戲的框架。
第2關(guān):完成網(wǎng)頁(yè)基本功能交互。
建構(gòu)主義認(rèn)為,學(xué)習(xí)過(guò)程中學(xué)生應(yīng)依靠已有的知識(shí)經(jīng)驗(yàn)和認(rèn)知能力,通過(guò)新、舊知識(shí)之間的雙向相互作用,調(diào)整、改造原有經(jīng)驗(yàn),形成新的經(jīng)驗(yàn)體系[4]。在本關(guān)中,學(xué)生寫(xiě)出來(lái)的網(wǎng)頁(yè)程序可以自己玩,通過(guò)運(yùn)用所學(xué)知識(shí),在實(shí)踐過(guò)程中不斷發(fā)現(xiàn)問(wèn)題,尋找解決途徑和方法。
考慮到學(xué)習(xí)基礎(chǔ)的差異性,應(yīng)先準(zhǔn)備一個(gè)簡(jiǎn)單版和詳細(xì)版的任務(wù)單。學(xué)生如有需要,可參考詳細(xì)版中的步驟和代碼截圖,完成猜數(shù)小游戲網(wǎng)頁(yè)內(nèi)容、樣式和基本功能的交互,這是本次課的教學(xué)重點(diǎn)。教師通過(guò)走動(dòng)觀察和極域監(jiān)控,及時(shí)發(fā)現(xiàn)問(wèn)題并給予個(gè)別指導(dǎo)。第二關(guān)思維導(dǎo)圖見(jiàn)圖2。
第3關(guān):完成網(wǎng)頁(yè)拓展功能交互。
從知識(shí)的掌握到能力的形成是存在鴻溝的,消除鴻溝的有效方法是問(wèn)題解決[5]。通過(guò)讓學(xué)生親歷發(fā)現(xiàn)問(wèn)題、界定與表征問(wèn)題、問(wèn)題解決過(guò)程才能更好地培養(yǎng)學(xué)生的思維能力。
本關(guān)要求學(xué)生自主地、個(gè)性化地在第二關(guān)基本功能的基礎(chǔ)上實(shí)現(xiàn)擴(kuò)展,可能涉及顯示猜數(shù)次數(shù)、清空猜數(shù)文本框、當(dāng)猜數(shù)次數(shù)超過(guò)指定數(shù)后能查看答案、美化頁(yè)面、擴(kuò)展其他游戲功能等。教師通過(guò)走動(dòng)觀察和極域監(jiān)控,鼓勵(lì)學(xué)生自主思考,在適當(dāng)情況下進(jìn)行提問(wèn),予以點(diǎn)撥;對(duì)不同層次的學(xué)生提出差異化要求;收集并記錄學(xué)習(xí)過(guò)程中的典型問(wèn)題。小組之間可適當(dāng)討論,思維碰撞,發(fā)現(xiàn)更多可拓展的功能。
第4關(guān):調(diào)試糾錯(cuò)。
一個(gè)可交付的軟件產(chǎn)品一定是通過(guò)不斷出錯(cuò)、不斷糾錯(cuò)的過(guò)程逐步完善的。本關(guān)利用可視化工具的調(diào)試功能,讓學(xué)生從“出錯(cuò)就懵”到“錯(cuò)了就改”,再錯(cuò)再改,不斷優(yōu)化,從而讓學(xué)生養(yǎng)成細(xì)致、精益求精等良好的編程習(xí)慣,并要求學(xué)生記錄并整理程序中出現(xiàn)的錯(cuò)誤提示和錯(cuò)誤情況,作為小組展示時(shí)分享的素材。
第5關(guān):歸納小結(jié)。
歸納是去情境化的過(guò)程,讓學(xué)生剝離實(shí)例學(xué)習(xí)運(yùn)用的各種編程技巧和方法,通過(guò)類(lèi)比的方法,將一個(gè)問(wèn)題的解決方法遷移到另一個(gè)問(wèn)題中,形成一種內(nèi)在的思維能力[6]。
闖過(guò)游戲前四關(guān),學(xué)生已初步形成了計(jì)算思維能力。在本環(huán)節(jié)中,要求以小組為單位匯總猜數(shù)小游戲網(wǎng)頁(yè)設(shè)計(jì)中遇到的問(wèn)題,相互交流。對(duì)于集中突出的問(wèn)題,教師進(jìn)行簡(jiǎn)要的點(diǎn)撥提示,學(xué)生課后自己查資料嘗試解決,同時(shí)選出小組最優(yōu)的作品作為周末拓展的藍(lán)本。借助歸納、實(shí)踐,強(qiáng)化和鞏固學(xué)生的計(jì)算思維能力和學(xué)習(xí)智慧。
3)課后優(yōu)化游戲。
課后優(yōu)化環(huán)節(jié)在藍(lán)墨云班課發(fā)布游戲PK的活動(dòng),各小組互相比拼玩游戲,找Bug并進(jìn)行投票評(píng)選。學(xué)生的角色在游戲開(kāi)發(fā)者和游戲玩家之間轉(zhuǎn)換,通過(guò)游戲的測(cè)試,完成游戲優(yōu)化,培養(yǎng)學(xué)生的協(xié)作能力,提高自學(xué)意識(shí)。
本次課的考核評(píng)價(jià)綜合了線上和線下、教師評(píng)價(jià)和學(xué)生評(píng)價(jià)、基本考核和附加考核。
圖2 第2關(guān)網(wǎng)頁(yè)基本功能交互思維導(dǎo)圖
學(xué)生認(rèn)真參與課前、課中、課后各環(huán)節(jié)的學(xué)習(xí)并闖過(guò)前2關(guān),可以得到本次課總成績(jī)的80%;闖關(guān)通過(guò)所有5關(guān)或自主開(kāi)發(fā)了游戲的學(xué)生可以得到滿分和額外的獎(jiǎng)勵(lì)。
根據(jù)“3智慧”的教學(xué)策略,在智慧課堂環(huán)境下,將猜數(shù)小游戲貫穿教學(xué)環(huán)節(jié),讓學(xué)生在身體力行的游戲、學(xué)習(xí)、互動(dòng)中形成思維,理清思維,鞏固思維,沉淀思維,利用課前、課中、課后培養(yǎng)學(xué)生的智慧。
在智慧課堂中,以學(xué)生為主體,讓學(xué)生從課上偶爾學(xué)、課后不想學(xué)到人人皆學(xué)、時(shí)時(shí)可學(xué)、處處能學(xué);利用思維可視化,從零散的知識(shí)點(diǎn)學(xué)習(xí)到構(gòu)建學(xué)生個(gè)人的思維體系;將游戲貫穿于教學(xué)中,讓學(xué)生從游戲的受害者變成游戲的受益者。
在教學(xué)實(shí)施過(guò)程中,學(xué)生參與度高,學(xué)習(xí)自主性得到了提升,達(dá)到了預(yù)設(shè)的學(xué)習(xí)目標(biāo),學(xué)生對(duì)教師的教學(xué)方式也非常的認(rèn)可。
從云班課中統(tǒng)計(jì)的教學(xué)數(shù)據(jù)來(lái)看,存在學(xué)習(xí)兩極分化的問(wèn)題。通過(guò)及時(shí)了解分析教學(xué)數(shù)據(jù),教師有針對(duì)性地干預(yù)和指導(dǎo);另外,智慧課堂中不同的教學(xué)平臺(tái)存在數(shù)據(jù)難以收集的問(wèn)題,擬通過(guò)構(gòu)建智慧學(xué)習(xí)生態(tài)系統(tǒng)實(shí)現(xiàn)數(shù)據(jù)的整合。
愛(ài)因斯坦說(shuō):“當(dāng)你把在學(xué)校所學(xué)的東西全部忘記之后,剩下的就是教育了?!苯逃恼嬷B在于將知識(shí)轉(zhuǎn)化為智慧。在JavaScript網(wǎng)頁(yè)編程和其他程序設(shè)計(jì)類(lèi)課程教學(xué)實(shí)踐中,采用“3智慧”教學(xué)策略,將教學(xué)內(nèi)容游戲化、學(xué)習(xí)思維可視化,學(xué)生學(xué)習(xí)興趣濃厚,在專(zhuān)業(yè)學(xué)習(xí)中獲得的成就感促進(jìn)軟件技術(shù)專(zhuān)業(yè)學(xué)生更加積極、樂(lè)觀,具有良好的自我學(xué)習(xí)和再學(xué)習(xí)的能力,具備智慧人才的基本特征。