史敏敏
自周以真教授提出計算思維的概念以來,關(guān)于計算思維培養(yǎng)的研究與實(shí)踐越來越多。計算思維作為信息技術(shù)學(xué)科核心素養(yǎng)之一,與其他學(xué)科思維相比有何獨(dú)特性?計算思維的內(nèi)涵多元,有何本質(zhì)特征?除了程序設(shè)計,如何在非編程模塊的教學(xué)中培養(yǎng)計算思維?針對這些問題,筆者進(jìn)行了思考與探索。
探索:非編程教學(xué)中計算思維的培養(yǎng)模式
程序設(shè)計是培育計算思維的沃土,因?yàn)閷W(xué)生可以主動構(gòu)建自動化規(guī)則,使用明確而有限的指令將解決問題的思路映射到計算機(jī)世界,調(diào)試無誤后讓計算機(jī)自動執(zhí)行。但是,程序設(shè)計是培育計算思維的唯一途徑嗎?能否在非編程模塊的教學(xué)中另辟蹊徑,探尋“可計算”火種,綻放“計算思維”火花呢?帶著這些疑問,筆者對非編程教學(xué)中計算思維的培養(yǎng)模式進(jìn)行了探索。該模式如下頁圖1所示。
1.面向問題解決
人類歷史就是一部問題解決史,人類解決問題的過程可分為發(fā)現(xiàn)與分析問題、設(shè)計解決方案、實(shí)施與驗(yàn)證方案、系統(tǒng)維護(hù),繼而發(fā)現(xiàn)新問題。在這個過程中,主觀能動的思維活動是解決問題的關(guān)鍵,因此,培養(yǎng)計算思維與解決問題密不可分。
計算思維培養(yǎng)不能泛化,不能認(rèn)為使用計算機(jī)等數(shù)字化工具來解決問題就是培養(yǎng)計算思維。在非編程教學(xué)中,并不是所有的問題解決過程都指向計算思維,其落腳點(diǎn)在于解決問題的方案是否固化在了計算工具之中,是否可以被反復(fù)執(zhí)行且每次都嚴(yán)格按照解決方案執(zhí)行,是否能自動化執(zhí)行且不需要人腦的參與。
2.指向抽象與自動化
《普通高中信息技術(shù)課程標(biāo)準(zhǔn)(2017年版)》提出:計算思維具體表現(xiàn)為解決問題中的形式化、模型化、自動化、系統(tǒng)化。抽象是方法,貫穿于整個思維活動;形式化與模型化是抽象結(jié)果的不同表現(xiàn)形式;自動化是抽象的目標(biāo),但抽象往往難以直接抵達(dá)自動化,需要經(jīng)歷形式化表達(dá)與模型化構(gòu)造;最后遷移到與之相關(guān)的其他問題解決中,形成系統(tǒng)化的思維方法路徑。
計算思維培養(yǎng)不能狹隘化,不能認(rèn)為沒有編寫程序來解決問題就無法培養(yǎng)計算思維。學(xué)生并不是在學(xué)習(xí)程序設(shè)計的那一刻才開始擁有計算思維,計算思維在學(xué)生體驗(yàn)無處不在、時刻發(fā)生的“計算”時就有所滲透。組織什么類型的數(shù)據(jù)讓計算工具進(jìn)行處理?如何合理地設(shè)置參數(shù)讓計算工具處理得更好?按照計算機(jī)科學(xué)領(lǐng)域的什么思想方法構(gòu)造解決問題的模型,從而與計算工具內(nèi)部的自動化運(yùn)行不謀而合?如何根據(jù)運(yùn)行結(jié)果優(yōu)化解決問題的模型?這些問題都是計算思維在學(xué)生頭腦中的體現(xiàn)。
探討:非編程教學(xué)中培養(yǎng)計算思維的案例
基于上述分析,筆者選用“制作多媒體作品”模塊的教學(xué)內(nèi)容,以《讓幻燈片動起來》一課為例構(gòu)建通達(dá)計算思維的教學(xué)模式,以期探究計算思維在非編程教學(xué)中的培養(yǎng)。
1.教學(xué)模式的構(gòu)建
(1)教學(xué)分析
教學(xué)內(nèi)容是基于學(xué)生的PPT已初具規(guī)模,進(jìn)一步學(xué)習(xí)創(chuàng)作動畫的方法,為作品增添動感和趣味。本單元開展項目學(xué)習(xí),要求學(xué)生圍繞主題“好書共享”創(chuàng)作一份完整的演示文稿,并分享自己最喜愛的一本名著,體會數(shù)字化工具協(xié)助演說的優(yōu)勢,即有條理地表達(dá)觀點(diǎn),可視化地呈現(xiàn)想法。
教學(xué)重點(diǎn)是掌握添加動畫效果和調(diào)整動畫順序的方法,難點(diǎn)是根據(jù)需要合理地設(shè)置動畫。學(xué)生對學(xué)習(xí)動畫具有濃厚的興趣,有個別學(xué)生在前期制作PPT時已探索了動畫的某些功能,但常會忽略動畫效果與內(nèi)容表達(dá)的統(tǒng)一。
(2)模式構(gòu)建
筆者構(gòu)建的教學(xué)模式如圖2所示。以“如何生動表現(xiàn)名著中的精彩故事”這一問題需求作為教學(xué)切入點(diǎn),將PPT動畫創(chuàng)作與現(xiàn)實(shí)世界中導(dǎo)演拍戲相聯(lián)接,帶領(lǐng)學(xué)生進(jìn)入“導(dǎo)演”角色。指導(dǎo)演員表演看似是一個簡單問題,但要把“導(dǎo)演”的思維模式固化在計算機(jī)中實(shí)屬不易,因?yàn)槿伺c人之間的思想交流具有主觀能動性,而計算機(jī)的處理過程看不見摸不著?;趩栴}情境的創(chuàng)設(shè),學(xué)生以分析動畫情節(jié)、表達(dá)動畫要素、構(gòu)造動畫模型、調(diào)試動畫效果、推廣動畫創(chuàng)作為活動主線開展學(xué)習(xí),始終處于抽象、形式化、模型化、自動化、系統(tǒng)化的計算思維方法路徑之中去解決問題,從而達(dá)成學(xué)習(xí)目標(biāo)。
2.計算思維方法路徑的培育
(1)對動畫情節(jié)的抽象
抽象的目的是剔除問題中不必要的細(xì)節(jié),提取問題的關(guān)鍵要素與基本特征,這是將現(xiàn)實(shí)世界問題轉(zhuǎn)化為計算機(jī)可解決問題的關(guān)鍵一步。指向自動化的抽象主要體現(xiàn)為對象的抽象和規(guī)則的抽象:每個對象有各自的狀態(tài),每種狀態(tài)可通過若干個屬性和行為來描述,屬性和行為反映了對象最核心的內(nèi)容,用以區(qū)分不同的對象;現(xiàn)實(shí)中描述問題的規(guī)則往往錯綜復(fù)雜,規(guī)則的抽象就是從問題描述中梳理出規(guī)則,且這些規(guī)則可以轉(zhuǎn)換成計算機(jī)可執(zhí)行的表達(dá)形式。
教學(xué)中,筆者以問題鏈引導(dǎo)學(xué)生構(gòu)想故事畫面,分析動畫情節(jié),結(jié)合對導(dǎo)演工作的認(rèn)知,對動畫中對象的屬性、行為以及對象之間的互動規(guī)則進(jìn)行抽象(如上頁圖3)。
以“孫悟空玩轉(zhuǎn)金箍棒”為例,對象和規(guī)則的抽象如表1所示。
(2)對動畫要素的形式化表達(dá)
形式化表達(dá)是抽象結(jié)果的表現(xiàn)形式,即提取對象屬性、行為、規(guī)則等核心要素之后,以計算機(jī)可執(zhí)行為目標(biāo),合理組織數(shù)據(jù),用自然語言、流程圖等方式清晰地表達(dá)問題,精簡的符號是形式化的高級表現(xiàn)形式。形式化表達(dá)有助于推動學(xué)生對問題求解過程的深入思考,促使學(xué)生迸發(fā)無限創(chuàng)意。
教學(xué)中,不同學(xué)生具備的抽象能力不同,形式化程度也有所區(qū)別。有的用簡單的自然語言表達(dá),有的用思維導(dǎo)圖表示某個對象及其可操作的屬性、行為、規(guī)則等,還有的用流程分解對象的動作序列,以表達(dá)動作發(fā)生的先后順序。之后展開小組活動,探討表達(dá)形式是否完備?是否可操作?有了這樣的學(xué)習(xí)體驗(yàn),今后在分析問題階段學(xué)生會盡可能地以形式化的方法表達(dá)抽象結(jié)果。
(3)對動畫模型的構(gòu)造
在形式化表達(dá)的基礎(chǔ)上,判斷、分析與綜合各種信息資源,有序組織計算機(jī)可識別的求解步驟,逐步形成解決問題的完整方案。構(gòu)造是為解決問題提供一個框架,對構(gòu)造的模型進(jìn)行初步評估也是重要環(huán)節(jié),是學(xué)生對方案的自我驗(yàn)證。學(xué)生已在頭腦中對計算機(jī)解決問題的過程進(jìn)行了整理和規(guī)劃,且這種整理和規(guī)劃一定是基于對自動化特征的理解。
教學(xué)中,模型化的過程可借助流程圖、思維導(dǎo)圖等可視化工具作為學(xué)習(xí)支架,也可以在腦海中直接形成。真正的學(xué)習(xí)支架是幫助學(xué)習(xí)者建構(gòu)知識、獲得能力的框架,提供必要的支持。一旦學(xué)習(xí)者能夠獨(dú)立解決問題,學(xué)習(xí)支架就像建筑竣工后的腳手架,會被逐漸撤離。由于需要梳理多個對象的多個關(guān)鍵要素,表格以直觀的分類、有序的排列等優(yōu)勢脫穎而出,可以在行、列之間將關(guān)鍵要素之間的關(guān)系詮釋得清晰明了。在完成表格的同時,動畫劇本已經(jīng)構(gòu)造成型。
以“孫悟空玩轉(zhuǎn)金箍棒”為例,構(gòu)造的動畫模型如表2所示。
(4)對動畫效果的自動化調(diào)試
構(gòu)造的模型未必十全十美,需要在自動化的計算工具中驗(yàn)證解決問題的方案。計算工具或系統(tǒng)相當(dāng)于一個黑箱,學(xué)生不知道也無需知道其背后蘊(yùn)含的自動化機(jī)制。在課堂上,學(xué)生的大部分時間是處于與計算機(jī)或網(wǎng)絡(luò)的“人機(jī)對話”狀態(tài),學(xué)生將自己的構(gòu)想轉(zhuǎn)變?yōu)橛嬎銠C(jī)可執(zhí)行的操作,計算機(jī)立刻給予響應(yīng)和反饋,速度快到?jīng)]有給學(xué)生思考的余地。這種響應(yīng)與反饋本身就是一種評價,只不過這種評價時常被學(xué)生忽略或不被學(xué)生所理解。此時需要引導(dǎo)學(xué)生去解讀計算機(jī)提供的隱性評價語言,不斷調(diào)試與完善。自動化調(diào)試的環(huán)節(jié)培養(yǎng)了學(xué)生縝密的、基于自動化的推理能力,強(qiáng)化了學(xué)生對抽象、構(gòu)造與自動化的理解,從而感悟計算機(jī)世界解決問題的方法觀。
教學(xué)中,部分學(xué)生對動畫窗格視而不見,沒有透徹地認(rèn)識到動畫窗格其實(shí)涵蓋了動畫的各項精髓(如圖4),值得深入挖掘。當(dāng)學(xué)生能有效運(yùn)用動畫窗格,通過動畫窗格解讀計算機(jī)正在執(zhí)行的動畫劇本時,就能在調(diào)試中體會到自動化與再構(gòu)造的快樂和成就感。在反復(fù)調(diào)試的過程中,學(xué)生不斷地將預(yù)設(shè)的動畫模型與PPT反饋的動畫效果進(jìn)行比較,進(jìn)一步調(diào)整方案直至問題解決(如圖5)。
(5)對動畫創(chuàng)作的系統(tǒng)化推廣
最后,歸納提煉解決問題的系統(tǒng)性策略,聚合為優(yōu)化的有機(jī)整體,形成解決同類問題的通用方案,并將其遷移到與之相關(guān)的其他問題解決中,不斷拓展形成創(chuàng)新創(chuàng)造。最終目的不是讓學(xué)生成為技藝精湛的動畫大師,而是讓學(xué)生在導(dǎo)演動畫的過程中,把問題從不能解決轉(zhuǎn)變?yōu)橛嬎銠C(jī)可解決、可執(zhí)行、可識別、可調(diào)試運(yùn)行成功。
其實(shí),學(xué)生是在現(xiàn)有的計算機(jī)系統(tǒng)的基礎(chǔ)上再次進(jìn)行抽象、構(gòu)造與實(shí)現(xiàn)自動化,固化了所構(gòu)想的精彩故事。對于欣賞PPT的觀眾而言,這是一個更加智能、更加“傻瓜”的計算工具,因?yàn)樗麄冎恍枰獑螕簟胺庞郴脽羝卑粹o,就能品讀學(xué)生對這本名著的精彩介紹,就能欣賞融入了學(xué)生思維方式的多媒體作品。至于如此美妙的多媒體作品是如何創(chuàng)作的,擁有同樣計算思維的人將會進(jìn)一步還原與解構(gòu),會有一些與普通欣賞者不一樣的、出于好奇心的、基于計算思維視角的思考,會設(shè)想動畫模型,猜測核心功能,并通過一些輸入和系統(tǒng)反饋來驗(yàn)證自己的想法。
結(jié)語
相信隨著大數(shù)據(jù)、人工智能等的蓬勃發(fā)展,計算思維的內(nèi)涵將被進(jìn)一步挖掘與重構(gòu),期待計算思維教育會在更廣闊的領(lǐng)域和更長遠(yuǎn)的時間跨度上開展。