劉 濤,周鳴爭
(安徽工程大學 計算機與信息學院,安徽 蕪湖 241000)
隨著信息產(chǎn)業(yè)的飛速發(fā)展,信息技術及其應用不斷普及,不僅各IT企業(yè)需求大量的IT人才,各行各業(yè)都需要IT人才,而且人類學習、生活以及工作的方式也隨著信息技術的發(fā)展發(fā)生了革命性的變化,計算機從高科技產(chǎn)品逐漸演變?yōu)槿藗儽仨氄莆帐褂玫幕竟ぞ?。在此背景下?006年,Carnegie Mellon大學的Jeannette M.Wing教授提出了計算思維(Computational thinking)的概念,并概括出計算思維是一種本質(zhì)的、所有人都必須具備的思維方式,就像識字、做算術一樣,并且提出要在2050年以前,讓地球上每一個公民都具備計算思維能力。Wing倡導“一個人可以主修計算機科學并且干什么都行(類似我們過去的一句話:學會數(shù)理化,走遍天下都不怕)。一個人主修英語或者數(shù)學以后,就可以從事各種各樣的職業(yè)。計算機科學也一樣,一個人可以主修計算機科學,接著從事醫(yī)學、法律、商業(yè)、政治以及任何類型的科學和工程,甚至藝術工作”[1]。雖然她的計算思維的觀點帶有一定的局限性,不是經(jīng)過深入科學論證得到的結果,但可見其重要性。
計算思維的概念一經(jīng)提出,立即引起了學術界及教育界的極大關注,國際和國內(nèi)召開了一系列的會議,也啟動了許多研究項目。2007年,微軟研究院資助美國卡內(nèi)基·梅隆大學建立了計算思維中心,力求尋找計算機科學與其他領域交叉研究的新方法。2008年,ACM公布的《CC2001計算機科學教學指導草案》明確提出將計算思維作為計算機科學教學的重要組成部分[2]。2008年,美國國家計算機科學技術教師協(xié)會(CSTA)在網(wǎng)上發(fā)布了得到美國微軟公司支持的《計算思維:一個所有課堂問題解決的工具》,文獻[3]指出一個人若不具備計算思維的能力,將在從業(yè)競爭中處于劣勢,一個國家若不使廣大教育者得到計算思維能力的培養(yǎng),將在激烈的國際環(huán)境中不可能引領而處于落后地位。計算思維,不僅是計算機及相關領域內(nèi)專業(yè)人員應該具備的能力,而且也是所有受教育者應該具備的能力。國內(nèi)外一些教育者就如何在實際教學過程中培養(yǎng)學生的計算思維作出了一些重要的探索[4-8]。
計算思維定義為:運用計算機科學的基礎概念(即思想和方法)去求解問題,設計系統(tǒng)和理解人類行為。它的特征可描述為:是概念化而不是程序化;是根本的而不是刻板的技能;是人的而不是計算機的思維方式;是數(shù)學和工程思維的互補與融合;是思想而不是人造物;是面向所有的人、所有的地方。計算思維的本質(zhì)是抽象和自動化。抽象體現(xiàn)在完全使用符號系統(tǒng)甚至形式化語言;自動化體現(xiàn)在算法實現(xiàn)最終是機械地按步驟自動執(zhí)行。計算思維是一種形式規(guī)整的、問題求解的和人機共存的思維。典型的計算思維包括一系列廣泛的計算機科學的思維方法:遞歸、抽象和分解、保護、冗余、容錯、糾錯和恢復,利用啟發(fā)式推理來尋求解答,在不確定情況下的規(guī)劃、學習和調(diào)度等。
隨著計算機科學領域研究成果的不斷豐富和完善,計算機技術已經(jīng)廣泛地應用于多個領域,如計算物理、普適計算、計算金融學、商業(yè)智能、計算生物學、計算醫(yī)學等,并且與這些學科之間的交叉越來越深入。計算思維在海量信息處理分析、復雜裝置與系統(tǒng)設計、大型工程組織、自然現(xiàn)象與人類社會行為模擬等方面具有重要的意義和作用。特別是隨著云計算、大數(shù)據(jù)以及物聯(lián)網(wǎng)的發(fā)展與廣泛應用,各領域更需要具有計算機應用能力與多學科集成創(chuàng)新的IT綜合型人才。因為很多交叉學科的研究具有較強的工程性質(zhì),僅僅依靠學術教育背景的傳統(tǒng)教學研究型的計算機類人才是行不通的,所以必須培養(yǎng)能夠快速地將計算機技術應用于某一領域,解決該領域具體計算問題的IT應用型人才。這種需求導致高校培養(yǎng)的IT應用型人才不僅應該具有計算機學科基礎、扎實的編程和設計能力,同時應該具有擅長抽象和分解問題的計算思維能力。全國高等學校計算機教育研究會理事長袁開榜指出:21世紀,人們應該具有計算思維能力[9]。著名學者何欽銘,陸漢權,馮博琴解讀《九校聯(lián)盟(C9)計算機基礎教學發(fā)展戰(zhàn)略聯(lián)合聲明》時提出計算機基礎教學的核心任務是計算思維能力的培養(yǎng)[10],要在計算機基礎教育中面向所有大學生培養(yǎng)其計算思維。陳國良教授認為,當計算思維真正融入人類活動的整體時,它作為一個問題解決的有效工具,人人都應當掌握,處處都會被使用[11]。李廉教授提出了計算思維是構成現(xiàn)代科學大廈的最基本的思維模式之一,并指出基于計算思維培養(yǎng)的新的教學體系建設是計算機基礎課程教育今后改革的取向和挑戰(zhàn)[12]。文獻[13]認為計算思維是三大科學思維之一。一些著名的學者對計算思維的培養(yǎng)提出了許多建議,認為應該從根本上改變現(xiàn)行的計算機教育模式,要將計算思維的培養(yǎng)納入到專業(yè)人才培養(yǎng)方案中[2]。為了使計算思維得以推廣,最終成為IT人才的一種思維習慣,有必要使學生在4年的大學學習生活中甚至更長的時間內(nèi),在計算機與信息類學科的每一個重要知識點上持續(xù)不斷地加深對計算思維的教育、認識和領悟。
遵循教育規(guī)律和認識規(guī)律,將三大科學思維之一的計算思維有機地融入IT人才培養(yǎng)方案中,將有利于培養(yǎng)更具競爭力的應用型人才。
建立由應用能力、創(chuàng)新能力、計算思維等多維屬性組成的人才能力屬性空間模型。對IT人才應該具備的各種屬性進行分析、歸納與抽象,建立屬性之間的結構關系(依賴與約束關系),為IT專業(yè)人才培養(yǎng)方案的修定奠定基礎。
IT領域的應用型人才除了具備良好的協(xié)作、交流和溝通能力外,還應具備以下條件[14]:善于發(fā)現(xiàn)問題,具有敏銳的觀察力;以解決實際問題為目標的知識應用能力;以實際應用為導向的知識轉化能力。另外,還要培養(yǎng)大學生的創(chuàng)新意識乃至創(chuàng)新能力,即要對學生進行創(chuàng)新精神、創(chuàng)新能力、創(chuàng)新素質(zhì)的培養(yǎng),引導學生在自主學習的基礎上善于思考、勇于探索的精神,而不墨守成規(guī)。同時,隨著信息化的全面深入,無處不在、無事不用的計算使得計算思維成為人們認識和解決問題的重要基本能力之一,它蘊含著一套解決一般問題的方法與技術,促進應用型人才的培養(yǎng)。
進行廣泛的需求調(diào)研,對國內(nèi)外高校IT人才教育情況進行跟蹤比較研究,確定應用型人才的能力結構,確定高校IT應用型人才的培養(yǎng)規(guī)格,圍繞信息技術的應用與集成制定專業(yè)的教學計劃及培養(yǎng)方案。在已有計算機與信息類應用型人才培養(yǎng)方案的基礎上進行深化,研究融合了計算思維、創(chuàng)新及應用等能力的人才培養(yǎng)目標。
研究實現(xiàn)上述培養(yǎng)目標的課程內(nèi)容體系,歸納計算思維的特征。研究計算思維的基本組成,以及如何在計算機課程中講授這些基本的組成部分。重點改革與梳理基礎課程和專業(yè)基礎課程,如大學計算機基礎、程序設計、數(shù)據(jù)結構、計算機組成與系統(tǒng)結構、編譯原理、算法設計與分析、操作系統(tǒng)、計算機網(wǎng)絡以及軟件工程等的教學內(nèi)容,支持計算思維培養(yǎng),建立融合計算思維的應用型人才培養(yǎng)的教學內(nèi)容體系。
在原有應用型人才實踐教學體系的基礎上,研究融入計算思維及創(chuàng)新能力培養(yǎng)的實踐教學體系。制定具體實驗課程的教學大綱及內(nèi)容,將假期社會實踐與應用型人才培養(yǎng)結合起來,在實踐中強化計算思維的訓練。嘗試在程序設計、算法分析與設計、軟件開發(fā)類課程中以上機實驗為重點的計算思維教學模式,增強實驗內(nèi)容的趣味性和綜合性,提高學生的學習興趣,培養(yǎng)學生創(chuàng)新思維。通過建設實踐教學平臺,以計算思維培養(yǎng)為基礎,改革與梳理已有實驗教學內(nèi)容,并結合工程實踐、競賽、大學生科研項目和學生興趣小組活動等構建計算思維與應用能力融合的實踐教學體系。
通過教學方法與模式的改革促進計算思維的培養(yǎng)。美國心理學和教育學家Robert J.Sternberg指出:思維教學的核心理念是培養(yǎng)聰明的學習者,教師不僅要教會學生如何解決問題,也要教會他們發(fā)現(xiàn)值得解決的問題。教師要為學生提供足夠的思維空間,設法激勵和引導學生自主學習,發(fā)現(xiàn)問題所在繼而解決問題。因此要改革目前的教學方法與教學模式,將計算思維訓練融合在教學的各個環(huán)節(jié)當中。
積極與IT企業(yè)公司合作,建立實習實訓基地。由企業(yè)或公司搭建一座連接學生、教師和社會的橋梁,企業(yè)為高校提供社會需求廣泛的技術課程,協(xié)助高校實現(xiàn)信息技術課程的教學改革。按照“夯實基礎、培養(yǎng)能力、提高素質(zhì)、發(fā)展創(chuàng)新”的培養(yǎng)思路,在堅實的文化素質(zhì)教育基礎上加強業(yè)務素質(zhì)教育、提高身心素質(zhì)教育、開展創(chuàng)新素質(zhì)教育。通過學校教師和企業(yè)工程師的共同努力,使學生在實習項目中充分鍛煉團隊協(xié)助精神,抵抗外界的干擾與壓力的能力,交流與溝通能力,社會與工作責任感以及創(chuàng)新精神,幫助學生在實踐中掌握實用IT技能,利用計算思維思想解決實踐中遇到的問題,為將來就業(yè)奠定良好基礎,同時也為企業(yè)積累大量訓練有素的人力資源[15]。
創(chuàng)新意識培養(yǎng)的是一個長期的過程,而且創(chuàng)新能力僅僅依靠課堂教學是很難培養(yǎng)的,必需要在課外開展豐富多彩的科技與競賽活動。一個有效的做法是成立信息技術協(xié)會,由協(xié)會再負責成立與管理多個科技興趣小組,如機器人興趣小組、程序設計興趣小組、網(wǎng)站與數(shù)據(jù)庫設計小組、計算機維護興趣小組等。教師按自己的特長加入興趣小組,學生從大學一年級或大學二年級開始按自己的興趣參加某一個或兩個小組。小組活動以學生為主體、以競賽為動力。小組收集組內(nèi)成員的科研興趣課題,在師生共同參與下,討論課題的可行性,對于可行的課題將深入開展下去,實行組內(nèi)傳幫帶,培養(yǎng)學生創(chuàng)新意識。學生會積極組織學生參加國家級、省級和校級各項大賽,提高學生的自主學習與強化學習能力。學院每年組織由教師命題的學生科研立項,讓學生參加教師的科研活動。通過科研活動,掌握科研的一般過程,了解學科前沿知識與技術,培養(yǎng)學生邏輯思維能力,促進創(chuàng)新能力的培養(yǎng)。成立由學生管理的創(chuàng)新實驗室為學生創(chuàng)新活動提供實驗支持。不論是學生自主選題還是教師命題的科研創(chuàng)新活動,其研究與實現(xiàn)方法都離不開計算思維的支持,同時創(chuàng)新活動又加強了對計算思維的訓練。因此創(chuàng)新能力與計算思維的培養(yǎng)相輔相成,相互促進。
要培養(yǎng)學生的計算思維、創(chuàng)新與應用能力,教師首先要制定適合同學們知識結構和心理特點的課程內(nèi)容、實驗內(nèi)容及教學方法。因此需要培養(yǎng)教師計算思維、創(chuàng)新與應用能力,積極利用校內(nèi)外多種資源,完善IT人才培養(yǎng)基地,為教師培訓創(chuàng)新IT技術提供各種便利,支持專業(yè)教師實踐能力的提高;為教師提供交流、訪問、培訓、參加學術會議等深造的機會,提高教師的綜合素質(zhì),能以自己的實踐體驗去指導學生計算思維、創(chuàng)新與應用能力的形成。
計算思維的提出對于計算機教育是一個挑戰(zhàn)。如何把計算思維的一些特征和方法作為計算思維的基本內(nèi)容,經(jīng)過梳理和組織,成為培養(yǎng)學生計算思維能力的教材,這給計算機教育提出了新的課題,同時也從新的角度提出了計算機教學改革的目標。本文在多年研究與實踐的基礎上,圍繞計算思維進行課程建設,以現(xiàn)有IT人才培養(yǎng)的主干課程的教學培養(yǎng)目標和內(nèi)容為基礎,結合計算思維能力培養(yǎng),重新組織和梳理教學內(nèi)容、課程體系及教學方法,突出體現(xiàn)思維能力的培養(yǎng)。設計一套以計算思維培養(yǎng)為基礎,以創(chuàng)新與應用能力培養(yǎng)為目標的計算機科學與技術專業(yè)人才培養(yǎng)方案,通過實踐,培養(yǎng)了學生的計算思維、創(chuàng)新與應用能力,提高了學生的綜合素質(zhì)。
[1]Wing J M.Computational Thinking[J].Communications of the ACM,2006,49(3):33-35.
[2]任化敏,陳明.計算機應用型人才的計算思維培養(yǎng)研究[J].計算機教育,2010,(5):61-63.
[3]李曉明,蔣宗禮,王志英,等.積極研究和推進計算思維能力的培養(yǎng)[J].計算機教育,2012,(5):1.
[4]Perkovic L,Settle A,Hwang S,et al.A framework for computational thinking across the curriculum[C].Proceedings of the fifteenth aunual conference on Innovation and technology in computer scieuce education.ACM,2010:123-127.
[5]Astrachan,O,Hambrusch S,Peckham J,et al.The present and future of computational thinking[C].ACM SIGCSE Bulletin.ACM,2009,4(1):549-550.
[6]Qualls J A,Sherrell L B.Why computational thinking should be intergrated into the curriculum[J].Journal of Computing Sciences in Colleges,2010,25(5):66-70.
[7]陳杰華,戴麗娟.以培養(yǎng)計算思維為核心的程序設計實驗教學[J].實驗技術與管理,2011,28(1):125-127.
[8]姚天昉.在程序設計課程中引入“計算思維”的實踐[J].中國大學教學,2012,(2):61-64.
[9]袁開榜.二十一世紀,人們應該具有計算思維能力[J].計算機教育,2011,(3):30-33.
[10]何欽銘,陸漢權,馮博琴.計算機基礎教學的核心任務是計算思維能力的培養(yǎng)——《九校聯(lián)盟(C9)計算機基礎教學發(fā)展戰(zhàn)略聯(lián)合聲明》解讀[J].中國大學教學,2010,(9):5-9.
[11]陳國良,董榮勝.計算思維與大學計算機基礎教育[J].中國大學教學,2011,(1):7-11.
[12]李廉.計算思維——概念與挑戰(zhàn)[J].中國大學教學,2012,(1):7-12.
[13]朱亞宗.論計算思維——計算思維的科學定位、基本原理及創(chuàng)新路徑[J].計算機科學,2009,36(4):53-55,93.
[14]龔聲蓉,朱艷琴,楊季文.地方綜合性大學IT應用型創(chuàng)新人才培養(yǎng)的思考[J].計算機教育,2011,20:1-4.
[15]黃川林,張明會,田惠怡.面向IT應用型人才培養(yǎng)的校企合作模式[J].計算機教育,2012,13:84-86.