


摘要:從計算和思維的內在關系入手,介紹計算思維的基本概念。在此基礎上,闡述計算思維和計算機科學的緊密聯系以及目前計算機學科教學中存在的幾點問題,據此提出以實踐案例、工程項目和多學科融合為手段的層進式計算機課程教學方法。
關鍵詞:計算思維;實踐案例;工程項目;多學科融合
1 背景
計算思維是一個抽象的理論概念。所謂思維是指人類大腦認識世界的活動,人們在學習、理解和掌握新鮮事物過程中,常常是通過搜集各種有用信息,然后對其進行分析、整理、加工和改造,從而形成自己特有的思維方法和理解手段,以認識事物的本質和規律。在思維過程中,數學即計算起著非常重要的作用,它是實現從理論思維到實驗思維的重要方法。1975年圖靈獎共同獲得者Herbert Simon和Allen Newell提出思維就是計算認知,就是計算的思想。由此可見,計算和思維是密不可分的。理論思維、計算思維和實驗思維統稱為3大科學思維。
計算思維主要是由美國卡內基·梅隆大學的周以真教授提出的,她認為計算思維就是運用計算機科學的基礎概念進行問題求解、系統設計以及人類行為理解等涵蓋計算機科學之廣度的一系列思維活動腳。計算思維的本質是抽象和自動化,計算思維中的抽象最終要求能夠機械地一步步自動執行。那么,在整個計算思維活動中,誰負責抽象?誰又進行自動化呢?這就涉及計算思維的2個對象主體,即人和計算機。在解決實際問題時,計算思維對象主體之一的人對問題進行抽象和處理,將實際需求轉化為問題空間的求解模型,再用編程語言加以實現,最后由計算機按照人的指令自動執行和求解程序。
通俗地講,計算思維就是通過人的思維進行計算,即人通過特定的思維活動使用計算機解決實際問題。計算機在解題過程中充當媒介的作用,它是人和機器相結合的產物。當然,人也可以取代計算機實現計算,即計算思維是可以完全脫離機器的,但是在某些方面,計算機的性能要優于人,如機器執行指令的速度、精確度和可靠性等方面遠遠高于人類;而人的思維能力則是計算機無法模擬的。計算機賦予人強大的計算能力,而人給予計算機激情。因此,電子計算機的創造給計算思維帶來深遠的影響。計算機實現了人和機器、思維和計算的完美結合,同時也使得人們有勇氣實現“只有想不到,沒有做不到”的境界。
2 計算思維與計算機科學
計算思維與計算機科學有著密不可分的聯系,計算思維促進計算機科學的發展和創新,計算機科學推動計算思維的研究和應用。
隨著以計算機科學為基礎的信息技術迅猛發展,計算思維對各個學科的影響尤其是對計算機學科的作用日益凸顯。計算思維的本質是抽象和自動化,核心是基于計算模型和約束的問題求解;而計算機科學恰恰是利用抽象思維建立求解模型并將實際問題轉化為符號語言,再利用計算機自動執行的。其中,抽象是計算機學科的最基本原理,而自動計算則是計算機學科的最顯著特征。計算思維反映的是計算機學科最本質的特征和最核心的方法。計算思維雖不是計算機科學的特有產物,甚至它的出現要先于計算機科學,但是計算機的發明卻給計算思維的研究和發展帶來根本性變化。計算機在數學計算和信息處理中無可比擬的優勢,使得原本只有在理論層面可以構造的事物變成了現實世界可以實現的實物,拓展了人類認知世界和解決問題的能力和范圍,推進了計算思維在形式、內容和表述等方面的探索。
因此,計算機學科是最能反映計算思維能力的學科,將計算思維引入計算機學科教學也是十分有必要的。計算思維能力是計算機專業人才所應具備的最基本和最重要的能力之一。
3 計算機學科教學現狀
目前,計算機學科教學面臨一些問題,主要體現在以下幾個方面。
1)課程設置無優勢。很多工科院系都開設了與計算機相關的各門課程,制定的課程體系比計算機專業要求還高。在毫無課程優勢的條件下,計算機專業學生又缺乏其他學科知識背景,解決特定領域問題時存在溝通和開發障礙。單就從利用計算機解決實際問題的層面看,計算機專業學生與非計算機專業學生相比無明顯優勢。
2)理論和實踐銜接不緊密。計算機學科具有明顯的理工科特征,是一門集科學、工程和應用于一體的學科。在計算機學科中,很多課程都設置有理論教學和配套實驗2個環節,但實際教學中存在理論知識和實踐內容銜接不緊密,實驗案例更新較慢,實驗內容的設計難易不均或偏離理論教學等問題,導致學生很難通過實踐課程的學習深入理解、掌握和驗證所學理論。
3)重教輕育。目前,很多教師非常重視課程內容的更新、教學方法的改革和授課技能的提高,卻時常忽略學生思維和能力的培養。教師只關注如何將知識以成品形式灌輸給學生和檢驗學生對知識“復制”程度等“教”的培養,而缺乏對學生主動獲取知識、重新構建知識、再次利用知識等“育”的延伸。現有的教學過程是間斷的,沒有延續性。在授課學時和課程容量等客觀因素限制下,教師傳授給學生的是經過抽象、加工和簡化后的現成模型和理想化系統,學生所學的學科知識和現實世界的實際應用基本上是脫節的。即便理論知識掌握的再高深和實踐技能鍛煉的再嫻熟,學生依然是紙上談兵,無法獨立解決真實世界中的各種問題。
4 注重計算思維培養
從上述分析不難看出,教師在計算機學科中加強學生計算思維的培養是基本的,也是必須的要求。那么,如何將計算思維融入計算機學科中,實現思維與教學的無縫連接呢?我們主要從以下幾個方面實現。
1)利用實踐案例“教”計算思維。
有過計算機學科教學經歷的教師都有這樣的體會,教給學生一門知識或技能相對容易,但教會學生某種能力或思維卻很難,原因在于計算機涉及的很多內容都具有非物理特征,如程序執行、系統調用和內存分配等活動都是透明的,無法被感知。學習者不能直接獲取感性認識,更難建立起理性認識并指導實踐活動。另外,抽象是使用計算機解決實際問題的第一步,但它也是無形之物,是人腦的思考過程。我們如何找到一個有效載體,將這些“只可意會”的模型和理論賦予其中,讓學生更好且更容易地體會計算機系統及其工作原理呢?答案是寓抽象于實踐。實踐是將思維形象化和具體化的重要手段。在授課過程中,教師應注重理論知識和實踐能力的結合,設計各種典型案例并著重講解如何將實際問題轉化成形式化描述的思考過程,加強學生抽象思維和邏輯思維的培養。這就是目前常用的案例化教學模式,而在融入計算思維的前提下,它又要滿足更高要求。
①案例既要源于現實世界,又不能過于復雜和難以理解。教學案例可分為3個層次:底層為現實世界中的事物模型;中層為信息世界中的抽象模型;頂層為機器世界中的數據模型。以計算思維為特征的教學案例的3個層次如圖1所示。
與現存的基于中層或頂層的案例設計不同,以計算思維為特征的案例教學要以現實世界中的具體事物為研究對象,旨在讓學生能夠身臨其境地理解“計算機科學家”將事物模型一步步轉化為計算機所能理解的符號模型的求解過程,從而減少學生只會解答理想模型而不能求解現實問題的現象。另外,案例設計要難易適中和繁簡得當,要對實際問題進行裁剪和提煉。教師應結合相關理論內容,模擬“精化后”的、更理性、較直接的知識發現過程。學生則通過循序漸進的思維鍛煉,逐步掌握高度的抽象思維和嚴密的邏輯思維,努力構建計算機模型的概念。
②案例既要體現人的思考過程,又要有計算機的行為。以計算思維為特征的案例教學要能體現人和計算機協同解決問題的全過程,即演示人如何從現實世界抽象模型轉而到信息世界,再如何從信息世界描述數據轉而到機器世界,計算機如何在機器世界執行程序并反饋結果的各個階段。
教師要讓學生理解人和計算機之間的辯證關系,即人指揮計算機工作,計算機約束人的操作;更要進一步讓學生體會人和計算機在高效處理、性能優化和便捷使用等方面的互制作用,即人的思維越深入,模型構建越合理,計算機運行效率越高,系統可靠性越強,而計算機性能越高、運算速度越快,人需顧忌的因素越小,思維受限越低。學生在探究型教學模式的培養下,從實際案例中體會人和計算機在問題求解過程中的不同角色和任務分工,逐漸將計算思維的思想和方法融入一般事務的處理中,形成自己的經驗和思路,構成以教促學的回路。計算思維模式下的教學如圖2所示。
2)利用工程項目“學”計算思維。
教學的最終目的是學以致用。作為教育者,我們不希望培養出來的只是會解決書本問題的“讀書機器”,而期盼能培養出像計算機科學家那樣思考問題的優秀人才。對于產生的任何思想和建立的模型,我們最終都要將其運用到實際項目中加以驗證和檢驗。因此,當學生具備一定的理論基礎和對客觀事物的抽象能力,學會如何對具體問題建模后,教師最好能以工程項目的實現為最終考核目標。
項目式培養模式的引入既能最大程度地發揮學生的知識和技能,又能極力縮短理論和現實之間的距離,是打通課堂教學和實際應用的最好手段。它實現了理論和實踐、思維和能力的無縫連接。教師在將工程項目引入課程教學時,應注意以下幾點。
①工程項目既要緊扣理論知識,又要高于書本中的知識內容。教師在以工程項目為主要教學手段的學生計算思維能力培養中,以工程項目的選取作為最關鍵的環節。工程項目的選取直接影響學生是否能成功邁出從現實世界進入信息世界的第一步。工程項目不同于普通案例,它源于現實世界的復雜系統并且具有實際意義,在難度、深度和廣度上均高于普通案例。學生在學習過程中會遇到較大阻力。教師要在項目內容的選取、難易程度的設置、書本內容和課外知識的結合等各方面下工夫和花精力,可結合理論內容對所選項目進行適當刪減和修改以適應教學實情,添加一定的注釋和題解以幫助學生理解,最好還能根據學生的不同水平制訂不同的實現目標。
②工程項目應盡量涵蓋多個知識點。工程項目的實現是一個相對較長的過程,若教師為每個知識點都配置一個與之對應的工程項目,既不現實又無意義,但要想僅依賴一個實際項目講解所有知識點更不可能。因此,教師需要根據課程大綱和學時要求采取分模ADbxH7EtCFVBOOSnf5UbYQ==塊教學的方法,以模塊形式組織知識點,以模塊內容構建項目。每個項目應包含若干相關知識點且項目容量要適度,既不能大而全,又不要小而碎。
3)利用多學科融合“促”計算思維。
計算思維的培養不是計算機單一學科或信息技術某幾個學科的要求,而是整個大學通識教育的重要組成部分。思維可以不受學科限制,不同專業背景的學生在思考問題的角度、解決問題的方法、處理問題的手段等方面具有共通性。計算機學科的普及和發展使得自身與各學科的聯系越來越緊密,以計算機學科為中心的多學科交叉融合的網狀研究形態正在逐漸形成。以計算機學科為中心的多學科交叉融合如圖3所示。
為了讓學生尤其是非計算機專業的學生更好地理解和掌握計算機的原理和本質,更好地應用計算機技術解決本學科實際問題,教師在計算機課程教學中應以計算機的核心概念、重要原理和先進技術為依托,以計算思維的解決思路為主線,以多學科融合的典型案例為延伸,打破各學科之間的壁壘,實現思維的遷移。
5 結語
計算思維在計算機課程教學中具有舉足輕重的地位,起著引領和導向作用。俗話說“習慣決定成敗”,良好思維習慣的培養和正確思維方式的建立對學生掌握各種知識都起到事半功倍的作用。因此,我們有必要從計算思維的角度向學生闡述計算機學科思想與方法論,使學生一開始就對計算機課程的學習有一個比較準確的定位,對計算機科學的內涵有所了解,進而逐漸培養良好的學習態度,掌握高效的學習方法并學會解決問題。
(編輯:宋文婷)