李偉 李澤 深圳點(diǎn)貓科技有限公司教學(xué)教研中心
李冰 深圳大學(xué)師范學(xué)院
夏立 深圳職業(yè)技術(shù)學(xué)院商務(wù)外語(yǔ)學(xué)院
近年來(lái),美國(guó)、英國(guó)、新加坡、以色列、日本等國(guó)家相繼將計(jì)算思維納入計(jì)算機(jī)科學(xué)課程的培養(yǎng)目標(biāo)。《普通高中信息技術(shù)課程標(biāo)準(zhǔn)(2017年版)》也將計(jì)算思維作為信息技術(shù)課程的學(xué)科核心素養(yǎng)之一。在智能時(shí)代背景下,計(jì)算思維已經(jīng)成為一種既符合個(gè)人發(fā)展需要又呼應(yīng)社會(huì)發(fā)展需要的核心素養(yǎng)。
按照周以真的定義,計(jì)算思維是在表述問(wèn)題及其解決方案時(shí)所涉及的思維過(guò)程,確保解決方案的表征形式可被信息處理代理有效執(zhí)行。盡管該定義對(duì)計(jì)算思維的內(nèi)涵給出了確切的解釋?zhuān)珜?duì)于計(jì)算思維的范圍和本質(zhì),不同學(xué)者并未形成一致意見(jiàn)。為了進(jìn)一步澄清計(jì)算思維的內(nèi)容,許多學(xué)者嘗試將計(jì)算思維拆解成多個(gè)核心要素,但是這些清單式定義都存在系統(tǒng)性不足的問(wèn)題——只識(shí)別出一些關(guān)鍵的計(jì)算思維要素,沒(méi)有揭示整體的計(jì)算問(wèn)題解決過(guò)程。因此,基于對(duì)計(jì)算問(wèn)題解決過(guò)程的分析,筆者構(gòu)建了一個(gè)以實(shí)踐為導(dǎo)向的計(jì)算思維框架(如圖1)。

圖1
由于每個(gè)計(jì)算思維實(shí)踐描述的都是一種復(fù)雜的能力,因此在實(shí)踐中落地這些培養(yǎng)目標(biāo)時(shí),仍然有很大的困難。為了更好地描繪出學(xué)習(xí)者的計(jì)算思維進(jìn)階過(guò)程,筆者從科學(xué)教育領(lǐng)域借鑒了一個(gè)概念性工具——學(xué)習(xí)進(jìn)階。學(xué)習(xí)進(jìn)階描述的是隨著兒童在廣泛的時(shí)間跨度內(nèi)學(xué)習(xí)和研究一個(gè)主題,對(duì)該主題的思考方式逐漸復(fù)雜化的過(guò)程。筆者將每個(gè)計(jì)算思維實(shí)踐作為一個(gè)“進(jìn)階變量”,為它們分別設(shè)計(jì)了包含4個(gè)水平的學(xué)習(xí)進(jìn)階,最終形成了一個(gè)計(jì)算思維實(shí)踐學(xué)習(xí)進(jìn)階框架。該框架可以作為計(jì)算思維教育研究者和實(shí)踐者研發(fā)課程內(nèi)容和評(píng)測(cè)工具以及設(shè)計(jì)教學(xué)活動(dòng)的參照依據(jù)。
現(xiàn)實(shí)世界的問(wèn)題都是存在于情境之中的,是模糊的、未被澄清的。明確問(wèn)題是什么并以清晰的語(yǔ)言表述問(wèn)題是問(wèn)題解決過(guò)程中最關(guān)鍵的一步。
水平1-1:識(shí)別出已通過(guò)計(jì)算手段解決的問(wèn)題;水平2-1:提出澄清性的問(wèn)題,以了解一個(gè)問(wèn)題的準(zhǔn)確目標(biāo)和具體要求;水平3-1:識(shí)別出與問(wèn)題相關(guān)的顯性的或隱性的要求和限制,分析它們對(duì)問(wèn)題解決過(guò)程和作品創(chuàng)造過(guò)程的影響;水平4-1:識(shí)別出現(xiàn)實(shí)情境中可以應(yīng)用計(jì)算手段解決問(wèn)題的機(jī)會(huì),將其轉(zhuǎn)化成計(jì)算問(wèn)題,以計(jì)算機(jī)可以處理的方式明確地表述問(wèn)題。
問(wèn)題分解是計(jì)算領(lǐng)域中極為常用的一種問(wèn)題解決策略,常見(jiàn)的問(wèn)題分解方式包括按照結(jié)構(gòu)、功能、順序和依賴進(jìn)行分解。
水平1-1:按照結(jié)構(gòu)將問(wèn)題分解成可以獨(dú)立解決的子問(wèn)題;水平1-2:按照流程將解決問(wèn)題的過(guò)程分解成多個(gè)有序的步驟;水平2-1:按照系統(tǒng)的功能組織和依賴關(guān)系將問(wèn)題分解成可以獨(dú)立實(shí)現(xiàn)的子部分;水平3-1:將復(fù)雜問(wèn)題進(jìn)行多層次分解,先分解成子問(wèn)題,然后對(duì)復(fù)雜的子問(wèn)題做進(jìn)一步分解,使其更加易于處理;水平4-1:從多個(gè)維度對(duì)復(fù)雜問(wèn)題進(jìn)行分解,并評(píng)估每個(gè)分解方案對(duì)于理解問(wèn)題和解決問(wèn)題的有效性。
數(shù)據(jù)視角是一種新的理解問(wèn)題的方式。從教學(xué)實(shí)踐來(lái)看,對(duì)數(shù)據(jù)能力的培養(yǎng)往往都是先從問(wèn)題調(diào)查中的數(shù)據(jù)收集和構(gòu)建開(kāi)始,而后使用相應(yīng)的統(tǒng)計(jì)學(xué)和概率學(xué)的理論,發(fā)現(xiàn)數(shù)據(jù)的規(guī)律并生成結(jié)論,最后再使用可視化的方式將數(shù)據(jù)結(jié)論表達(dá)出來(lái)。
水平1-1:使用計(jì)算設(shè)備和工具收集、存儲(chǔ)和管理數(shù)據(jù);水平1-2:用多種可視化形式呈現(xiàn)數(shù)據(jù);水平2-1:用不同的方式分類(lèi)、組織和處理數(shù)據(jù),以強(qiáng)調(diào)數(shù)據(jù)集的特定方面或部分;水平2-2:從數(shù)據(jù)的可視化呈現(xiàn)中識(shí)別模式,并做出預(yù)測(cè);水平3-1:使用合適的方法并對(duì)數(shù)據(jù)進(jìn)行處理或轉(zhuǎn)換,使其更加有用和可靠;水平3-2:使用數(shù)據(jù)來(lái)強(qiáng)調(diào)關(guān)系,預(yù)測(cè)結(jié)果或支持一項(xiàng)主張;水平4-1:根據(jù)計(jì)算模型的預(yù)測(cè)結(jié)果和實(shí)際收集到的數(shù)據(jù)來(lái)優(yōu)化已建構(gòu)的模型。
模型能夠幫助人們深化對(duì)現(xiàn)實(shí)世界的理解。建構(gòu)有效模型的關(guān)鍵在于理解模型與其所表示的現(xiàn)象之間的關(guān)系,包括闡述模型與現(xiàn)象之間的異同,提出影響其有效性的因素,以及識(shí)別模型所隱含的內(nèi)在假設(shè)。
水平1-1:通過(guò)繪圖或者創(chuàng)作計(jì)算作品來(lái)模擬生活中或自然中的常見(jiàn)現(xiàn)象;水平2-1:創(chuàng)建明確命名的變量來(lái)存儲(chǔ)簡(jiǎn)單類(lèi)型的數(shù)據(jù),根據(jù)功能需求對(duì)數(shù)據(jù)進(jìn)行操作;水平2-2:識(shí)別具有相同屬性和行為的對(duì)象,通過(guò)克隆等面向?qū)ο髾C(jī)制來(lái)進(jìn)行建模;水平2-3:使用簡(jiǎn)單數(shù)學(xué)語(yǔ)言和模型,描述程序中的數(shù)學(xué)關(guān)系;水平3-1:根據(jù)情境設(shè)計(jì)合理的數(shù)據(jù)結(jié)構(gòu)來(lái)存儲(chǔ)數(shù)據(jù),根據(jù)功能需求對(duì)數(shù)據(jù)進(jìn)行操作;水平3-2:根據(jù)問(wèn)題情境,選用合適的數(shù)學(xué)模型來(lái)設(shè)計(jì)解決方案;水平4-1:從類(lèi)似的現(xiàn)象、過(guò)程或者代碼中提取共同特征,對(duì)差異部分進(jìn)行參數(shù)化,并通過(guò)帶參函數(shù)進(jìn)行封裝,形成可復(fù)用的模塊。
算法是完成特定任務(wù)的一系列自動(dòng)化步驟,是呈現(xiàn)問(wèn)題解決方案的邏輯和有序指令。通過(guò)計(jì)算機(jī)科學(xué)和技術(shù)的應(yīng)用,算法已經(jīng)深刻地嵌入到現(xiàn)實(shí)世界中。
水平1-1:使用自然語(yǔ)言、簡(jiǎn)單符號(hào)等設(shè)計(jì)和表達(dá)順序結(jié)構(gòu)的算法;水平1-2:識(shí)別重復(fù)的現(xiàn)象、過(guò)程、模式等,并使用循環(huán)結(jié)構(gòu)設(shè)計(jì)和表達(dá)算法;水平2-1:針對(duì)同一問(wèn)題,發(fā)散思考,設(shè)計(jì)出多種可行的備選算法;水平2-2:組合使用順序結(jié)構(gòu)、循環(huán)結(jié)構(gòu)和條件選擇結(jié)構(gòu)來(lái)設(shè)計(jì)并表達(dá)算法;水平3-1:使用流程圖或者偽代碼設(shè)計(jì)和表達(dá)相對(duì)復(fù)雜的算法;水平3-2:嵌套使用多種控制結(jié)構(gòu)或組合使用多個(gè)判斷條件來(lái)設(shè)計(jì)并表達(dá)算法;水平4-1:對(duì)同一問(wèn)題的多種算法進(jìn)行比較,從效率、準(zhǔn)確性、可讀性等角度評(píng)估算法的優(yōu)劣。
計(jì)算作品是一個(gè)復(fù)雜的系統(tǒng),它是由相互聯(lián)系、相互作用的元素為完成特定目標(biāo)而組成的整體,因此學(xué)習(xí)者應(yīng)該以系統(tǒng)化的方式對(duì)計(jì)算作品進(jìn)行思考和設(shè)計(jì)。
水平1-1:將系統(tǒng)作為一個(gè)黑盒,定義和測(cè)量系統(tǒng)的輸入和輸出;水平2-1:識(shí)別一個(gè)系統(tǒng)的組成元素,闡明它們的行為,并解釋元素之間的相互作用如何產(chǎn)生系統(tǒng)的特征行為;水平3-1:識(shí)別系統(tǒng)中涉及的狀態(tài)量,準(zhǔn)確設(shè)置系統(tǒng)的初始狀態(tài);水平3-2:分析并用自然語(yǔ)言、狀態(tài)圖等描述系統(tǒng)中的狀態(tài)轉(zhuǎn)換過(guò)程;水平4-1:運(yùn)用模塊化和層次化思想設(shè)計(jì)系統(tǒng),以降低耦合性,提高內(nèi)聚性,控制系統(tǒng)復(fù)雜度;水平4-2:以一種有用和有成效的方式來(lái)定義一個(gè)系統(tǒng)的邊界,創(chuàng)建一個(gè)包括所有必要元素的系統(tǒng),能夠完成預(yù)期目標(biāo)。
在問(wèn)題解決的過(guò)程中,設(shè)計(jì)出解決方案并不是最終步驟,還需借助計(jì)算工具將既有方案加以實(shí)現(xiàn),創(chuàng)造出有個(gè)人意義和社會(huì)意義的作品。
水平1-1:基于既有設(shè)計(jì)方案,實(shí)現(xiàn)計(jì)算作品;水平1-2:根據(jù)具體的期望效果、功能要求或者需求描述,實(shí)現(xiàn)計(jì)算作品;水平2-1:根據(jù)個(gè)人興趣,創(chuàng)造計(jì)算作品;水平2-2:通過(guò)改編現(xiàn)有程序的某些部分,以開(kāi)發(fā)新的特性或添加更高級(jí)的功能;水平3-1:考慮現(xiàn)實(shí)需求,創(chuàng)造能解決具體問(wèn)題或者對(duì)他人有價(jià)值的計(jì)算作品;水平3-2:評(píng)估現(xiàn)有的功能模塊,并將它們納入自己的設(shè)計(jì)中,以開(kāi)發(fā)功能更加強(qiáng)大的作品;水平4-1:考慮多類(lèi)用戶的視角,使用系統(tǒng)的設(shè)計(jì)過(guò)程,創(chuàng)造出能解決社會(huì)性問(wèn)題的計(jì)算作品。
迭代是軟件領(lǐng)域的一種重要的項(xiàng)目開(kāi)發(fā)思想。先通過(guò)低成本的方式開(kāi)發(fā)出最小可行產(chǎn)品以驗(yàn)證想法和收集反饋,然后通過(guò)不斷迭代優(yōu)化的方式完善產(chǎn)品以適應(yīng)新的需求。
水平1-1:以小步實(shí)驗(yàn)、逐步添加功能的方式創(chuàng)作計(jì)算作品;水平2-1:發(fā)現(xiàn)計(jì)算作品中的不足,對(duì)其進(jìn)行迭代優(yōu)化,修復(fù)存在的問(wèn)題,完善其功能,優(yōu)化其性能以及提升其可靠性;水平3-1:結(jié)合團(tuán)隊(duì)成員和不同用戶的反饋,不斷迭代完善計(jì)算作品,以滿足用戶需求;水平4-1:對(duì)需求進(jìn)行分級(jí),優(yōu)先實(shí)現(xiàn)核心功能,并在此基礎(chǔ)上逐步迭代完善計(jì)算作品。
解決計(jì)算問(wèn)題以及設(shè)計(jì)和創(chuàng)作計(jì)算作品是一個(gè)復(fù)雜的過(guò)程,為了確保項(xiàng)目過(guò)程不會(huì)偏離目標(biāo),通常需要在具體執(zhí)行之前做出合理的計(jì)劃。
水平1-1:用圖示或者語(yǔ)言概述項(xiàng)目的開(kāi)發(fā)步驟;水平2-1:制訂計(jì)劃,明確項(xiàng)目的目標(biāo)和預(yù)期結(jié)果,清晰描述具體的開(kāi)發(fā)步驟;水平3-1:評(píng)估計(jì)劃的可行性,明確關(guān)鍵功能和需求,考慮時(shí)間和資源限制;水平4-1:基于迭代思想來(lái)制訂開(kāi)發(fā)計(jì)劃,管理執(zhí)行過(guò)程,根據(jù)實(shí)際情況修改計(jì)劃以適應(yīng)最終目標(biāo)。
作品分析是指從整體效果和實(shí)現(xiàn)機(jī)制等方面分析既有作品,或從外觀和交互、需求滿足程度和系統(tǒng)設(shè)計(jì)質(zhì)量等方面去評(píng)估計(jì)算作品。
水平1-1:解釋代碼片段如何工作,分析代碼片段或整個(gè)程序的運(yùn)行結(jié)果;水平2-1:從外觀界面和交互方式等方面評(píng)估計(jì)算作品;水平3-1:評(píng)估計(jì)算作品是否符合目標(biāo)用戶需求;水平4-1:將計(jì)算作品看作一個(gè)系統(tǒng),從模塊化和層次化等角度評(píng)估系統(tǒng)設(shè)計(jì)的質(zhì)量。
測(cè)試調(diào)試分為兩個(gè)方面:測(cè)試和調(diào)試。測(cè)試即通過(guò)設(shè)計(jì)測(cè)試用例,系統(tǒng)性地對(duì)計(jì)算作品進(jìn)行測(cè)試以發(fā)現(xiàn)其中的問(wèn)題;調(diào)試即運(yùn)用合適的策略定位并修復(fù)問(wèn)題。
水平1-1:通過(guò)比較實(shí)際效果與期望結(jié)果,識(shí)別出異常效果,并修復(fù)計(jì)算作品中的問(wèn)題;水平2-1:考慮計(jì)算作品中常見(jiàn)的潛在錯(cuò)誤,并設(shè)計(jì)測(cè)試用例來(lái)進(jìn)行測(cè)試;水平2-2:通過(guò)逐步運(yùn)行和分析程序,定位并修復(fù)計(jì)算作品中非直觀的邏輯問(wèn)題;水平3-1:通過(guò)復(fù)現(xiàn)問(wèn)題出現(xiàn)的條件和過(guò)程,定位并修復(fù)計(jì)算作品中的在特定情況下才會(huì)出現(xiàn)的問(wèn)題;水平4-1:根據(jù)出現(xiàn)問(wèn)題的具體情況,選擇合適的策略來(lái)定位和修復(fù)問(wèn)題。
編程不僅是一項(xiàng)個(gè)人的創(chuàng)造性活動(dòng),更是一種社會(huì)性的實(shí)踐。學(xué)生在社群環(huán)境中創(chuàng)造并分享計(jì)算作品是一種重要的社會(huì)化學(xué)習(xí)途徑。
水平1-1:以友好和尊重的方式評(píng)論他人的作品;水平2-1:為他人提供建設(shè)性的建議,表達(dá)具體,且能清晰地組織信息;水平3-1:以改善計(jì)算作品為目的,尋求多位同伴的反饋,并能區(qū)分意見(jiàn);水平4-1:以改善計(jì)算作品為目的,從多種環(huán)境或者渠道尋求不同視角的反饋建議。
計(jì)算思維實(shí)踐學(xué)習(xí)進(jìn)階框架是培養(yǎng)計(jì)算思維的目標(biāo)體系,它可用于課程大綱規(guī)劃和表現(xiàn)性任務(wù)設(shè)計(jì)。在課程大綱規(guī)劃時(shí),設(shè)計(jì)者能夠根據(jù)學(xué)習(xí)內(nèi)容的特點(diǎn)規(guī)劃各單元的計(jì)算思維實(shí)踐能力目標(biāo)。圖2展示了某個(gè)四單元的計(jì)算思維實(shí)踐地圖,它使得教學(xué)設(shè)計(jì)和教學(xué)評(píng)價(jià)都有了清晰的思維目標(biāo)方向。

圖2
在設(shè)計(jì)表現(xiàn)性任務(wù)時(shí),設(shè)計(jì)者能夠以本單元的計(jì)算思維實(shí)踐目標(biāo)為主要依據(jù)。例如,圍繞第三單元的思維目標(biāo)設(shè)計(jì)的表現(xiàn)性任務(wù)是:請(qǐng)你為圖3所示的掃地機(jī)器人設(shè)計(jì)算法,確保它能夠自動(dòng)清理地板上的所有垃圾。圖4展示了一種可能的算法和基于某圖形化編程語(yǔ)言編寫(xiě)的算法實(shí)現(xiàn)程序。

圖3

圖4
本研究在計(jì)算思維實(shí)踐框架的基礎(chǔ)上進(jìn)一步澄清了每個(gè)計(jì)算思維實(shí)踐的內(nèi)涵,并為它們?cè)O(shè)計(jì)了包含4個(gè)水平的學(xué)習(xí)進(jìn)階。但是目前該學(xué)習(xí)進(jìn)階框架還只是一個(gè)基于理論假設(shè)的學(xué)習(xí)進(jìn)階,未來(lái)筆者將基于該進(jìn)階框架研發(fā)計(jì)算思維評(píng)測(cè)工具并通過(guò)實(shí)證研究來(lái)驗(yàn)證其水平區(qū)分度和進(jìn)階合理性,持續(xù)修訂框架,最終使其與學(xué)習(xí)者客觀的計(jì)算思維進(jìn)階過(guò)程達(dá)成一致。