孫敏
(長春光華學(xué)院,吉林長春 130033)
教育部高等學(xué)校大學(xué)計(jì)算機(jī)課程教學(xué)指導(dǎo)委員會發(fā)布了 《大學(xué)計(jì)算機(jī)基礎(chǔ)課程教學(xué)基本要求》(以下簡稱《基本要求》)指導(dǎo)性文件,但在實(shí)際教學(xué)過程中,缺乏認(rèn)真解讀和系統(tǒng)的教學(xué)設(shè)計(jì)。因此,依據(jù)《基本要求》教學(xué)內(nèi)容知識體系總體架構(gòu)和教學(xué)體系,設(shè)計(jì)既符合應(yīng)用型高校培養(yǎng)目標(biāo)體現(xiàn)其專業(yè)價值,又能吸引學(xué)生參與互動的學(xué)習(xí)內(nèi)容研究,勢在必行。
經(jīng)過MOOC平臺的研究,以“C語言”為關(guān)鍵詞在常用的MOOC平臺中搜索相關(guān)課程,中國大學(xué)MOOC平臺返回107條相關(guān)結(jié)果;學(xué)堂在線平臺返回272條相關(guān)結(jié)果;愛課程平臺中返回43條相關(guān)結(jié)果。基于MOOC的混合式教學(xué)改革還需要繼續(xù)探索。已經(jīng)有新型教材,且有配套的多媒體教學(xué)資源。將現(xiàn)有的優(yōu)質(zhì)資源進(jìn)行整合,基于新型教材優(yōu)化課堂教學(xué)有待進(jìn)一步研究。
C語言程序設(shè)計(jì)的教學(xué)內(nèi)容呈“線性”組織,過于強(qiáng)調(diào)語法,忽略計(jì)算思維的培養(yǎng)。C語言語法知識多而雜,把知識按照這種簡單的鏈狀順序連接在一起,給學(xué)生造成認(rèn)知困難,也很難靈活提取知識解決實(shí)際問題。課堂教學(xué)教條化、模式化、單一化、靜態(tài)化的特點(diǎn)很難滿足新時代人才培養(yǎng)的需求。
2016年發(fā)布的《大學(xué)計(jì)算機(jī)基礎(chǔ)課程教學(xué)基本要求》將大學(xué)計(jì)算機(jī)基礎(chǔ)教學(xué)的知識領(lǐng)域由以前的4個調(diào)整為3個知識領(lǐng)域,C語言程序設(shè)計(jì)屬于 《基本要求》中提出的“寬專融”課程體系“專業(yè)型”課程類型中“程序設(shè)計(jì)基礎(chǔ)”的典型課程。
3.1.1 C語言程序設(shè)計(jì)課程知識體系的構(gòu)建
《基本要求》提出程序設(shè)計(jì)基礎(chǔ)的知識點(diǎn)分為兩種類型:“核心 1(統(tǒng)一必修)”“核心 2(分類必修)”,一般要求每個學(xué)生必須掌握“核心2”知識內(nèi)容的20%以上。參考《基本要求》中提供的“程序設(shè)計(jì)基礎(chǔ)(C語言)”課程典型教學(xué)方案,C語言程序設(shè)計(jì)課程知識框架設(shè)計(jì)6個知識模塊:程序與程序設(shè)計(jì)語言、數(shù)據(jù)與數(shù)據(jù)類型、程序控制語句、函數(shù)與模塊化程序設(shè)計(jì)、復(fù)雜數(shù)據(jù)類型、文件。每個知識模塊又劃分為若干個知識單元,共劃分為44個知識單元。各知識單元在教學(xué)內(nèi)容組織上循序漸進(jìn)向?qū)W生呈現(xiàn)知識點(diǎn)之間豐富的內(nèi)在聯(lián)系,打破知識點(diǎn)線程呈現(xiàn)的局限。
3.1.2 C語言程序設(shè)計(jì)涉及的計(jì)算思維及計(jì)算思維能力的培養(yǎng)
在教學(xué)內(nèi)容組織和教學(xué)過程中,需關(guān)注的計(jì)算思維培養(yǎng)重點(diǎn)包括核心概念:(1)算法、程序;(2)迭代、遞歸;(3)數(shù)據(jù)類型、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)組織;(4)重用性;掌握重點(diǎn):(1)理解算法、程序的概念;(2)掌握迭代、遞歸等基本方法;(3)了解典型問題算法求解策略;(4)理解常用數(shù)據(jù)類型和數(shù)據(jù)結(jié)構(gòu)的概念和作用;(5)了解程序模塊化設(shè)計(jì)思想。
在教學(xué)過程中有意識地培養(yǎng)和強(qiáng)化與本課程最相關(guān)的自動化、設(shè)計(jì)、評估、計(jì)算等計(jì)算思維方面的內(nèi)容。通過介紹算法概念和簡單算法介紹、遞歸函數(shù)設(shè)計(jì)等相應(yīng)的程序設(shè)計(jì)訓(xùn)練,使學(xué)生理解算法、迭代、遞歸,以及貪心法、分治法等簡單的算法設(shè)計(jì)思想,進(jìn)而理解計(jì)算機(jī)自動化的基本思想方法;通過介紹結(jié)構(gòu)化程序設(shè)計(jì)方法、函數(shù)設(shè)計(jì)等相應(yīng)的程序設(shè)計(jì)訓(xùn)練,使學(xué)生理解程序設(shè)計(jì)的模塊分解與復(fù)合、重用、信息封裝等軟件設(shè)計(jì)的基本思想;通過訓(xùn)練程序的調(diào)試、比較分析不同算法程序運(yùn)行效率,使學(xué)生理解評價指標(biāo)、基準(zhǔn)測試、容錯等程序評估思想和方法以及理解計(jì)算的復(fù)雜性。
學(xué)生組織知識的方式會影響其學(xué)習(xí)和運(yùn)用知識的方式。研究已表明,與讓學(xué)生自己推斷概念結(jié)構(gòu)相比,教師為他們提供適合于新知識的組織結(jié)構(gòu),可以使他們的學(xué)習(xí)效果更好、效率更高。只要能為學(xué)習(xí)者提供熟悉的知識組織結(jié)構(gòu),就可以提升學(xué)生的理解和記憶水平。課程教學(xué)內(nèi)容側(cè)重圍繞某個主題進(jìn)行組織,使學(xué)生能把每堂課上所學(xué)的知識聯(lián)系起來,通過內(nèi)容的螺旋式迭代,使學(xué)生在知識點(diǎn)間建立必要的聯(lián)系,達(dá)到學(xué)習(xí)新知識時能基于其原有的知識基礎(chǔ),以相互關(guān)聯(lián)的信息組塊,隨著學(xué)習(xí)的推進(jìn),將知識組織呈一個復(fù)雜的、相互關(guān)聯(lián)的結(jié)構(gòu)。
3.2.1 C語言程序設(shè)計(jì)教學(xué)資源的整合
C語言程序設(shè)計(jì)教學(xué)內(nèi)容以程序設(shè)計(jì)為中心進(jìn)行組織,根據(jù)知識點(diǎn)的內(nèi)在聯(lián)系設(shè)計(jì)教學(xué)模塊,在教材選用上,選用高等教育出版社何欽銘等主編的教材《C語言程序設(shè)計(jì)(第3版)》,其內(nèi)容組織強(qiáng)調(diào)以程序設(shè)計(jì)為主線,以案例和問題引入內(nèi)容,加強(qiáng)編程實(shí)踐的教學(xué)設(shè)計(jì)理念,與課程改革思路相符,而且有與其關(guān)聯(lián)的MOOC課程,中國大學(xué)MOOC平臺翁愷老師主講的《C語言程序設(shè)計(jì)》,教材還提供在線練習(xí)PTA網(wǎng)站http://pta.patest.cn,可以實(shí)現(xiàn)在線評分的功能。將MOOC課程視頻資源作為教學(xué)視頻資源,根據(jù)教學(xué)內(nèi)容重新組織教學(xué)視頻,通過學(xué)習(xí)任務(wù)單給學(xué)生設(shè)計(jì)每個教學(xué)單元的有效學(xué)習(xí)路徑,引導(dǎo)學(xué)生學(xué)習(xí)。
3.2.2 C語言程序設(shè)計(jì)教學(xué)內(nèi)容設(shè)計(jì)
教學(xué)內(nèi)容設(shè)計(jì)原則:首先介紹一些背景知識和利用搞計(jì)算機(jī)求解問題的過程,然后從實(shí)例出發(fā),介紹順序、分支和循環(huán)3種控制結(jié)構(gòu)以及函數(shù)的使用,使學(xué)生對C語言有個總體的了解,并學(xué)習(xí)編寫簡單的程序,激發(fā)學(xué)生學(xué)習(xí)興趣,然后逐步深入講解程序設(shè)計(jì)的思想和方法,說明如何應(yīng)用C語言解決問題[2]。
根據(jù)教材內(nèi)容框架,將44個知識單元重新組合,共72學(xué)時。將教學(xué)內(nèi)容分C語言程序設(shè)計(jì)基礎(chǔ)(30學(xué)時)、C語言程序設(shè)計(jì)進(jìn)階(20學(xué)時)、高級編程(20學(xué)時)三個階段。C語言程序設(shè)計(jì)基礎(chǔ)階段包含知識模塊:程序設(shè)計(jì)基礎(chǔ)、基本語法(整型、算術(shù)運(yùn)算符、控制結(jié)構(gòu)和函數(shù)基礎(chǔ))、程序設(shè)計(jì)思路和方法(分支、循環(huán)、函數(shù))、數(shù)據(jù)表達(dá)與數(shù)據(jù)處理(基本數(shù)據(jù)類型、表達(dá)式),首先使學(xué)生從程序基本框架入手,了解完整程序的一般組成,再深入展開,體現(xiàn)程序設(shè)計(jì)理念,知識點(diǎn)螺旋式迭代式展開,有利于學(xué)生理解程序設(shè)計(jì)的過程。C語言程序設(shè)計(jì)進(jìn)階階段包含知識模塊:構(gòu)造數(shù)據(jù)類型、指針、結(jié)構(gòu)。高級編程階段深入講解函數(shù)和程序結(jié)構(gòu)、指針和其他構(gòu)造類型在編程中的應(yīng)用、文件的使用等,通過典型案例和問題引入,循序漸進(jìn)地提高學(xué)生程序設(shè)計(jì)能力。
C語言程序設(shè)計(jì)是一門實(shí)踐性很強(qiáng)的課程,傳統(tǒng)教學(xué)中,圍繞C語言語法本身的體系展開內(nèi)容,學(xué)生學(xué)習(xí)困難,學(xué)習(xí)積極性不高,實(shí)踐動手能力差,在有限的學(xué)習(xí)內(nèi)得不到有效的計(jì)算思維訓(xùn)練。課程教學(xué)改革嘗試重組教學(xué)內(nèi)容強(qiáng)化以程序設(shè)計(jì)為主線,教學(xué)內(nèi)容呈螺旋迭代式展開,以編程應(yīng)用為驅(qū)動,加強(qiáng)編程實(shí)踐和計(jì)算思維培養(yǎng),嘗試線上線下混合式教學(xué)模式,通過“MOOC+SPOCs+翻轉(zhuǎn)課堂”推動本校的教學(xué)改革實(shí)踐,為同行提供教學(xué)參考。
創(chuàng)新創(chuàng)業(yè)理論研究與實(shí)踐2018年6期