摘要:“基于問題學習”(Problem-Based Learning、簡稱PBL)模式是由當前盛行的建構(gòu)主義學習理論衍生出來的。本文探索了“高級語言程序設(shè)計(VC++)”課程新的教學方式,教學實踐證明PBL模式利于發(fā)揮學生學習的主動性、能動性、獨立性,增強學生的編程能力,發(fā)展與提高學生的創(chuàng)新意識和實踐能力。
關(guān)鍵詞:PBL模式;程序設(shè)計;自主學習
“高級語言程序設(shè)計(VC++)”課程是我校為非計算機專業(yè)理工類學生掌握和應用計算機而開設(shè)的通識性計算機基礎(chǔ)課程之一,是大學生入學后的第一門程序設(shè)計課程。建立程序設(shè)計思想、培養(yǎng)基本的程序設(shè)計能力與應用開發(fā)能力是該課程的主要目標。
傳統(tǒng)的程序設(shè)計類課程教學中,教學過程以語法知識為主線進行線性教學,從概念到算法,再到語法的步驟,側(cè)重于語法知識的傳授而忽視了編寫程序、調(diào)試程序能力的培養(yǎng),學生始終處于被動地位。在課程教學結(jié)束時,學生往往覺得對該課程所學到的知識很茫然,有的能讀懂簡單的程序,有的連最基本的程序結(jié)構(gòu)都不能掌握,在面對一個實際問題時無從下手,更談不上編寫出正確的程序。這樣的結(jié)果一方面對學生的學習積極性是很大的打擊,另一方面對學生學習與之相關(guān)的后續(xù)課程有很大的影響。由此可見,傳統(tǒng)的教學方法對程序設(shè)計類課程的教學并不適合,必須改變教學模式,才能達到課程教學的目的。
為此,我們在計算機教學改革過程中,對程序設(shè)計類課程教學引入了新的教學理念和方法——基于問題的學習模式,以程序設(shè)計為主線組織教學,授課重點放在程序設(shè)計方法、算法設(shè)計與實現(xiàn)上,以培養(yǎng)學生的實際編程能力為目標,講課直接從問題入手,啟發(fā)學生思考,引導學生在問題解決中構(gòu)造算法進而掌握相關(guān)的概念、語法、功能及應用。這樣不僅能發(fā)揮學生的主體性,培養(yǎng)學生的好奇心與創(chuàng)造力,還能使學生學會學習,有效地解決問題。
1基于問題的學習模式
1.1基于問題的學習模式概述
基于問題的學習PBL (Problem-Based Learning),最初于20世紀60年代,由美國的Howard Barrows教授提出,并應用在加拿大McMaster大學的醫(yī)學教育中,在近40年的發(fā)展和推廣過程中,PBL教學方法已經(jīng)為醫(yī)學教育之外的許多學科教育所采用。
PBL是基于現(xiàn)實世界的問題、以學習者為中心的教學模式,強調(diào)把學習設(shè)置到有意義的、綜合性問題情景中,通過學習者的合作與不斷反復、改進來解決實際問題,達到學習隱含在問題背后的科學知識的目的,并形成解決問題的技能(Problem-solving Skills)、自主學習的能力(Self-directed Learning Skills)和團隊協(xié)作的技巧(Team Skills)[1-2]。
1.2PBL的三個基本要素
PBL的三個基本要素包括:問題情境、學生和教師[3]。
問題情境是課程的組織核心,也是學習的開始,問題作為學習的最初動機和挑戰(zhàn),它的結(jié)構(gòu)是不明確的,沒有簡單、固定、唯一的正確答案,但它能激起學生探索、尋求解決方法的欲望,構(gòu)建繼續(xù)學習的需要和聯(lián)系。當學生身處可以從多個角度看待事物的環(huán)境時,問題情境可以吸引并維持學生的興趣,使他們積極地尋求解決問題的方法。期間,學生是致力于解決問題的人,他們識別問題的癥結(jié),尋找解決問題的良好方法,并努力探求、理解問題的現(xiàn)實意義,成為具有自主學習能力的學習者。教師是學生解決問題時的工作伙伴,也是學生解決問題過程中的指導者,為學生積極創(chuàng)造出一種支持開放性探究學習的環(huán)境[4]。
1.3PBL與傳統(tǒng)教學模式的比較
(1) 傳統(tǒng)教學模式。往往有固定的內(nèi)容,基本統(tǒng)一的教學程序,以“講授—演示”的形式給學生傳授
知識,用一些結(jié)構(gòu)良好的問題編成試卷,測試學生是否掌握了知識。簡單說就是老師教,學生學。學生的被動學習使其缺乏主動性與參與性,學生為學習而學習,為考試而學習,考前死記硬背,考后很快忘記,喪失了學習的興趣,同時學生也缺乏自學能力和創(chuàng)新能力的培養(yǎng)。
(2)PBL教學模式。把學生置于混亂的、結(jié)構(gòu)不良的情境中,并讓學生成為該情境的主人,讓學生自己去分析問題,學習解決該問題所需的知識,一步步的解決問題。教師把實際生活中的問題設(shè)計為教學材料,不斷激發(fā)學生去思考、探索、最終解決問題。簡單說就是學生學,老師幫。PBL教學模式可以提高學生的素質(zhì)教育,包括自學能力、思維能力等方面的教育[5-6]。
2PBL在教學實踐中的應用
2.1PBL的基本操作步驟
對于PBL的過程,不同的學者提出不同的模型,我們采用了布迪(David Boud)和弗來悌(Grahamel Feletti)提出來的實施策略模型,把基于問題的學習過程分為4個環(huán)節(jié):
(1) 給學生呈現(xiàn)一個問題(例如一個個案、研究論文、錄像帶等)。學生以永久小組形式組織與問題相關(guān)的已有知識和思想。
(2) 通過討論,學生以疑問的形式提出問題的不解之處,并圍繞這些疑問進行討論。
(3) 學生按照重要程度給學習要素排序,決定哪些問題由全組負責研究,哪些問題由個人負責研究,然后教給組里的其他人。
(4) 把學生重新召集起來,共同探討學習要素,把獲得的新知識運用于問題情境。隨著問題的解決,學生繼續(xù)明確需要研究的學習要素。
2.2PBL教學案例
從PBL的實施過程可以看出,PBL的關(guān)鍵在于通過提出和解決問題實現(xiàn)知識經(jīng)驗的建構(gòu),在于設(shè)計一個問題作為學習的起點[7]。在“高級語言程序設(shè)計(VC++)”課程教學中,由教師根據(jù)教學的內(nèi)容與目標來進行問題情境的設(shè)計。以下是我們采用PBL模式實施教學的一個具體案例。
本次課的教學內(nèi)容是循環(huán)的使用,目的是使學生理解循環(huán)的流程,學會使用VC++中的循環(huán)語句(for,do-while和while)解決具有重復操作的實際問題。重點是循環(huán)的實現(xiàn),難點為循環(huán)過程的理解,即循環(huán)的過程并不是簡單的重復過程,而是以某一終結(jié)點為目標的螺旋式過程。具體的實施步驟如下:
(1) 教師給出問題情境。兩個同學之間通過紙條傳遞信息,為防止他人明白紙條內(nèi)容,約定使用英文并對其加密,加密規(guī)則為:將原文中的字母用字母表中其他的字母替換,其它字符不變。由于人工轉(zhuǎn)換太麻煩,請大家?guī)椭@兩個同學設(shè)計加密與解密程序。
問題情境的設(shè)計依據(jù)是教學內(nèi)容和教學目標,做到有的放矢。教師在創(chuàng)設(shè)具體問題情境時,要順應學生的認知規(guī)律,能充分利用學生已有的經(jīng)驗,并考慮學生的理解程度、盲點和誤區(qū)。問題情境的表現(xiàn)形式可以有多種,如生活中的實際問題,趣味性的故事等。
(2) 學生分小組開展討論,提出疑問。如加密規(guī)則中字母替換的規(guī)律(加密過程和解密過程)是什么,加、解密過程如何選擇,紙條內(nèi)容如何輸入,如何判斷紙條內(nèi)容是不是字母,如何進行字母的轉(zhuǎn)換、如何處理多個字母,怎樣知道紙條中的內(nèi)容已處理完等。
(3) 小組分工,解決以上的疑問。由小組討論問題處理的流程,確定程序的主體結(jié)構(gòu),由小組成員根據(jù)自己的具體情況選擇任務(解決以上的疑問),利用教科書自主學習,在此過程中,小組成員之間要積極交流,互助互教,主動解決問題,完成任務。各自的任務解決方案以程序段的形式提交,并讓其他成員理解。最后各小組匯總每個成員的程序段,組合成一個完整的程序,并對該程序中的細節(jié)進行必要的修正、完善。
在(2)和(3)步驟中,教師以流動指導者身份出現(xiàn),在各小組之間巡視查看學生的學習過程,掌握學生的學習進度,并適時引導學生對問題進行深入分析,鼓勵學生多交流、主動尋找解決問題的方法,但一定要注意,教師只能逐步對學生進行提示和引導,指點學生學習的方向,不能明確告訴學生具體的解決方法,要讓學生的思維一直處于活躍狀態(tài),如在完善程序時,可以引導學生尋找修改的切入點,但不能直接指出要修改的位置,甚至幫學生修改。
(4) 總結(jié)。首先從各小組抽取一個成員進行總結(jié),介紹解決此問題的算法及每個疑問解決的方法,并對自己的程序進行評價,提出繼續(xù)探究的方向。然后由教師總結(jié),重點是循環(huán)部分如何實現(xiàn),提醒學生
注意循環(huán)的準備、循環(huán)過程、循環(huán)終止條件的設(shè)定等,并提出新的問題有待學生探究,如在程序中如何保存紙條內(nèi)容(原文和密文),如何將紙條內(nèi)容長期保存,循環(huán)還可以解決哪些實際問題等。
2.3PBL教學中的得與失
經(jīng)過“高級語言程序設(shè)計(VC++)”課程的PBL教學實踐,筆者有以下一些體會。
(1) 對程序設(shè)計類課程教學中采用PBL模式,對于編程能力較弱的非計算機專業(yè)學生來講是最容易接受,在教學效益方面具有獨特的優(yōu)點,也有很強的可行性。如果該課程的教學能直接在機房進行,能鍛煉學生的實踐能力,有助于提高學生實際編程能力、程序調(diào)試能力,使學生對語法和規(guī)則的理解更加深刻,課程的教學質(zhì)量將會得到進一步提高。
(2)PBL教學模式能充分體現(xiàn)程序設(shè)計與現(xiàn)實生活的相關(guān)性,基本能模擬實際的工作環(huán)境,經(jīng)過學習,學生能盡快建立程序設(shè)計思想。
(3) 由于采取了分組教學的方式,可以在小組間適當引入一些競爭機制,給學生增加些壓力,提高學生的心理承受能力與適應能力。
(4) 由于學生的水平存在差異,有部分水平較高學生容易產(chǎn)生個人英雄主義傾向,獨自一人承擔大部分工作;而部分水平較差的學生則有畏難情緒,回避一些關(guān)鍵性的、難度較大的工作。教師應當注意強調(diào)問題解決過程中團隊協(xié)作的重要性。
(5)PBL教學模式對教師的專業(yè)能力、課堂掌控能力要求較高。在開展PBL教學過程中,教師承擔著多種不斷變換的角色,要求教師有全面的專業(yè)素質(zhì)。
(6) 在實施操作中遇到了一些問題有待解決,如PBL模式屬于啟發(fā)式的教學方法,運用這種教學方式教學需要大量時間,有時會影響教學進度,導致整體教學任務難以完成;傳統(tǒng)的評教體系對PBL教學模式很不利,影響教師工作積極性。
3結(jié)語
筆者以PBL模式在“高級語言程序設(shè)計(VC++)”課程教學上的嘗試已取得初步成果,在教學中不僅僅完成了課程的教學任務,也使學生對程序設(shè)計有了比較深刻的理解,并能對所學的知識進行比較完整的概括與總結(jié)。課程完成之后,學生已經(jīng)具備了基本的程序設(shè)計能力與應用開發(fā)能力。
實踐證明,PBL作為一種新型的以學為主的教學模式,教師通過設(shè)計映射真實世界問題的學習情境,引起學生的學習興趣,結(jié)合教學實際,因勢利導,在引導學生自主學習中適時地對學習方法進行指導,不僅能讓學生學會“課程內(nèi)容”,而更重要的是學會“學習”,具備在未來的工作中,科學地提出問題、探索問題、創(chuàng)造性地解決問題的能力。因此,PBL教學模式是一個幫助學生提高能力,能適應未來職業(yè)要求的教學模式。
參考文獻:
[1] PBLI. PROBLEM-BASED LEARNING[EB/OL]. http://www.pbli.org/pbl/pbl.htm.
[2]Peter Schwartz,Stewart Mennin, Graham Webb.Problem —based learning:case studies,experience and practice[M]. London:Kogan Page,2001(3):182.
[3] 謝仁恩,陳曙光. 淺探PBL在大學計算機基礎(chǔ)課程教學的應用[J]. 現(xiàn)代企業(yè)教育,2008(18):169-170.
[4] 韓瑋娜,常亮,閻芳. PBL教學中教師的轉(zhuǎn)變及作用[J]. 數(shù)理醫(yī)藥學雜志,2008(4):495-497.
[5] 雷勇,夏健剛. 基于PBL的電工學課程教學改革探討[J]. 高等理科教育,2008(5):76-80.
[6] 林銳利,劉芳. PBL教學與我國高校教學現(xiàn)實適用情況探討[J]. 黑龍江教育:高教研究與評估,2008(1/2):98-100.
[7]Diana HJM Dolmans, Willem De Grave, Ineke HAP Wolfhagen,et al. PBL:教育實踐和研究的未來挑戰(zhàn)[J]. 梅人朗, 編譯. 復旦教育論壇,2008(1):81-86.
The PBL Model’s Application in Course Teaching of Computer Programming
CHANG Ben-qin
(Nanxu College, Jiangsu University of Science and Technology, Zhenjiang 212004, China)
Abstract: The PBL model is derived from the current prevalence of constructivism theory. In this paper, practice in course teaching of computer programming (VC++) proved that teaching method of PBL is beneficial to raising students’ autonomous learning ability and activating their learning enthusiasm and interest and improving programming abilities.
Key words: PBL model; programming; autonomous learning
(編輯:彭遠紅)