師文浩,朱顯峰,刀 偉,李冬艷,張建留
(1.云南師范大學信息學院,昆明 650500;2.個舊市第二中學,云南個舊 661000)
皮亞杰認知發展理論對《計算機程序設計》課程教學的啟示
師文浩1,朱顯峰2,刀 偉1,李冬艷1,張建留1
(1.云南師范大學信息學院,昆明 650500;2.個舊市第二中學,云南個舊 661000)
皮亞杰認知發展理論體系對兒童心理發展和教育研究產生了巨大的影響,對教學活動有很好的指導作用。根據皮亞杰的理論,《計算機程序設計》課程教學應注意以下幾點:根據學生需要設置課程,激發學習動機;順應學生的認知發展情況;教學內容安排應螺旋上升;重視實踐活動;通過分析學生的學習過程發現問題;鼓勵學生采用小組協作方式學習。
皮亞杰;認知發展;程序設計;教學
皮亞杰(Jean Piaget)是心理學歷史上最具影響力的發展心理學家之一,同時也是一位博學多才的大家。他于1918年獲得生物學博士學位,并把生物學的原則和方法運用到人類發展的研究當中,同時對哲學和邏輯學也進行過研究學習并對其日后在心理學方面的研究產生了重要影響〔1-2〕。皮亞杰一生著作頗豐,包括《發生認識論原理》《結構主義》等70多部著作。對后世的兒童發展與青少年教育產生了深刻的影響。盡管今天皮亞杰的理論在很多方面受到了質疑和挑戰,一些新的發現也對他的理論體系做出了修正,但是其基本觀點和大部分內容依然受到教育界的追捧,在啟發和指導著教育者改進和完善教學。
1.1 發展的本質皮亞杰認為,兒童發展并不是決定于外部環境,也不是決定于有機體內部,而是依賴于兒童與周圍環境的互動,亦即“活動”決定了發展。
兒童和成人內心都有一個用于組織和加工信息的“認知結構”,或者叫做“圖式”,我們利用“圖式”來對應現實世界中的事物并與之交互。在交互的過程中,根據自身已有的“圖式”來解釋新事物(即“同化”)。當出現的新事物無法被理解的時候,就更新已有的“圖式”使之能夠與新事物的特征對應(即“順應”)。這樣的過程是外部刺激打破了原有認知結構的平衡,而認知主體需要通過某種方式來改造或重建圖式,以達到新的平衡。因此發展的過程實際上是一個“平衡—不平衡—平衡”的過程。它不是一個數量不斷增加的累積過程,而是一個認知結構不斷重新組合、構建,產生質的區別的過程〔3〕。建構的過程如圖1所示。

圖1 認知結構建構過程
1.2 發展的階段皮亞杰將兒童和青少年的認知發展劃分為4個階段:感知運動階段、前運算階段、具體運算階段和形式運算階段。
第一階段,感知運動階段(0~2歲)。這一階段的嬰兒或兒童主要是通過感覺和動作技能來與外界交互,探索世界。這一階段嬰兒的主要成就是思維開始萌芽,并且逐漸形成“客體永久性”。
第二階段,前運算階段(2~7歲)。這一階段的兒童語言與概念發展迅速。但是他們的思維是單維的和不可逆的,往往只注意事物的一個方面而忽視了其余方面,或者只注意狀態而不注意過程。“自我中心”也是這個階段的特點。
第三階段,具體運算階段(7~11歲)。這個階段的兒童能夠形成概念、發現關系、解決問題,但是所有這些都必須與他們熟悉的物體和場景有關〔4〕。
第四階段,形式運算階段(11歲至成人)。形式運算階段的兒童逐漸開始可以像成人一樣思維,能夠理解假設的和抽象的情況,并且能夠將形式與內在進行區分開來。
皮亞杰認為,兒童發展的4個階段是以不變的、常恒的順序進行的。任何兒童的心理發展都是以固定的順序進行的,不能夠跳過其中的某個階段而直接進入下一個階段,也不能夠將順序進行顛倒,這是具有普遍性的。但是,不同的兒童經歷不同階段的速度可以不盡相同。
盡管在當今的心理學界和教育界,皮亞杰的理論在一些方面受到了質疑和挑戰,一些心理學家和教育工作者或者改進實驗方法,或者提出新的理論來不斷修正皮亞杰的理論體系,并且出現了“新皮亞杰主義”,但是皮亞杰的理論對于教育教學的影響仍然巨大,依然有許許多多的教育工作者在嘗試將皮亞杰認知發展理論應用到相關教學工作中〔5-15〕。
《計算機程序設計》是大中專院校計算機相關專業的基礎課,在一些高校甚至在全校范圍內開設該課程(面向理工、文史、藝體等專業學生),還有一些高中也開設有程序設計類的入門課程。從筆者在不同類型的學校(本科、大專、中專、培訓機構)針對不同專業的學生(計算機、文史、藝體等)的教學經驗來看,盡管各級各類學校對于該課程都比較重視,教師投入精力也不少,但是教學效果卻不盡如人意,學生普遍反映比較難以掌握該門課程。如何有效地進行《計算機程序設計》課程的教學,是一個值得探討的問題,從皮亞杰認知發展理論體系里,我們可以得到一些有用的啟示。
2.1 課程設置要考慮學生需要,激發學生的學習動機根據皮亞杰的理論,認知發展產生的原因不是外界環境的刺激,也不是有機體內部的變化,而是來自有機體與環境的交互。也就是說“活動”是認知發展的根本原因。皮亞杰反對把兒童看成是一個依賴的變量,主張兒童是一個主動的接受者,認識的獲得是在兒童與外部世界相互作用過程中逐步建構的〔3〕。因此,學生是否能夠較好地掌握《計算機程序設計》的知識,關鍵是他是否主動地在內部建構了這個知識的體系并填充了內容。
筆者同時承擔了計算機等級考試培訓機構的《二級程序設計》課程和本科學校的公共課《計算機程序設計》課程的教學任務,在不同的機構里教授的內容基本相同,講授方法大體一致,授課對象的年齡和學歷特征也比較接近(都是大學一、二年級非計算機專業學生,之前基本沒有進行過程序設計的學習),但是授課結果卻大相徑庭。培訓機構的學生計算機等級考試二級過關率超過50%,而學校里的學生在更為簡單的期末考試中的及格率卻達不到50%。究其原因,筆者認為主要是與學習動機有關,培訓機構的學生都是抱著通過“全國計算機等級考試二級”的目的來學習的,他們的學習動機很高,在學習過程中愿意積極主動地進行思考并與教師互動,在此過程中建構了自己的知識結構,因而能夠取得較好的成績。而在本科學校里的授課對象主要是藝體專業的本科生,他們大多對于課程無需求,覺得與自己的專業沒有關系,只不過是“被動”接受學校安排,“迫于無奈”才來上課,因此自然不會積極主動地去建構自己的知識體系,學習結果較差。
我們認為,要想使學生較好地掌握《計算機程序設計》課程知識,取得好的成績,教師的首要任務是幫助學生激發學習動機,給學生分析課程將會給他們帶來哪些好處,教師可以從專業需要、思維鍛煉、幫助就業等方面鼓勵學生學習。在教學過程中應當多采用吸引學生的案例來進行教學。要將課程與他們的專業結合,例如,利用程序設計對物理公式進行推導,對化學公式進行計算等等。當然,對于課程的安排,還是應該多考慮專業的需要,對于文史類學生和藝體類學生是否需要學習《計算機程序設計》,還是要進行斟酌的。只要確實是從學生的需要出發設置課程,并激發出學生的學習動機,要想取得好的成績并非難事。
2.2 教學內容應適應學生的認知發展情況筆者在不同的學校任教發現,同一門課中同一章節的內容,用同樣的方法講授,中專學生的接受能力相較于本科學生來說要差。往往本科學生講一遍就能夠理解的內容,要對中專學生講很多遍才能使其理解。
雖然根據皮亞杰的理論,11歲以后直至成人都已經進入形式運算階段,但是顯然由于閱歷和學習容量的不同,中專學生與本科學生的認知結構還是不一樣的。中專學生的知識基礎是初中水平,而本科學生則比他們多了高中知識的儲備,他們所建構的認知結構應當更為龐大和完整,因此在學習《計算機程序設計》的過程中會更加容易地把新的內容“同化”到認知結構中,而中專學生則可能要反復修正認知結構(即“順應”)才能掌握新的知識。
教師在教學之前,應當首先分析學生的認知情況,根據學生的認知特點采用合適的教學策略,選擇貼近學生的案例來進行教學。對于認知結構相對“簡單”的學生,要多一些耐心,采用更加具體形象的方法來引導他們。
2.3 教學內容安排應螺旋上升,不斷打破學生的平衡并幫助建立新的平衡認知發展的過程是一個“平衡—不平衡—平衡”的過程。學生在學習的過程中只有感受到了不平衡,才會主動地去選擇將知識“同化”到認知結構中或者讓認知結構修正以后去“順應”新的知識,教師的任務是幫助學生打破已有的平衡,為新的建構創造條件,但是又要注意幫助他們將新的平衡建立起來,否則只有“破”而無“立”,很可能使學生失去學習的積極性。
在講授《C程序設計》中的“while循環”知識點的時候,筆者給學生引入了一個例子:
“由于老師太胖了,因此決定每天跑步來進行減肥,老師給自己設定的目標是每天跑5圈。那么老師跑步的時候是怎么做的呢?沒有跑的時候圈數是0,每跑完一圈,老師心里記著的圈數加1,然后不停重復,直到圈數是5的時候,老師知道數量夠了,于是就停下來了。這就是一個循環的例子。”
到這里并沒有打破平衡,因為這是一個正常人的思維方式,學生可以不假思索地理解這個例子。
接下來通過一個問題打破平衡:“在C語言的while循環方法中,這個例子應該用什么樣的格式進行表示呢?”

然后老師給學生講解while循環的基本結構和運行規則,幫助學生建構新的認知結構,學生通過這個例子基本掌握while循環的基礎知識,新的平衡建立起來。
當學生的平衡建立起來以后,教師拋出新的問題:“如果有一次,老師沒有跑完5圈,但是腿受傷了,只得休息,怎么表示?”學生的平衡再次被打破。

老師給學生講解循環過程中需要中斷的時候采用“break”語句,學生建立起新的平衡。
隨著這個例子的不斷變化,逐漸復雜,學生比較清晰地掌握了while循環的知識,效果較為理想。
2.4 重視“活動”對學習效果的影響皮亞杰理論中認知發展實現的關鍵就是“活動”,即有機體與外界的交互。正是在“活動”的過程中逐漸實現了認知結構的“同化”和“順應”,因此,“活動”對于教學效果會產生重要影響。尤其是對于《計算機程序設計》這種重實踐能力的課程來說,更是應當足夠重視。
學生在實際操作計算機進行程序設計的過程中,不斷發現錯誤和改進錯誤,加深和鞏固課堂理論知識的理解,重新修正自己的認知結構。
筆者在教學過程中,對于難以“入門”的學生,往往強制要求他們上機完成某一項或幾項實際操作任務,學生在完成之后通常發現程序設計并不是像想象中的那么難,從而激發起學習的信心和欲望來。
教師應當盡量利用實驗、課程設計等實際操作的機會鼓勵學生多動手。當然,對于實際操作內容的編排,應該做到不僅考慮教學進度的需要和教材的匹配,更要考慮到學生的認知能力,盡量安排對他們有一定的挑戰同時又是經過努力可以完成的內容。
2.5 著重分析學生的學習過程,而不只是看到結果認知結構的形成是通過“活動”來實現的,在學生的學習過程中,除非他對知識點“視而不見”,否則只要學生進行思考,就一定能夠建構起一個屬于他的認知結構。
在《計算機程序設計》的教學過程中,尤其是對于“指針”、“遞歸”等較為復雜的知識點,學生往往出現各種各樣的錯誤。這正是由于他們構建了與“標準”不符的認知結構,但是這樣的結構在他們的認知體系里,其實是合理的,符合他們的認知邏輯的。
對于出現的這樣那樣的錯誤,教師不應該簡單地批評或者只是對他們重復嘮叨“正確答案”,而是應該分析出錯的原因,是不是學生壓根就沒有進行認知結構的建構,如果學生確實主動建構了,那么要幫助他們分析建構的過程,找出出錯的環節,幫助他們修正已有的認知結構。
2.6 要認識到個別差異,鼓勵學生采用小組協作方式學習皮亞杰自身也承認,盡管兒童發展的4個階段是以不變的、常恒的順序進行的,不能跳躍或顛倒順序,但是不同的兒童經歷不同階段的速度可以不盡相同。有的個體或者種族甚至終其一生都沒有進入到形式運算階段。
也就是說個體與個體之間的認知發展是存在差異的,這種差異可能表現在對知識點的掌握程度不同,也可能表現在理解的角度和運用知識的方法不同。《計算機程序設計》是一門開放的課程,除了基本概念的掌握以外,更重要的是要鍛煉學生的邏輯思維、創造力和解決問題的能力。教師應該鼓勵學生以小組協作的方式學習,這樣一方面可以使理解知識相對困難的學生得到同伴的幫助(通常比教師的幫助更有效),另一方面可以使學生接觸到其他同伴的不同的思維,從而不斷打破他們的平衡,不斷修正和更新認知結構。
皮亞杰的理論其實遠不止局限于前文所述,對于教育教學的影響也超過了文中涉及的主題。然而教育理論與教學實踐的結合并不是一蹴而就的,需要教育工作者們在教學實踐中努力探索發現,一點一滴地將優秀的教育理論融入到實際工作當中,不斷地“同化”和“順應”我們對教學的認識,提高我們的教學水平。
〔1〕皮亞杰.發生認識論〔M〕.范祖珠,譯.北京:商務印書館,1990.
〔2〕斯萊文.教育心理學(理論與實踐)〔M〕.姚梅林,譯.北京:人民郵電出版社,2004.
〔3〕陶云,高飛.皮亞杰理論對教育的主要影響〔J〕.云南師范大學學報:哲學社會科學版,1993,25(3):63-67.
〔4〕皮亞杰.發生認識論原理〔M〕.王憲鈿,譯.北京:商務印書館,1982.
〔5〕方勤華.皮亞杰認知發展理論及其對數學教學的啟示〔J〕.周口師范學院學報,2009,26(5):154-156.
〔6〕申春雪.皮亞杰理論在開放教育《計算機數學》課堂中的應用〔J〕.河南廣播電視大學學報,2003,16(1):70-71.
〔7〕鄭翔.皮亞杰教育理論在數學教學中的應用〔J〕.安康師專學報,2004,16(2):121-124.
〔8〕劉金明.皮亞杰認知發展理論在素質教育中的應用〔J〕.天津市教科院學報,2001(6):43-47.
〔9〕姜虹.皮亞杰認知發展過程理論對語文閱讀教學的啟示〔J〕.現代語文,2007(11):58.
〔10〕陳傳寶.從皮亞杰認知發展論看思想政治工作〔J〕.溫州大學學報,2003(2):101-103.
〔11〕梁倉.建構主義學習理論在中專計算機課堂教學中的運用研究〔J〕.今日南國,2010(10):31.
〔12〕劉靜.皮亞杰認知發展理論視野下的中小學音樂教育研究〔D〕.石家莊:河北師范大學,2010.
〔13〕陳瑞芳,鄭麗君.皮亞杰認知發展理論及其對當代教育教學的啟示〔J〕.當代教育論壇,2007(10):31.
〔14〕余小波.皮亞杰認知發展階段理論及其對教學的啟示〔J〕.長沙電力學院學報:社會科學版,2001,16(4):113-115.
〔15〕孫清祥.論皮亞杰認知發展階段理論及其對教育的啟示分析〔J〕.南昌高專學報,2012(1):64-66.
The Enlightenment of Piaget's Theory of Cognitive Development to Computer Programming Teaching
SHI Wenhao1,ZHU Xianfeng2,DAO Wei1,LI Dongyan1,ZHANG Jianliu1
(1.School of Information Science and Technology,Yunnan Normal University,Kunming 650500,China;2.Gejiu No.2 Middle School,Gejiu,Yunnan 661000,China)
Piaget's theory of cognitive development has huge influence on the field of children’s psychological development,which is good to guide teaching activities.By Piaget's theory,we should note the followings in the teaching process of Computer Programming:set up course according to students'need;inspire the motive of students;be responsive to students'cognitive development;teaching content should be spiral;attach importance to practical activity;find problems by analyzing the students'learning process;encourage students to coordinate study.
Piaget;cognitive development;programming;teaching
G40
A
1672-2345(2013)04-0069-05
2012-09-11
師文浩,碩士研究生,主要從事課程與教學論、教育信息技術研究.
(責任編輯 袁 霞)
10.3969/j.issn.1672-2345.2013.04.019