【摘要】本文主要闡述《計算機科學論》課程在計算機專業教學中所處的地位,介紹該課程的教學內容,總結該課程的教學特點和目的。同時,結合《計算機科學導論》課程的教學目標,分析了剛剛接觸計算機專業學生的特點,提出了一種如何讓他們對計算機專業產生興趣、如何讓他們認識到數學在計算機專業中的作用、如何讓他們快速掌握5個學科形態的教學方法。
【關鍵詞】計算機導論;學科形態;核心概念;教學內容
●引言
《計算機科學導論》是計算機科學與技術專業學生入學后接觸到的第一門專業課,也是該專業學生了解計算機科學內容、發展及其學習方法的一門導引性課程。開設這樣一門課程的目的是讓學生了解計算機學科的歷史淵源、學科的本質特點、核心概念和學科知識體系等內容,讓學生了解計算機科學與技術專業發展所經歷的曲折和困難,激發和增強學生學習計算機科學的興趣和積極性,為學習后續課程和獻身計算機科學事業奠定基礎。
計算學科的認知問題是學術界長期以來一直探討的問題,反映在教學上就是“計算機導論”課程的構建問題。1989年,美國計算機協會攻關組提交了著名的“計算作為一門學科”的報告,該報告認為,《計算機科學導論》課程應該培養學生面向學科的思維能力,使學生領會學科的力量,以及從事本學科工作的價值之所在。報告希望該課程能用類似于數學那樣嚴密的方式將學生引入到計算學科各個富有挑戰性的領域之中。由此可見,《計算機科學導論》課程肩負著如何讓剛步人大學的學生對計算機專業產生興趣,進而更好地在本專業有所建樹的重任。鑒于此,《計算機科學導論》課程的構建問題及如何粗線條、綱要式、科普性地講解計算學科的核心概念是本文所要論述的主要內容。
●計算機導論課程教學內容的現狀與問題
目前,國內計算機導論課程的教學內容主要有三種類型。
第一種類型是以計算機應用基礎為主,理論教學著重于計算機基礎知識,實踐環節要求學生熟練使用Windows操作系統,并掌握Office辦公軟件的使用方法。這種模式實際上只是借用了《計算機科學導論》的課程名稱,并沒有系統介紹計算機學科的本質及其核心概念。
第二種類型是將計算機專業所學的主要專業課程加以濃縮,主要講授計算機硬件基礎、計算機軟件基礎以及算法等課程的基本概念與核心內容。CC2005指出,該課程的關鍵是課程的結構設計問題,現有的濃縮版顯然不是一種好的課程結構。
第三種類型是通過引入大量學科基本問題來闡述計算學科的本質,以抽象、理論和設計3個學科形態揭示學科中各主領域發展的基本規律以及各主領域之間的內在聯系,以高度概括的語言和豐富的實例介紹了計算學科中算法、數據結構等核心概念,并著重介紹了計算思維方法中最為重要的數學方法。這樣授課,有助于學生開闊思維、了解計算學科的本質內容,使他們認識到數學和系統科學方法在計算學科中的重要性,從而自主培養其計算思維。
綜上所述,第一種類型的教學內容過于簡單,但第三種類型的教學內容過于抽象,因此,根據學生的特點,我們以第二種類型和第三種類型兼而有之的教學內容來授課,既培養了學生計算學科的思維能力,又讓他們了解一些專業核心課的內容,為新生學習將來的課程打下堅實的基礎。
●計算機導論課程的教學內容
目前,剛剛步入大學的學生在中學階段也接觸到一些信息技術類課程,他們認為選擇計算機專業就是學習編程序,或者是學習操作性和技術性的知識。鑒于此,我們根據這類學生的特點,并參照“計算作為一門學科”報告給出的計算學科二維定義矩陣的概念,制定了如下圖所示的教學內容,共26學時。
其中,計算學科及其基本問題、3個學科形態、學科中的數學方法與系統科學方法都屬于計算思維的本質問題,其他幾個部分屬于學科中的具體內容介紹。這樣設計教學內容,便于學生理解該課程,容易對計算學科產生興趣。
●構建以培養學生學習計算機興
趙致琢教授曾認為,該課程的教學任務和目的主要有兩個:一個是幫助初學者認知——“授人以魚”;另一個是為初學者提供導學——“授人以漁”。筆者認同上述觀點,為此,本文主要從以下3個方面來講述如何增加新生學習計算機專業知識的興趣。
1 培養學習數學的興趣
計算機科學與技術學科最初來源于數學學科和電子學科,如今,數學技巧和形式化的數學推理已在該學科領域占有重要的地位,而且,數學提供了一組用于分析與驗證的特殊工具,一個理解重要思想的理論框架。因此,要求計算機科學與技術專業的學生應該具有良好的數學功底,諸如數學分析、概率論與數理統計、微積分、高等代數、數學建模等。數學如此重要,那么,如何讓剛入學的學生領悟呢?筆者認為,只憑教師在課堂上說數學重要并無濟于事,本文通過舉例,說明數學在數字圖像處理中的簡單應用來引導初學者學習數學的興趣。
如下圖所示,一幅灰度圖像可以被定義為一個二維函數f(x,y),其中x和y是空間(平面)坐標,f任何坐標點(x,y)處的振幅為圖像在該點的灰度(灰度是用來表示黑白圖像亮度的一個術語)。圖像關于x和y坐標以及振幅連續,要將這樣的一幅圖像轉換成數字信號形式以便于計算機處理,就要求數字化坐標和振幅。將坐標值數字化稱為取樣,將振幅數字化稱為量化,因此,當f的x、y分量和振幅都是有限且離散的量時,稱該圖像為數字圖像。

取樣和量化的結果是一個實數矩陣。假設對一幅圖像f(x,y)取樣后,得到了一幅有著M行和N列的圖像,則稱這幅圖像的大小為M×N。坐標(x,y)的值是離散量。這樣一幅數字圖像就可以很自然地表示成矩陣被計算機來處理。

接下來,計算機對圖像的處理就轉化為對矩陣的處理。例如要將圖1所示的圖像旋轉90°,可以通過求f的轉置來完成。這樣介紹完后,學生應該大致地知道了數學在計算機中最淺顯的應用。當然,為了更好地處理圖像(例如圖像分割、邊緣檢測、特征提取),可以從空間域轉換到頻域進行處理,最好的數學工具就是傅里葉變換。既然學生知道了數學的用武之地,也就增強了學習數學的興趣。
2 培養學習3個學科形態的興趣
眾所周知,抽象、理論和設計3個學科形態是計算學科中較重要、同時又很抽象的概念,如果教師在授課時只是干巴巴地講這三個概念,學生可能會一頭霧水,倒不如舉例說明。筆者以“學生選課”實例來進行學科形態的劃分。
首先,將客觀世界抽象成信息世界。通過對實體、屬性、域等概念的介紹來建立概念模型,進一步轉化為E-R模型,從而實現對這一例子的感性認識(抽象階段)。
其次,將概念模型轉換成機器世界支持的數據模型,即關系模型。根據概念模型向關系模型的轉換規則,例子“學生選課”的E-R圖可以轉化為下面的關系模型(關系的碼用下劃線標出):學生(學號,姓名,年齡,性別);課程(課程號,課程名);學生選課(學號,課程號,成績)。雖然從E-R圖轉換到關系模型已屬于對客觀世界的理性認識,但當在學生關系中增加系名、系主任等屬性時就會出現插入異常、刪除異常、數據冗余等問題。要解決這樣的問題,必須要滿足關系模式的形式化定義,因此,就例子而言,可以再劃分一個關系,即系(系號,系名,系主任名),從而滿足關系模式規范化的要求,實現了對例子的理性認識(理論階段)。
最后,還要根據具體的關系數據庫管理系統(如Oracle、Informix、SyBase、SQL Server等)對該模型進行定義,然后經過計算機處理,便可進行有關數據的輸入、修改和查詢工作,這屬于該例子的實踐(設計)階段。
以上“學生選課”管理系統的研制過程蘊含了人們對客觀世界從感性認識到理性認識,再由理性認識回到實踐中來的科學思維方式。對“學生選課”這個簡單例子的分析有助于新生理解計算學科中有關抽象、理論和設計3個學科形態的概念。
3 培養學生學習計算機專業的興趣
為了更好地引導一年級新生明確學習目標、制定本科四年的學習計劃,在教學中還要進行專業培養方向介紹。針對每個專業培養方向,介紹其課程體系、知識構成、研究領域、研究方法、研究趨勢、就業方向與就業前景等問題。對于每門具體課程,闡述課程特色、開課時間與開課模式、考核方式、實踐環節教學內容,以及它在所屬培養方向中的地位和作用等。具體來講,就是給學生詳細介紹教學計劃。通過這些介紹,能夠使學生了解學校為他們規定的專業培養方向,有助于激發學生學習計算機學科的興趣和提升他們對本專業發展與就業的信心。與此同時,學生的學習主動性也將被最大程度地挖掘出來,他們可以選擇感興趣且適合自己的發展方向,從而盡早確定目標并規劃好大學四年的學習和生活。
除此之外,學院每學期都邀請一些重點大學的知名人士來作學術報告,在《計算機科學導論》課的教學過程中,也會抽出一定的學時安排學院的資深教師作科普性的報告,以上做法都是為了讓初學者能夠與著名學術專家進行近距離接觸,提前感受學術與應用前沿,并以此來增強學生學習計算機專業的興趣。
●結束語
計算學科畢業生的各種能力不能僅僅通過《計算機科學導論》課程的教學來實現,也需要通過各種途徑、經過長期的培養過程去實現,尤其是專業能力的培養,更需要通過相應的系列課程來完成。可持續發展教育觀要求學生關心他人,強調協調,其核心是在知識和能力的基礎上強調素質。計算機導論課程的教學應該初步培養學生的團隊協調能力,了解職業和道德責任。計算機導論課程的開設會使大學生對計算機技術的初步感性認識上升到一定的理性高度,為其學習計算機學科的后續課程做好鋪墊,為大學生的專業學習做好方法和工具上的準備。