楊 歡,周競文, ,周海芳
(1.國防科技大學 計算機學院,湖南 長沙 410073;2.復雜系統(tǒng)軟件工程湖南省重點實驗室,湖南 長沙 410073)
計算機作為現(xiàn)代信息社會的必備工具,其應(yīng)用已遍及國民經(jīng)濟與社會生活的各個方面,在諸多領(lǐng)域發(fā)揮著十分重要的作用,這也使得使用計算機成為21 世紀每個人都應(yīng)掌握的基本技能之一。因此,國內(nèi)外許多高校將計算機入門課程設(shè)置為各專業(yè)學生均需學習的一門基礎(chǔ)課程。但是,計算機領(lǐng)域具有知識點多、涉及面廣、應(yīng)用性強、發(fā)展迅速等特點,這些特點也為此類課程的實施帶來了問題。例如,如何合理設(shè)置課程目標,如何對內(nèi)容進行取舍,如何有效培養(yǎng)學生的計算機應(yīng)用能力,如何科學評價學生的學習情況等。這些問題是目前國內(nèi)很多高校面臨的共同問題,也是在對計算機基礎(chǔ)課程進行改革時需著重關(guān)注的問題,而世界一流大學的做法對解決這些問題具有重要的借鑒意義。
調(diào)研的6 所學校及6 門課程見表1。
表1 調(diào)研的課程
所選6 所學校的計算機科學專業(yè)在QS 2018、ARWU 2017、USNEWS 2016 學科排名中均處于前列;所選課程為面向本科各專業(yè)開設(shè)的計算機入門課程,即這些課程不要求學生具備計算機方面的先驗知識;所選學期是課程資料較全、時間盡量靠后的學期。
調(diào)研課程的基本信息見表2。
授課形式包括網(wǎng)絡(luò)授課和實地授課,網(wǎng)絡(luò)授課在EdX MOOC 等網(wǎng)絡(luò)教學平臺上進行,學生通過自行觀看教學視頻進行學習,實地授課在教室進行,由授課老師進行講授。
采用網(wǎng)絡(luò)授課形式的課程,其課時格式為“每周課時長(小時)×總課周數(shù)”,如MIT 的6.0001 課程課時為“14~16×9”,表示該課程每周課時為14 到16 小時,總共9 周;采用實地授課形式的課程,其課時格式為“每次課時長(分鐘)×總課次數(shù)”,如Stanford 的CS 101 課程課時為“80×20”,表示該課程每次課80 分鐘,總共20 次課。對于實地授課形式課程,需要指出的是:①課時包括講授、討論、復習、考試等所有寫入課表的課時;②除CMU 每周4 次課之外,其他三門課程每周均安排2 次課;③CMU 每周4 次課,單數(shù)周用于講課,雙數(shù)周用于進行練習、作業(yè)和測驗。
對于“教材/參考書”一列,未標“*”表示的是指定的教材,標“*”表示的是推薦的參考書。除此之外,一些學校還會根據(jù)課程內(nèi)容提供其他學習資料。例如,UCB 提出“新聞中的計算”的概念,因此會在每天的報紙中選擇一些相關(guān)文章分配給學生作為補充讀物;CMU 還提供了Python 官方教程,以及一些課程外的在線視頻講座和練習資源;Princeton 會每周發(fā)布相關(guān)的閱讀材料。
各課程的教學目標見表3。
表2 課程基本信息
表3 課程目標
從表3 可以看出,這些課程的目標是基本一致的,即會用計算機,更具體地說,是使零基礎(chǔ)的學生學會用編程的方法解決實際問題,在此過程中,理解計算機的工作原理、基本思想、相關(guān)技術(shù)等,從而初步建立計算思維、形成信息素養(yǎng)。
各課程教學內(nèi)容見表4。
從表4 可以看出,這些課程選取的教學內(nèi)容與課程目標聯(lián)系緊密,從而保證課程目標的有效達成。整體上看,教學內(nèi)容主要集中在以下幾方面。
表4 教學內(nèi)容
(1)程序設(shè)計。所有課程均介紹了程序設(shè)計的基礎(chǔ)知識,涉及數(shù)據(jù)類型、輸入輸出、數(shù)據(jù)結(jié)構(gòu)、控制結(jié)構(gòu)、函數(shù)、文件讀寫、異常處理和面向?qū)ο缶幊痰确矫?。這些課程之所以將編程作為課程的主要內(nèi)容,至少有以下兩方面考慮:程序是計算機的核心概念,通過編寫程序能夠使學生更好地理解計算機軟硬件結(jié)構(gòu)和工作原理等;這些課程的目標是使學生學會使用計算機解決實際問題,而編程是利用計算機進行問題求解的一種最為靈活、最為通用的方法。
(2)計算機相關(guān)技術(shù)。這些課程在對此方面內(nèi)容進行選擇時,一般會從以下兩方面進行考慮:學生最常接觸的技術(shù),如軟硬件、互聯(lián)網(wǎng)、圖像、信息安全、數(shù)據(jù)壓縮等;熱門的前沿技術(shù),如人工智能、虛擬貨幣等。從而使學生在有限時間內(nèi)學習到對其最為有用的知識,還可激發(fā)學生對計算機的興趣,促使學生后續(xù)的自主學習。
(3)計算思想,如抽象、模擬、算法等,通過這些內(nèi)容初步培養(yǎng)學生計算思維。
另外,在教學理念、教學方法等方面,這些課程還存在以下一些共同做法。
(1)以編程為中心,圍繞編程展開教學,穿插介紹其他內(nèi)容,通過編程加深對其他內(nèi)容的理解。
(2)更加強調(diào)通過編程解決實際問題,而不過多關(guān)注語法細節(jié),如UCB 選擇的是圖形化編程語言Snap,Stanford 提供了大量基礎(chǔ)代碼,從而使學生將更多精力放在問題求解過程上。
(3)以問題為引導,圍繞問題展開教學,如UCB 的CS 10 課程通過分形圖形引入遞歸概念,通過解決該問題,使學生掌握遞歸技術(shù)。
(4)大部分課程明確要求學生上課時需攜帶筆記本電腦,以便邊講邊練,從而達到較好的教學效果。
各課程的成績組成及分值比例見表5。
除平時作業(yè)、期中考試、期末考試之外,各課程會根據(jù)需要安排一些探索性和實踐性的任務(wù),從而使學生更為深入地理解課程內(nèi)容,進一步鍛煉學生的綜合能力,如Stanford 要求學生寫一篇人工智能方面的小論文;UCB 要求學生完成一個編程類的任務(wù)和一個探索性的任務(wù);Harvard要求學生完成一個學期項目,可以是以網(wǎng)站形式呈現(xiàn)的論文,或是用Java 編寫的較大程序;CMU 每兩周進行一次小測驗;Princeton 布置了8個與學生日常生活相關(guān)的實踐性實驗。從而可以看出,這些課程比較注重對學生的過程性評價。
表5 成績組成 %
另外,值得指出的是,幾乎所有課程的期末考試均為開卷,這也反映出這些課程更注重對學生能力的考察,而不僅僅是知識的記憶。
結(jié)合前述關(guān)于計算機基礎(chǔ)課程在實施過程中面臨的若干問題,對調(diào)研情況總結(jié)如下。
(1)在教學目標上,以使用計算機為核心。通過學習,使各專業(yè)的學生能夠從零開始,學會使用計算機技術(shù)解決本專業(yè)領(lǐng)域的實際問題,這里所說的“使用計算機技術(shù)”,更多地是指使用編程技術(shù),而不僅僅是Office 等現(xiàn)成軟件。
(2)在教學內(nèi)容上,以編程為中心,圍繞編程,穿插介紹其他計算機相關(guān)知識。通過編程,使學生更好地使用計算機,通過其他計算機知識,使學生更好地理解計算機,并逐步形成計算思維。另外,在內(nèi)容的選取上,適當選擇學生經(jīng)常接觸的技術(shù)和計算機前沿技術(shù),從而激發(fā)學生的學習興趣,使其能在后續(xù)繼續(xù)主動學習,達到基礎(chǔ)課程的“入門”作用。
(3)在教學實施過程中,以能力培養(yǎng)為重心,強調(diào)問題求解等能力的訓練,而不僅僅是知識的記憶。采用的方法包括:以問題為牽引,圍繞問題求解過程展開教學;帶電腦進入課堂,課上邊學邊練;課程案例、作業(yè)等內(nèi)容緊密聯(lián)系實際;增強探究性學習,激發(fā)創(chuàng)造性思維,提升創(chuàng)新能力。
(4)在成績評價上,注重過程性評價,注重對能力的評價。主要體現(xiàn)在以下幾個方面:期末考試所占分值較小,而過程性成績分值較大;過程性成績采用多元化的評定方式,如問題集、編程題、論文、綜合項目等;在期末考試上,大多數(shù)課程都采用了開卷形式,且題目對學生的綜合能力要求較高。
計算機基礎(chǔ)課程作為高校學生學習的第一門,也可能是唯一一門計算機課程,肩負著使學生學會使用計算機、理解計算機系統(tǒng)、初步形成計算思維等重任,因而受到了各大高校的普遍重視。本文通過對若干世界一流大學計算機基礎(chǔ)課程進行調(diào)研和分析,得出若干結(jié)論。這些結(jié)論與我國教育界當前倡導的一些教育理念是一致的,在一定程度上證明了這些教育理念的科學性與先進性。同時,這些結(jié)論對解決計算機基礎(chǔ)課程實施和改革過程中面臨的一些問題具有借鑒意義。另外,也應(yīng)看到,計算機基礎(chǔ)課程的建設(shè)是一個長期的、多樣化的、動態(tài)變化的過程,他校的有效經(jīng)驗并不一定適合本校的特點。因此,在具體實施過程中,還應(yīng)結(jié)合實際情況,經(jīng)過不斷探索,才能制定出適合本校的實施方案。