崔玉文+郎大鵬
摘 要:本文對計算思維和數理思維、工程思維之間的關系進行了深入探討,并從指導本科生教學的角度為計算思維進行了較生動的定義。同時,文中指出在當前我國本科生教育中存在的若干問題,并從如何應用計算思維的角度提出解決問題的方法。最后,本文從下一步如何在課堂教學中推廣計算思維提出若干建議。
關鍵詞:計算思維;本科生;基礎課;教學方法
任何一門學科都有其核心思想。數學中,公理化的數理思維居于核心;工程學里,近似化的工程思維乃是黃金準則;法學上,權利與義務的思維則貫穿始終;經濟學內,有著理性人的概念作為基本假設。那么對于計算機科學,我們又可以說什么?本文旨在闡述計算科學的思維,即計算思維。
1 計算思維的來源
1.1 計算思維的淵源
一個非常無聊的現狀是:幾乎在每一篇談及計算思維的文章中,開篇都會不厭其煩地重復周以真教授所給出的定義。本文希望以一種不同的方式來闡述這個概念:從一個概念的來源出發。解釋這個問題:什么是計算思維。
計算機科學,本質上是應用數學,它是數學與工程學的混血兒。一方面,它具有數學的抽象,嚴謹,與精確;另一方面,它又廣泛應用了工程學中的近似方法。計算機科學繼承了兩者諸多特質。而其核心思想,亦是兩者之精華。我們可以說
計算思維=數理思維+工程思維。
計算思維是數理思維的一個子集,它是對數理思維加以實際限制所得到的一個子集。
1.2 計算思維與數理思維的關系
數理思維屬于認識論,實證論和方法論的綜合思維形式。其最大的認識特征便是:概念化,抽象化,模式化。一個具有數理思維的人,往往具有如下的特征:在討論問題時,習慣于強調定義,界定概念,明確問題的條件;在觀察問題時,習慣于把握其中的(函數)關系,在微觀認識的基礎上構建綜合多因素的宏觀考慮。
事實上,所謂計算思維的概念,與其說是它是隨著計算機技術發展而被提出,倒不如說它是隨著應用數學的繁榮而出現。
培養計算思維的先決條件是培養數理思維。數理思維的核心就是公理化。而公理化可以理解為形式化+公理。數學所研究的內容,當所有定義明確給出之后,就已經被決定了。它從公理出發,按照指定的規則進行演繹,從而構建出整個數學體系。計算思維不關心演繹起點是否直觀,是否正確,它所關心的是輸入與輸出,已知量與未知量之間是否有著正確的聯系。
數理思維需要解決的問題:(A→B)∧A,不僅包括蘊含式A→B的真值,還要確定命題A是否正確。而計算思維研究的問題:A→B,則進行了簡化,它僅僅需要確定A得到B這一過程是否正確。
1.3 計算思維與工程思維的關系
工程是數學與科學的某種應用:以最少的資源,解決最多的問題。至于工程思維,雖說沒有一個公認的定義,但這絲毫不妨礙我們對它的認識。工程思維的核心,便在于近似化。通過對實際的理論,加上客觀環境的限制。提出可行的方案并評估可行性,擇優而用。
我們依然可以以"計算"二字替代"工程"而無恙。譬如計算機科學中,我們對算法的限制指標便是:時間復雜度與空間復雜度。
1.6 計算思維的定義
綜上所述,我們可以以另外兩種不同的方式為計算思維下一個定義:
第一種定義:
計算思維是工程化的數理思維。
第二種定義:
計算思維即運用算法的思維。
3計算思維與本科教育
3.1 本科教育中存在的問題
夫子循循然善誘之。現在不少老師上課喜歡照本宣科,就算是有那么些"教學創新"也往往是形式主義。也許老師們覺得,將虛擬存儲體系比作人腦-圖書館體系,網絡系統比作高速公路等等這些類比運用到教學之中已經算是不小創新了。然而,這些手段都只是對于記憶知識以及粗淺理解的努力,沒有觸及問題的本質。
在學習的四個階段:知識,理解,意識,悟性。教師所講的,基本僅僅處于第一個階段。一些好老師有特殊的教學技巧,可以直接傳授給學生第二級的信息--理解。然而真正做到融會貫通,形成意識,也就是培養出計算思維。
對于一個概念,首先,需要知道它是為了解決什么問題提出來的。然后才是怎么運用這個概念的問題。最后,知道了這個理論的知識性內容還遠遠不夠,還需要將這些理論還原到生活實踐之中,用來解決具體的問題。這才算是一個完整的教學流程。
3.2 本科教育中如何培養計算思維
(1)修正定位。
知識書上都有,不需要老師來教。老師真正需要做的,是闡述這個理論提出的原因,所能夠解決的問題,如果這個問題恰好也是學生感興趣的,那么就可以看到興趣是如何成為最好的老師的。做一個導師,而不是一個教師。
(2)歷史驅動的學習模式。
正如哲學的學習就是哲學史的學習一樣,數學與計算機的教育也可以考慮嘗試這種模式。按照時間線而不是體系結構,在整個教育生涯中,重現學科的發展歷程。讓學生明白,理論從何而來,向何而去。從問題提煉出的理論終究要回歸到問題中去。
(3)激勵體系與評價體系的修正
對于實際的改革,短時間內不應報以太大希望。在教育中普及計算思維是一個非常大的系統工程,小規模的教育實驗還可以進行嘗試,要進行普及,沒有幾代人的努力是很難完成的。
4 結論
現在的教學,可以說是只完成了中間的環節:知識性的內容。不信翻開手頭任何一本計算機科學的教材或者數學教材,再翻開一本美國大學所用的教材,稍作對比,可見一斑。只有將計算思維運用到教學實踐中,才有可能培養出有創造力、又懂的融會貫通的學生。
注:本課題由哈爾濱工程大學2014年教育教學改革研究項目支持,項目名稱《在計算機基礎教學中提升計算思維能力的案例教學法研究》,負責人崔玉文。
參考文獻:
[1] Jeannette M Wing. Computational Thinking. Communications of the ACM . 2006
[2] 教育部理工類計算機基礎課程教學指導分委員會. 計算機基礎課程教學基本要求V4.0[M].北京:高等教育出版社,2009.
[3] Jeannette M. Wing. Computational Thinking[J].
Communications of the ACM,2006,49(3):33-35.
[4] 唐培和,徐奕奕,王日鳳. 計算思維導論[M]. 桂林:廣西師范大學出版社,2012.
作者簡介:
崔玉文(1964.3--),女,漢族,黑龍江省哈爾濱人,副教授,哈爾濱工程大學,主要從事程序設計基礎、計算機網絡、大學計算機基礎等課程和創新創業實踐課程的教學工作。通訊地址:哈爾濱市南通大街145號哈爾濱工程大學計算機學院,21B423,郵編150001。endprint