楊美艷 劉堯猛
摘要:計算思維是一種新的思維方式,要求用計算機科學的基本概念去解決問題,系統設計并理解人類的行為。離散數學是計算機專業非常重要的一門專業基礎課程,其教學目標,就是要培養學生的抽象思維能力、邏輯推理能力,提高學生利用數學方法解決問題的技能,這與培養學生的計算思維能力也是高度一致的。該文分析了原有教學模式的一些弊端,提出了一種基于計算思維培養的全新的教學方法,使得計算思維的培養意識始終貫穿于整個教學過程,有效地激發了學生的學習興趣,達到更好的教學目標,收到良好地教學效果。
關鍵詞:計算思維 離散數學 教學改革
中圖分類號:O15 文獻標識碼:A 文章編號:1674-098X(2017)06(c)-0150-03
Abstract:Computational thinking is a new way of thinking, which requires the basic concepts of computer science to solve the problem, system design and understanding of human behavior. Discrete mathematics is a very important subject in computer science, and its teaching objective is to cultivate students' ability of abstract thinking, logical reasoning, and improve students' ability to solve problems by using mathematical method. This paper analyzes some disadvantages of the original teaching mode, and puts forward a new teaching method based on the computational thinking training, make the cultivation of the computational thinking consciousness throughout the teaching process, effectively inspire the students' interest in learning, to achieve better teaching goal and receive good teaching effects.
Key words:Computational thinking; Discrete mathematics; Teaching reform
計算思維作為一種新的科學思維方式,一經提出便成為計算教育領域的一個重要概念和研究的一個熱點問題。在我國,也有很多計算機教育專家從教育的角度出發,對計算思維的培養進行了研究與分析。然而,計算思維在計算機教育中的應用仍處于初級階段。離散數學是計算機相關專業的核心課程之一,在計算機邏輯設計、自動機理論、編碼理論、網絡安全、密碼學等領域有著非常重要的作用,為后續的多門專業課程的學習打下堅實的基礎。然而,離散數學本身的具有理論性強和高度抽象等特點,被公認為是一門既難教又難學的課程。文章作者通過分析計算思維與離散數學的特點及其內在聯系,結合多年來的教學經驗,提出了一種基于計算思維培養的全新教學方法。
1 計算思維簡介
計算思維是一種新的思維方式,要求用計算機科學的基本概念去解決問題,系統設計并理解人類的行為。隨著信息化的全面推進,“計算機”變得無處不在、無事不用,網絡(包括物聯網等)延伸到各個角落,加上數據積累的簡單化、容易化,使計算思維成為人們認識和解決問題的重要思維方式之一。計算思維能力,是所有受教育者應該具備的能力,更是計算機專業人員應該具備的能力。然而,目前從總體上看,人們對計算思維的認識以及如何進行計算思維能力的培養還處于相對初始的階段,很多問題還有待進一步的研究和實踐。
2 離散數學教學中如何實現計算思維的培養
離散數學屬于現代數學的范疇,研究的是離散量的結構和相互之間的關系。由于離散數學的興起和發展都與計算機科學緊密相關,因此又將它稱為計算機數學。隨著計算機科學技術的飛速發展,作為基礎學科之一的離散數學也變得越來越重要。它所涉及的概念、方法和理論,大量地應用在數字電路、編譯原理、數據結構、操作系統、數據庫、算法等領域。事實上,離散數學采用抽象的數學符號系統對知識進行表達,然后進一步對知識進行分析和計算,這本身就是一種計算思維的體現。并且離散數學的教學目標,是要培養學生的抽象思維能力、邏輯推理能力,提高學生利用數學方法解決問題的技能,這與培養學生的計算思維能力也是高度一致的。然而筆者,在從事十多年的離散數學一線的教學工作中,對于離散數學的教學過程和教學效果,深有體會。非常遺憾,當前很多高校的“離散數學”教學都沒有達到這個目標,大部分計算機專業學生在學習完“離散數學”課程后均表示“作用不大”。因此,我們有必要對當前“離散數學”的教學方法進行改進。
3 教學改進
筆者所在學校,與計算機相關的專業的離散數學教學也曾經歷過各樣的改革。其中一種就是,鑒于離散數學在整個計算機專業中的重要基礎地位,為了學生能扎實基礎知識和能力,把離散數學的教學學時延長。由原來的1學期72學時,延長拓展至,3學期,186學時。分別是第一學期:《集合論》、《圖論》,教學學時72學時;第二學期 :《近世代數》,教學學時54學時;第三學期:《面向計算機科學的數理邏輯》,教學學時60學時。然而,在教學手段上,基本采用傳統教學方法,即課堂講述加少量的算例。學生對知識的理解仍然停留在理論階段,甚至由于部分同學數學基礎的薄弱,使得大量的理論課程更使其缺乏興趣,不能接受,很難將離散數學培養和訓練的能力與實際應用聯系起來,使學生在學習過程中很難體會到該課程與計算機科學之間的聯系,特別是與實踐應用的聯系。以此可見,通過單純的增加課時來提高學生的能力培養效果不太明顯。所以,必須改變傳統的教學模式,在理論講授之后,適當地增加實踐教學內容,有利于學生對理論知識的掌握和認識。在實踐教學過程中可以基于任務驅動的教學模式,以問題為載體,培養學生發現問題、分析問題和解決問題的能力。根據理論課程的教學內容,將知識點融入到實踐教學中設計不同的實驗任務,然后將這些實驗任務分配給學生,讓學生自己進行資料的收集、問題的分析以及信息的處理,使得學生能夠實際感受和體驗到知識的產生過程。在離散數學的教學過程中增加實驗教學環節,將理論知識與計算機程序設計課程有機結合,進而建立一個較完善的離散數學實踐課程體系,有利于培養學生的綜合應用能力。endprint
4 基于實踐教學的計算思維的培養——案例分析
抽象化和自動實現是計算思維中兩個關鍵內容,即首先將復雜現實問題抽象成數學模型,并用數學的符號系統來描述,繼而通過所學的計算機知識逐步“計算”求解,從而找到解決問題的算法,利用計算機實現。下面,我們就以《集合論》中一節知識——偏序關系作為例子,討論在教學過程中,讓學生體會如何在案例中實現理論知識與實踐相結合,并培養學生的計算思維能力。
4.1 問題描述及分析
例如,一個計算機專業的學生,每學期必須學習一系列的基本課程,然而有些課程必須在學習完其他課程之后才能學習,即有一定的先修課程。比如,必修學習完《離散數學》、程序設計基礎才能學習《數據結構》。這樣課程之間就有了一定的優先關系,那么我們就可以用偏序關系來表達課程之間的這種優先關系。如<離散數學,數據結構>,<離散數學,匯編語言>,<數據結構,操作系統>等等。為了方便理解,下面我們分別用表、有向圖來表達課程之間的關系,有向圖中的弧代表課程之間的先修關系。
4.2 問題解決方案
構造一個課程集合上的偏序關系,若a,b代表課程,用偏序關系來代表課程之間的優先順序,既a≤b當且僅當a優先于b,既課程a結束后課程b才能開始。
我們可以使用如下的算法來求出課程的完成順序(其中,A是課程集合)。
在一個偏序關系R中,根據極小元素的定義,如果一個元素a和集合中任意元素x,只要任意x?a都滿足
通過上述案例,學生不僅能夠理解偏序關系的概念,也能夠體會其用途。在整個問題的解決過程中,體現出計算思維的兩大核心內容,即抽象化和自動化。筆者認為,如果在離散數學的整個教學過程中,如果教師能恰當引導,學生能用心體會,把計算思維貫穿在教學的各個環節上,那么通過一個學期的學習和體會,學生不但能較好地完成離散數學的教學目標,并且對其計算思維能力的提高,以及對計算機科學后續的專業課程奠定了極其重要的基礎。
參考文獻
[1] 龔沛曾,楊志強.大學計算機基礎教學中的計算思維培養[J].中國大學教學,2012(5):51-54.
[2] 孫麗君,楊志強,高枚.圍繞計算思維培養的程序設計課程改革[J].計算機教育,2013(5):29-31.
[3] 何欽銘,陸漢權,馮博琴.計算機基礎教學的核心任務是計算思維能力的培養[J].中國大學教學,2010(9):7-11.
[4] 馮博琴.對于計算思維能力培養“落地”問題的探討[J].中國大學教學,2012(9):6-9.
[5] 蔣宗禮.計算思維之我見[J].中國大學教學,2013(9).
[6] 耿素云.離散數學[M].北京:北京大學出版社,2011.
[7] JeannetteM.Wing.Computational Thingking[J] Communications of the ACM,2006,49(3):33-35.
[8] 嚴蔚敏.數據結構(C語言版)[M].北京:清華大學出版社,1997:179-186.