【摘 要】隨著傳統(tǒng)教育模式中種種弊端的顯現(xiàn),我們意識(shí)到我們的思維不僅被固化了,而且逐漸失去對(duì)事物和現(xiàn)象的本質(zhì)進(jìn)行自主探索的能力。周以真教授提出的計(jì)算思維的概念無疑是為現(xiàn)今教育的改進(jìn)提供了一個(gè)契機(jī)。本文著重探討對(duì)計(jì)算思維定義的理解,并陳述了筆者對(duì)計(jì)算思維在信息技術(shù)教學(xué)中應(yīng)用的一些觀點(diǎn)。
【關(guān)鍵詞】計(jì)算思維 信息技術(shù)教育 思維外顯化教學(xué)
【中圖分類號(hào)】TP301 【文獻(xiàn)標(biāo)識(shí)碼】A 【文章編號(hào)】1674-4810(2015)09-0187-02
一 研究背景
在美國的CSTA K-12 Computer Science Standards中已經(jīng)明確提出將培養(yǎng)學(xué)生的計(jì)算思維作為課程標(biāo)準(zhǔn)的一部分(如下所示),但我國對(duì)計(jì)算思維的培養(yǎng)還處于探索階段,也沒有形成科學(xué)的體系。
4.Organization of the Learning Outcomes Levels and Strands……………………………………………………………7
4.1 Levels …………………………………………………7
4.2 Strands…………………………………………………9
4.2.1 Computational Thinking……………………………9
由于傳統(tǒng)教育模式的長期使用,人們對(duì)于知識(shí)的學(xué)習(xí)逐漸養(yǎng)成了“被動(dòng)接受”和“強(qiáng)迫記憶”的習(xí)慣,我們逐漸變得很少進(jìn)行獨(dú)立思考,思維方式逐漸被禁錮,逐漸不具備自覺自動(dòng)思考的能力,逐漸失去對(duì)事物和現(xiàn)象的本質(zhì)進(jìn)行探索的能力,這導(dǎo)致在整個(gè)社會(huì)中創(chuàng)新型人才的嚴(yán)重缺失,甚至導(dǎo)致中國在拓寬人類知識(shí)范圍方面的貢獻(xiàn)不突出。因此,我們需要讓孩子們學(xué)會(huì)獨(dú)立思考,不僅要學(xué)會(huì)解決學(xué)習(xí)和生活中的各種問題,也能學(xué)會(huì)科學(xué)地運(yùn)用不同的思維方法研究現(xiàn)象、探索本質(zhì),那么究竟怎樣才能培養(yǎng)孩子們的這項(xiàng)能力呢?我認(rèn)為這是有法可循的,培養(yǎng)孩子們的計(jì)算思維能力就是其中一種方法。
二 計(jì)算思維
1.計(jì)算思維的定義
美國卡內(nèi)基·梅隆大學(xué)計(jì)算機(jī)系主任周以真教授認(rèn)為計(jì)算思維是每個(gè)人都應(yīng)該掌握的一項(xiàng)基本技能,并且給出了一個(gè)定義:“計(jì)算思維是運(yùn)用計(jì)算機(jī)科學(xué)的基礎(chǔ)概念進(jìn)行問題求解、系統(tǒng)設(shè)計(jì)以及人類行為理解的、涵蓋了計(jì)算機(jī)科學(xué)之廣度的一系列思維活動(dòng)?!睘楸阌诶斫猓芙淌谠诮o出計(jì)算思維總的定義的基礎(chǔ)上,又對(duì)計(jì)算思維作了更詳細(xì)的表述。
2.計(jì)算思維的理解
第一,同邏輯思維、形象思維、靈感思維等思維方法一樣,計(jì)算思維也是一種思維方法,既然它是一種思維方法,那么計(jì)算思維就是每個(gè)人、每種學(xué)科在處理任何事情上都可以使用的思路和方法,并且,每個(gè)人都擁有一定程度的計(jì)算思維能力,只是計(jì)算思維在計(jì)算機(jī)專業(yè)從業(yè)人員和計(jì)算機(jī)科學(xué)家的身上表現(xiàn)得更為突出、優(yōu)異和集中而已。一種思維能力從無到有、從弱到強(qiáng)的過程,實(shí)際上就是一個(gè)人不斷學(xué)習(xí)和提升能力的過程。
第二,計(jì)算思維解決問題的過程。針對(duì)具體問題,認(rèn)識(shí)計(jì)算思維解決問題的過程:筆者認(rèn)為計(jì)算思維主要使用“自頂向下,逐步求精”的思維方式,這是一種在計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)領(lǐng)域中普遍使用的結(jié)構(gòu)化設(shè)計(jì)方法,比如,開發(fā)軟件,編輯程序,創(chuàng)作多媒體作品,規(guī)劃和設(shè)計(jì)計(jì)算機(jī)網(wǎng)絡(luò)等,都會(huì)用到該方法。
步驟如下:
建模:建模是與仿真緊密結(jié)合的一個(gè)概念,建模就是建立模型,就是為了理解事物而對(duì)事物做出的一種抽象,是對(duì)事物的一種無歧義的書面描述。
這里所提到的建模是指經(jīng)過對(duì)實(shí)際問題的分析,找到實(shí)際問題所涉及的學(xué)科,然后結(jié)合相應(yīng)的學(xué)科知識(shí)建立模型以解決問題,若能夠建立,進(jìn)入步驟2,若不能夠建立,則需要根據(jù)自己的知識(shí)和經(jīng)驗(yàn)自定義式地建構(gòu)合適的模型,然后進(jìn)入步驟2。
我們可以在實(shí)踐過程中不斷檢測模型是否正確,不斷完善模型,重復(fù)本步驟,直到建構(gòu)成合適的模型,即根據(jù)已知的信息、條件、需求以及各種知識(shí)、經(jīng)驗(yàn)等內(nèi)容,分析問題各個(gè)因素的結(jié)構(gòu)和它們之間的關(guān)系,用來進(jìn)一步確定解決問題的思路、方法、方式及步驟。
分解問題:按照模型,使用基于關(guān)注點(diǎn)分離的方法將問題分解成大的、中的、小的、更小的、超小的……直到能用很直接的方法解決,分解問題的時(shí)候需要注意:這個(gè)過程是可逆的,即分解后的問題仍然可以重新合成一個(gè)整體。
這里提到的基于關(guān)注點(diǎn)分離的方法是計(jì)算科學(xué)和軟件工程專業(yè)領(lǐng)域人員在長期實(shí)踐中確立的一項(xiàng)方法。
關(guān)注點(diǎn)分離在業(yè)界更多的時(shí)候以“分而治之”(Divide and Conquer)的面目出現(xiàn),即將整體看成為部分的組合體并對(duì)各部分分別加以處理。其大體思路是,先將復(fù)雜問題做合理的分解,再分別仔細(xì)研究問題的不同側(cè)面(關(guān)注點(diǎn)),最后綜合各方面的結(jié)果,合成整體的解決方案。
分解后的問題往往是互相聯(lián)系,互為表里,層層緊扣,呈現(xiàn)的結(jié)構(gòu)由分解后的問題之間的關(guān)系決定。簡單的問題分解后,呈現(xiàn)為線性結(jié)構(gòu)或樹形結(jié)構(gòu),復(fù)雜的問題分解后,呈現(xiàn)為網(wǎng)狀結(jié)構(gòu)。
第三,根據(jù)分解后的問題,可以重復(fù)步驟1和步驟2,直到完成問題的分解環(huán)節(jié)。
第四,遞歸解決問題:遞歸就是將分解后的問題,從最小最容易解決的子問題著手,利用所掌握的知識(shí)、技能和各種方法將其解決;以此類推,再將次容易的子問題解決;最后,通過解決子問題達(dá)到解決整個(gè)問題的目的。
第五,在解決問題的過程中可以靈活地使用不同的策略:
(1)預(yù)設(shè)可能出現(xiàn)的最壞的答案或結(jié)果,采用數(shù)據(jù)備份的方式處理問題。例如,處理電子文檔時(shí),可以先對(duì)其副本進(jìn)行嘗試性的處理,若處理成功,則可以作為最終的處理結(jié)果。(2)在問題的方向不明確時(shí),采用啟發(fā)式推理的思維方法尋求解答。例如,學(xué)生掌握了如何在Pascal語言環(huán)境中編寫程序代碼,那么將環(huán)境變?yōu)镃語言環(huán)境,學(xué)生推理認(rèn)為它們的語法規(guī)則類似,可以嘗試編寫程序代碼。(3)在解決問題出現(xiàn)瓶頸的時(shí)候,權(quán)衡利弊,采用折中的方法處理問題。例如,班主任不同意本班學(xué)生參加信息學(xué)奧賽而該生非常想?yún)⒓訒r(shí),該生提出在自習(xí)課下課后輔導(dǎo)一小時(shí)的建議。
第六,得到結(jié)果后,對(duì)結(jié)果進(jìn)行評(píng)價(jià),檢測結(jié)果是否符合標(biāo)準(zhǔn)。若發(fā)現(xiàn)結(jié)果還可以得到改進(jìn),那么可以回溯到建模的步驟、解決問題的步驟或其他步驟對(duì)問題進(jìn)行“逐步求精”,使結(jié)果更優(yōu)化。
三 計(jì)算思維在信息技術(shù)教學(xué)中的應(yīng)用
筆者在信息技術(shù)教學(xué)中培養(yǎng)學(xué)生的計(jì)算思維能力較為簡便可行、普及性強(qiáng)的方法是思維外顯化教學(xué),主要內(nèi)容有:(1)先做后學(xué)。學(xué)生通過學(xué)習(xí)掌握了一定的技能,但是當(dāng)學(xué)生在遇到實(shí)際問題時(shí),不知道或并不明確使用哪一項(xiàng)技能解決問題,也不知道或不明確選擇哪一種技能使問題解決起來更快捷、方便。為了解決這一問題,筆者認(rèn)為可以進(jìn)行先做后學(xué)的嘗試:在教師講授內(nèi)容之前,讓學(xué)生利用已有的知識(shí)技能,按照自己的思維方式去解決問題,之后,再由教師示范講解。(2)思維外顯。教師在進(jìn)行示范講解的時(shí)候,要將自己解決問題的思維過程利用語言表達(dá)出來,同時(shí)也要求學(xué)生在進(jìn)行實(shí)踐時(shí)將自己的思考過程表述出來,一邊實(shí)踐一邊思考一邊表述。(3)重新建構(gòu)。當(dāng)學(xué)生發(fā)現(xiàn)自己現(xiàn)有的認(rèn)知結(jié)構(gòu)不能有效地解決實(shí)際問題時(shí),通過對(duì)比他人與自己的思維過程,通過與周圍環(huán)境、他人的交互,掌握新的知識(shí)技能、思維方法,自身的認(rèn)知結(jié)構(gòu)就會(huì)得到發(fā)展。(4)逐步應(yīng)用,建立模型。由于課堂教學(xué)時(shí)間有限,在實(shí)際生活中真正遇到問題需要解決的時(shí)候,學(xué)生需要逐步地應(yīng)用自己的知識(shí)技能、思維方法,通過反復(fù)的實(shí)踐與積累,完善自己的認(rèn)知結(jié)構(gòu),建立解決問題的思維模型。
思維外顯化教學(xué)有助于激勵(lì)學(xué)生思考問題,提高其計(jì)算思維能力,適合小組合作學(xué)習(xí),也適合個(gè)人自主學(xué)習(xí)。
參考文獻(xiàn)
[1]何明昕.關(guān)注點(diǎn)分離在計(jì)算思維和軟件工程中的方法論意義[J].計(jì)算機(jī)科學(xué),2009(4)
〔責(zé)任編輯:林勁〕