邱蘇林
(云南司法警官職業學院,云南 昆明650211 )
增強計算思維能力的培養,已成為當前大學計算機基礎教學改革的主旋律。2010年7月,九校聯盟(中國首批“985 工程”建設高校)在西安交通大學召開計算機基礎課程研討會,會議討論了新形勢下我國高水平研究型大學如何增強計算思維能力的培養和提高計算機基礎教學的質量,并發表了計算機基礎教學發展戰略聯合聲明,確定了以計算思維能力培養為核心的計算機基礎課程的教學改革。2010年11月,陳國良院士在第六屆大學計算機課程報告論壇上第一次正式提出了將“計算思維能力培養”作為計算機基礎課程教學改革切入點的倡議。隨后,一些高水平研究型大學圍繞計算思維能力培養開展了大量的研究和實踐工作,并在2012年7月西安交大召開的“第一屆計算思維與大學計算機課程教學改革研討會”上做了展示與交流。
然而,我國一流大學討論發表的C9 聯合聲明在其他類型、層次的高校中有無普遍指導或參考價值? 研究型大學的基于計算思維能力培養的課程改革方案是否適用于應用型大學、高職院校?作為高職院校的計算機教師,面對“以計算思維能力培養為核心的計算機基礎課程的教學改革”的提法,認識上仍存有很多疑惑:計算思維概念抽象、晦澀難懂,學生能理解、接受嗎? 高職院校計算機基礎教學的能力培養目標是否要由計算機應用能力轉向計算思維能力? 高職院校的學生應培養什么樣的計算思維能力? 這些是從事高職院校計算機基礎教學的教師應該認真思考的重大問題。
2006年3月,美國卡內基·梅隆大學周以真教授在美國計算機權威刊物《Communications of the ACM》上對計算思維進行了清晰系統的闡述。她認為,計算思維是運用計算機科學的基礎概念(即思想和方法)進行問題求解、系統設計以及人類行為理解等涵蓋計算機科學之廣度的一系列思維活動[1]。這一概念對高職院校非計算機專業的學生來說,似乎顯得晦澀難懂,高不可攀。但仔細分析可以發現,計算機基礎課程中很多概念、知識中都蘊含著計算思維方法。
介紹計算機的產生、發展歷程以及計算機技術對人類社會發展進步帶來的影響,讓學生了解學科發展,認識計算機學科之美,激發學習使用計算機的愿望,讓學生理解和建立“信息、計算、智能”這三大核心科學概念,知道哪些問題是計算機可以解決、哪些是計算機不能夠解決的。
“計算機中數的表示,即數字、字符、漢字、聲音、圖像等在計算機中如何表示”,蘊含的計算思維是現實世界的各種信息只有轉換為0 和1 的形式,才能成為計算機可以處理的“計算對象”,進而為基于計算環境的問題求解提供可能。計算機進行問題求解首先需要解決問題的表示。
操作系統是計算機系統的管理者,它按照一定的策略管理和調度計算機的軟硬件資源,提高計算機資源的使用效率。這其中包含了如何高效實現資源的共享與分配、系統效率與驗證等方法。
計算機網絡系統是十分龐大而復雜的,網絡設計者并不是設計一個單一的、巨大的系統,而是采用分層結構體系,對系統功能進行分解,然后定義出各個組成部分的功能,從而達到總體目標。這體現了采用抽象和分解控制龐雜的任務或進行巨大復雜系統設計的計算思維方法。網絡上如何控制數據傳輸的正確性、完整性采用的容錯技術、校驗技術也是計算思維的典型方法之一。
從上述分析不難看出,計算思維就體現在一系列知識點和概念中,這些思維反映了計算、計算機的原理,高職院校的學生能夠深刻地理解。
高等職業教育重點培養發展型、復合型和創新型的應用型專門人才。高職院校計算機基礎教育的目標是使學生具備在各個領域的計算機綜合應用能力。計算機應用并非簡單地使用工具,而是計算機的熟練、綜合、有效地使用。計算機應用技術涉及到基本原理、共性技術和方法。
高職院校計算機基礎課程教學存在這樣一個矛盾:越來越多的學生接觸、學習和使用計算機較早,對大學開設的計算機基礎課程所講授的內容缺乏學習的積極性;但是對于計算機基礎課程教授的Windows、Office 軟件、網絡的應用,有相當多的學生只掌握了其中較少的功能,應用能力不強。多數學生入校前對計算機的應用僅限于上網瀏覽或簡單的文字處理,學生對計算機的認識大多停留在“計算機是工具甚至是玩具”的層面上,僅掌握基本的知識、技能,而對計算機組成、原理等缺乏深入系統的理解,沒有達到能力、方法的高度。高職院校學生計算機知識能力與社會需求存在一定的差距。
計算思維的培養是以計算能力的培養為基礎的,一定要在能力培養的基礎上進一步培養思維[2]。當前計算機基礎教育面向應用的研究和落實做得還不夠,還需要花大力氣去做,我們不應當認為計算機應用的問題已解決,要轉向計算思維了[3]。計算思維能力的培養分類分層是必然選擇,要弄清楚計算思維對不同人群的要求[4]。高職學生大多是高考錄取成績較低的學生,他們在學習基礎、接受能力等方面與本科院校學生有一定的差距,培養目標也不同于研究型、應用型大學。因此,高職院校計算機基礎教學層次上的計算思維能力培養應有別于以上院校,有別于計算機科學與技術專業的能力培養要求,應該面向計算機應用需求,培養學生基本的計算思維能力。
當前高職院校計算機基礎教學仍然要以計算機綜合應用能力培養為核心。在提高計算機應用能力的同時,注意培養計算思維能力,通過注重計算思維能力的培養促進計算機綜合應用能力的提高。應用能力的培養和計算思維的培養并不矛盾,二者是相輔相成的。
長期以來,高校計算機基礎教學模式以計算機應用技能培養為主,這在一定程度上形成了“計算機會用即可”、“計算機基礎課程就是講解軟件工具的使用”等片面觀點。學生在學習計算機基礎課程的過程中,可能更關注計算機知識與應用技能的學習,滿足于會使用各種各樣的軟件。從教師到學生對計算機基礎課程認識上存在的偏差對高校計算機基礎教學造成了巨大的沖擊:計算機基礎課程學時被壓縮,甚至成了可有可無的課程,計算機基礎課程在大學教學中的基礎地位有所動搖。
出現這些問題的根本原因是對計算機學科的內涵特征的把握出現了偏差,缺乏類似“計算思維”等先進理念的指導。因而,對計算機基礎課程的認識、定位、課程設計上有失片面。
計算機是一種具有計算功能的工具,但其科學基礎并不是機器本身,而是數學科學、工程學、邏輯學等。國際計算機權威組織ACM 公布的《CC2002 計算機科學教學指導草案》提出了在計算機科學與技術學科中重復出現的12 個基本概念[5]。這些概念描述了該學科具有普遍性、持久性的重要思想、原則和方法,描述了貫穿于認識和實踐過程中問題求解的12 個基本方面。CC2002教程認為,這12 個基本方面是人們認識和實踐計算機科學與技術過程中經常用到的基本概念,它們表達了計算機科學與技術學科特有的思維方式。Richard m. Karp 教授提出的“計算透鏡”(computational lens) 理念也提出要將計算作為一種通用的思維方式[6]。
計算機為不同專業領域提供了解決專業問題的有效方法和手段,而且提供了一種獨特的處理問題的思維方式;不僅是工具,而且是可以啟發人們思考問題的科學方法。通過使用這種工具可以培養學生的信息素養、掌握蘊含在計算機知識中的思維方法。圖靈獎得主Edsger Dijkstra 在著名的“工具影響思維論”中指出:“我們所使用的工具影響著我們的思維方式和思維習慣,從而也將深刻地影響著我們的思維能力。”[7]計算機對各個學科的發展產生深遠的影響。近年來出現的計算生物學( 生物信息學)、計算社會科學等就是將計算思維和計算技術用于各學科領域形成的一些跨學科的新學科,它們的出現改變了有關專業的科學工作者的思維方式。
基于以上分析,高校計算機課程的設置不僅為了讓學生掌握計算機技術,而且為了培養具掌握計算機學科的核心思維和方法。通過計算機課程的學習培養科學思維能力,養成計算思維的素質和能力。這樣一來,計算機課程就與數學課程、物理課程一樣有特定的教學目的,其重要性也就不言而喻。
計算機科學與技術學科包括科學與技術兩個方面。科學側重于研究現象、揭示規律;技術則側重于研制計算機和研究使用計算機進行信息處理的方法與技術手段。科學是技術的依據,技術是科學的體現,科學與技術相輔相成、相互作用,二者高度融合是計算機科學與技術學科的突出的特點,主要表現為理論性和實踐性緊密結合的特征。計算機課程的教學組織應該從學科的本質特點出發。一方面,挖掘計算機學科的基本概念和方法,計算機解決問題的思路,講知識的同時,注重貫通這些知識的思維,促進計算機技術的應用;另一方面,基于一定的操作應用理解技術背后的學科思維方法。
課程應從思維而非細節的角度,使學生對計算機本身及其應用方式有一個全面的了解和理解,從而有助于培養學生在實際中綜合應用計算機的能力。教學中,應挖掘計算思維,有意識培養計算思維,促進學生素質能力的提升。
[1] J.M.Wing. computational Thinking [J]. Communications of the CM,2006,49(3):35.
[2] 李廉. 計算思維——概念與挑戰[J].中國大學教學,2012(1).
[3] 譚浩強. 研究計算思維,堅持面向應用[J].計算機教育,2012(21).
[4] 馮博琴. 對于計算思維能力培養“落地”問題的探討[J].中國大學教學,2012(9).
[5] 黃國興,等.中國計算機科學與技術學科教程2002[M].北京:清華大學出版社,2002.
[6] Karp r m. understanding science through the computational lens[J]. Journal of computer science and technology,July 2011,26(4).
[7] 王飛躍. 從計算思維到計算文化[EB/OL]. [2012-09-15]. http://www.docin.com/p-71046882.html.