摘要:在介紹圖式理論概念的基礎(chǔ)上,分析程序閱讀的心理構(gòu)建過程,提出將圖式理論應(yīng)用于程序設(shè)計語言教學(xué),通過幫助學(xué)生主動構(gòu)建形式圖式并鞏固已有圖式,取得良好的教學(xué)效果。
關(guān)鍵詞:圖式理論;程序設(shè)計語言教學(xué);程序閱讀
1 問題的提出
程序設(shè)計語言類課程是面向所有專業(yè)一年級學(xué)生開設(shè)的計算機基礎(chǔ)課程,以南華大學(xué)為例,非計算機專業(yè)為4學(xué)分64學(xué)時,工科采用c語言,文科選用VB語言。課程目的是通過學(xué)習(xí)程序設(shè)計語言,掌握基本的程序設(shè)計思想和編程方法,具備運用程序分析解決實際應(yīng)用問題的能力。目前教學(xué)中普遍存在教學(xué)課時短、學(xué)生基礎(chǔ)參差不齊、教學(xué)以“語言”為主、上機以“驗證”為主、考核方式單一、重語言輕應(yīng)用等問題,導(dǎo)致部分學(xué)生不知學(xué)為何用,甚至滋生厭學(xué)情緒,致使教學(xué)質(zhì)量不高。從語言學(xué)角度看,程序設(shè)計語言與外語同屬語言范疇,可借鑒外語教學(xué)取得的研究成果與成功經(jīng)驗。
2 理論基礎(chǔ)
圖式記憶結(jié)構(gòu),包括語言知識、社會知識、文化知識等。1932年,英國心理學(xué)家Bartlett首先使用了圖式(Schema)這一概念,用來解釋人類的高級心理活動。1980年,美國人工智能專家Rumelhart進(jìn)一步發(fā)展完善了這一理論。圖式是大腦為了便于信息存儲和處理,而將新事物與已有的知識、經(jīng)歷有機地組織起來的一種知識表征形式,是相互關(guān)聯(lián)的知識構(gòu)成的完整的信息系統(tǒng)。
圖式理論的主要觀點是,人們在理解新事物時,需要將新事物與已知的概念、過去的經(jīng)歷及背景知識聯(lián)系起來,對新事物的理解和解釋取決于頭腦中已經(jīng)存在的圖式。圖式能促進(jìn)理解,也可阻礙理解。如果輸入的信息與記憶中的圖式結(jié)構(gòu)不一致,會導(dǎo)致兩種情況,一種是拒絕接受與自己原有概念相反的信息;另一種是修正、增補原有的知識結(jié)構(gòu)、盡可能與新的信息一致。圖式理論將閱讀過程解釋為讀者所具備的背景知識和閱讀材料相互作用的過程。這種對讀者運用圖式知識進(jìn)行語言理解和文本解讀的闡述就是圖式理論,現(xiàn)已被廣泛用于語言研究和閱讀研究。
根據(jù)圖式理論,程序閱讀的心理構(gòu)建過程基于兩個方面:一是程序文本提供的新信息;二是讀者已有的相關(guān)知識,如程序設(shè)計范式。這一心理過程的完成要求讀者利用記憶中的編程語言知識,以及過去的經(jīng)驗、程序設(shè)計范式和背景知識對程序所傳遞的信息進(jìn)行加工編碼、聯(lián)想和預(yù)測,領(lǐng)會作者通過語言符號表達(dá)的意圖,從而達(dá)到與作者相互交流的目的。
按照圖式理論,學(xué)習(xí)者的圖式知識結(jié)構(gòu)分3種類型:內(nèi)容圖式(content schema):指文章內(nèi)容的背景知識,讀者對文章主題的熟悉程度;形式圖式(formal schema):指讀者對文章體裁結(jié)構(gòu)的理解程度;語言圖式(1inguistic schema):指學(xué)習(xí)者對詞匯、語法、習(xí)慣用法等語言知識的掌握程度及語言運用能力。
程序閱讀具有鮮明的學(xué)科特色,應(yīng)擴展圖式知識結(jié)構(gòu)內(nèi)涵,如表1所示,內(nèi)容圖式(content schema):指程序應(yīng)用的背景知識,如:N—tier、MVC、MVVC、ORM、SignalR等;形式圖式(formal schema):指一定的程序設(shè)計范式,如:順序、分支、循環(huán)、遞歸、控制流圖、事件響應(yīng)模型、ADO.NET數(shù)據(jù)訪問模型、Web生命周期、設(shè)計模式等;語言圖式(linguistic schema):指編程語言的基本符號集合、語句、對象、控件、屬性、事件、方法等。程序設(shè)計語言教學(xué)本質(zhì)上是以某種特定編程語言為基礎(chǔ),傳授程序設(shè)計思想。它強調(diào)思維的定式,而非局限于語法語義本身,所以教學(xué)核心是幫助學(xué)生在頭腦中構(gòu)建程序設(shè)計有關(guān)圖式,尤其應(yīng)注重形式圖式的訓(xùn)練。
外語教學(xué)以“聽說讀寫譯”為訓(xùn)練手段,程序設(shè)計采用“讀譯寫”作為訓(xùn)練方法?!白x”指閱讀代碼;“譯”指理解他人代碼,從代碼中抽象出思想,如算法、控制流、數(shù)據(jù)結(jié)構(gòu)等;“寫”指編寫程序解決應(yīng)用問題,將自己的解題思想用程序設(shè)計語言加以實現(xiàn)。3種方法都離不開對程序的閱讀理解,圖式理論是解釋閱讀過程的理論,所以教學(xué)中應(yīng)指導(dǎo)學(xué)生主動地運用圖式理論,改善程序閱讀效果,進(jìn)而提高程序設(shè)計語言教學(xué)質(zhì)量?!抖Y記·中庸》中使用“博學(xué)之,審問之,慎思之,明辨之,篤行之”來描述學(xué)習(xí)的層次,它指明了學(xué)習(xí)的一般規(guī)律。程序設(shè)計語言教學(xué)應(yīng)遵循這一規(guī)律?!白x”是基礎(chǔ),該階段應(yīng)博學(xué)、審問,即廣泛閱讀程序,掌握基本語法與常見范式;“譯”是提高階段,應(yīng)慎思、明辨,即分析對比程序;“寫”是最高階段,應(yīng)篤行,即學(xué)以致用,使用編程語言解決實際應(yīng)用問題。
3 教學(xué)中的應(yīng)用
根據(jù)上述分析不難得出以下結(jié)論,傳統(tǒng)教學(xué)模式以教師為中心,以語法為綱,主要分析講解語句,片面強調(diào)語法和算法的重要性,缺乏創(chuàng)新能力培養(yǎng),顯然有悖于圖式理論。因此,教學(xué)實踐中應(yīng)以學(xué)生為中心,以應(yīng)用HZrqgXiUzINjCoLmRl+4wA==為導(dǎo)向,以程序設(shè)計范式為核心,遵循“讀譯寫”學(xué)習(xí)規(guī)律,幫助學(xué)生主動地構(gòu)建形式圖式,激活擴充豐富已有圖式,培養(yǎng)創(chuàng)新能力、實際應(yīng)用能力。
3.1 構(gòu)建形式圖式
因為學(xué)生沒有任何程序設(shè)計基礎(chǔ),頭腦中也就不存在相關(guān)圖式,所以首先要幫助學(xué)生構(gòu)建程序設(shè)計圖式。根據(jù)圖式理論,認(rèn)知受已有圖式影響,因此構(gòu)建的圖式應(yīng)盡可能確保其質(zhì)量,這將影響今后學(xué)習(xí)。我們從Microsoft OneCodeSample與微軟示例項目中精心挑選閱讀材料,保證程序代碼遵循統(tǒng)一的命名規(guī)范、編碼、注釋和文檔規(guī)范。以1~2個項目貫穿教學(xué)全過程,每次課都有一個UI,既容易激發(fā)學(xué)生興趣,又可以作為示例模仿,課堂以形式圖式講解為主,輔以圖片動畫便于理解加深印象。因為語言圖式比較簡單而且IDE工具提供智能提示功能,因此這一部分由學(xué)生自學(xué)掌握。部分形式圖式案例,如表2所示。
3.2鞏固已有圖式
因為新信息的獲取質(zhì)量取決于已有圖式,盡早激活已有圖式有利于學(xué)生對新圖式的理解和掌握,為此教學(xué)中采用了以下措施:①每次授課先回顧上次內(nèi)容以激活已有圖式;②采用螺旋模型逐步增加新信息以豐富擴充已有圖式,如表3所示;③聯(lián)系生活實際,列舉現(xiàn)實生活中或?qū)W習(xí)中遇到的問題,說明如何用程序設(shè)計思想進(jìn)行解決;④邀請學(xué)生介紹課后練習(xí)的基本解題思路,與學(xué)生共同討論存在的問題及改進(jìn)意見,刺激學(xué)生的學(xué)習(xí)興趣,激發(fā)學(xué)好程序設(shè)計語言的欲望;⑤由學(xué)生上機實踐,解決應(yīng)用問題;⑥采取“書面考試+上機考試+綜合應(yīng)用”的考核方式,引導(dǎo)鼓勵學(xué)生學(xué)以致用。
4 結(jié)語
上述方案自2009年起在軟件工程卓越班實施以來,已先后培養(yǎng)了3批學(xué)生,收效顯著。與普通班比較,實驗班學(xué)生不但熟練掌握了編程語言語法,而且能運用程序設(shè)計思想獨立完成課堂示例與課后練習(xí),部分學(xué)生還編寫了宿舍管理、游艇出租管理、出租車計費等實際應(yīng)用程序,自主學(xué)習(xí)能力、應(yīng)用能力、創(chuàng)新能力明顯提升。
教學(xué)中應(yīng)注意以下幾個方面問題:①應(yīng)注重良好的工程規(guī)范,包括命名、編碼、文檔、注釋等;②教學(xué)設(shè)計時算法應(yīng)通俗易懂,結(jié)構(gòu)應(yīng)簡單明了,避免設(shè)計過度,盡量降低學(xué)習(xí)難度,培養(yǎng)學(xué)習(xí)興趣;③對普遍性問題,應(yīng)及時指導(dǎo)解決,注重同伴教育,可挑選能力強有責(zé)任心的學(xué)生擔(dān)任技術(shù)負(fù)責(zé)人,負(fù)責(zé)課下答疑i④應(yīng)有:意識地培養(yǎng)學(xué)生養(yǎng)成定期總結(jié)的習(xí)慣,鞏固已有圖式;⑤順應(yīng)學(xué)生溝通方式的改變,充分利用QQ、微博等現(xiàn)代信息技術(shù),對教學(xué)情況及時掌握與干預(yù);⑥充分利用網(wǎng)絡(luò)課堂等平臺,將知識顯式化,逐步形成組織知識。
圖式理論是解釋人理解客觀事物的心理過程,在程序設(shè)計語言類課程教學(xué)中科學(xué)運用圖式理論,改革教學(xué)模式與評價體系,指導(dǎo)學(xué)生主動地構(gòu)建其形式圖式、激活鞏固擴充豐富已有圖式,取得了良好的教學(xué)效果,值得借鑒推廣。