吳世雯,劉青萍,穆珺,周燃犀,涂珊
摘 要:VB程序設計課程是高校計算機技術基礎的主要教學內容,其教學目標著重于培養學生分析和解決問題的思維能力。文章結合非計算機專業學生的認知特點和VB程序設計課程的培養目標,分析了傳統模式下的教學過程存在的問題,借鑒支架式教學中在學習者最近發展區建構概念框架的理論,進行了支架式教學模式各環節在VB程序語言教學中的應用探索,提高了學生學習的自主性和創新性。
關鍵詞:VB程序設計;最近發展區;概念框架;建構
中圖分類號:G642 文獻標志碼:A 文章編號:2096-000X(2017)18-0108-04
Abstract: VB programming course is the main teaching content of universities' computer technology foundation, aiming to train students' ideation in analyzing and solving problems. Combined with the cognitive characteristics of non-computer majors and the training objective of VB programming, this paper analyzes the existing problems in the traditional teaching mode. Referring to the theory of scaffolding construction in the learner's zone of proximal development, this paper explores the application of scaffolding teaching model in the study of VB programming language. The result shows that it improves the independence and creativity of students' learning.
Keywords: VB programming; zone of proximal development; conceptual framework; construction
當前,隨著教育理念的改善和更新,現代教育理論越來越注重調動學生學習的主觀能動性以提高教學效果的教學模式和方法。Visual Basic程序設計課程是教育部提出的大學生計算機技術基礎的主要教學內容,作為我校公共基礎課程,中醫藥類院校非計算機專業學生的學習興趣受其專業影響對課程的認識程度不夠,難以發揮其學習的主體性。由于課程的邏輯性強、抽象程度高,學生學習該課程時,缺乏理工思維,大大地影響其知識的積累和能力的提升。綜上所述,在VB程序設計課程的課堂教學設計中引入支架式教學理論,通過搭建概念框架,可以幫助學生更好地理解理論知識,鍛煉其分析和解決問題的計算思維,提高學生編程的實踐能力,提升課堂教學效果。
一、VB程序設計課程教學現狀分析
隨著教育信息化的發展,VB程序設計課程的目的在于培養學生建立系統化和工程化的思維方式解決實際問題的綜合能力和素質。課程通過程序設計的語言基礎和語句語法結構的理論教學,結合編程實踐,加強學生對理論知識的理解,提高學生的實際操作能力。VB程序設計課程教學目前存在的問題如下:
(一)學生缺乏學習興趣,難以發揮學習主體性
學生作為課堂教學的主體,被動接受新知識的傳統學習方式降低了教學的效果和學習的效率。一方面,該課程面向醫藥類院校非計算機專業學生,學生的學習受到所學專業和思維模式的影響,對課程的重視程度不夠。另一方面,傳統教學模式下,教師注重講授理論知識,沒有引導學生去了解和感受學習該課程對其綜合能力培養的重要性,學生對課程的學習沒有形成正確的認識。
(二)課程知識結構系統性強、抽象度高,學生理解和接受程度低
課程中理論概念的抽象程度高,以“填鴨式”的方法介紹各知識點的傳統教學方式,教師常著重于單個知識點的講述,忽略了闡述知識點的原理,在處理各知識點之間的聯系以及章節與章節之間邏輯關系時,沒有宏觀上為學生建立一個系統性強、層次分明的知識體系。因此,學生在學習新知識時,難以做到“知其然,并知其所以然”,不能以系統性、工程性的思維方式將新知識融入自己已有的知識結構中,形成新的知識體系。
(三)理論學習不能與實踐過程相匹配,難以達到教學目標
課程采用3課時+3課時的理論與實驗教學相結合的模式,授課教師在機房教授實驗內容,學生通過實際操作以鞏固理論知識。學生往往只著眼于復制實現實踐教材上各例題所涉及知識點的編程代碼,這種實踐模式僅是對單個理論知識點的驗證性實驗,缺乏整體性和連續性,限制了學生的探索性和創新性,學生很難達到靈活運用各理論知識點解決不同實際問題的教學要求。
二、支架式教學概述
根據歐共體“遠距離教育與訓練項目”(DGXⅢ)的有關文件對支架式教學的定義,這種教學模式是一種以維果斯基(Lev Vygotsky)“最近發展區”理論為基礎,通過認知建構主義理論中“概念框架”(Conceptual Framework)的支撐作用,逐步提高學習者原有認知水平,主動構建知識體系的一種教與學相結合的模式[1]。
維果斯基認為,“最近發展區”是人的認知的兩種發展狀態之間的距離,即能夠獨立解決問題的實際發展水平以及在外界幫助下才能夠解決問題的潛在發展水平之間的距離[2]。該理論指出,學習者的學習能力能夠借助外界幫助,從已有的實際認知水平發展到潛在可以達到的水平。因此,為促進學生認知水平的發展,教學應以學生認知的實際發展水平為基礎,在最近發展區為學生提供幫助和支持[3]。支架式教學將這個能夠發揮支持作用的外界幫助定義為“概念框架”,建構主義引用建筑行業“腳手架”(Scaffolding)來比喻概念框架的支撐作用[4]。以皮亞杰(J.Piaget)思想為核心的認知建構主義提出:學習者的認知水平在相對平衡、不平衡和新平衡狀態的循環中,通過與環境的“同化”、“順應”兩個基本過程,逐步得到發展和完善[5]。同化是認知結構內量的擴充,即學習者在接受新信息或新問題的刺激時,能夠把新刺激納入自己原有知識結構中,此時處于相對平衡狀態;順應是對原有認知結構性質的改變,即學習者現有認知水平不能同化新刺激、發生認知沖突時,因破環原有平衡而需要修改并重組原有知識結構、建構新知識體系,從而達到新的平衡狀態。因此,學習者在以原有認知結構建構新事物的過程中,教學應著眼于通過引入不同類型的腳手架并創建其所需學習情境,幫助學生深刻理解事物的性質、規律及事物之間的內在聯系,主動建構夯實的知識體系。
綜上所述,支架式教學模式的本質在于:教師為學生搭建概念框架,以引導的方式為學生創造理論知識學習的相關情境;學生在現有認知的基礎上,以概念框架作為知識學習的基本支架,發揮其學習的主觀能動性,逐步完成對新知識體系的自我建構;對于復雜知識的學習,應按照理解、掌握和運用的三級目標將學習任務加以分解,從演繹到歸納,引領學生從初步了解到深入理解。
三、支架式教學在VB程序設計課程教學中的應用
通過分析傳統模式下VB程序設計課程教學的現狀及存在的問題,對于復雜的結構化編程語言的語法結構及其應用,學生僅僅是被動的接受相關知識,而不能靈活地應用去解決問題。因此,作者借鑒“最近發展區”的思想,從理解、掌握和運用三個目標層面分解復雜的學習任務,從認知建構的角度將支架式教學模式引入到課程教學設計中并組織教學,其教學過程的主要環節如下:
(一)搭建支架
圍繞課堂教學內容,在“最近發展區”內搭建概念框架是展開支架式教學的基礎。對于編程語言中難以理解的結構化語句的語法結構及其運用,按照知識點的層級結構及其之間的聯系,構建層次分明、邏輯清晰的知識結構體系,并以此為基礎,搭建作為支撐的“腳手架”是幫助學生理解和掌握結構化語句的有效工具[6]。
學習結構化程序語言,語法結構是大多數非專業學生之前從未接觸過、相對陌生的知識。因此,借助學生已有的漢語句式結構的認知搭建一個概念型腳手架,能夠幫助學生理解其語法格式,掌握解決問題所需的認識和方法。漢語語句由字、詞和相關句式結構按照語法慣例連結而成,結構化編程語句也是由關鍵字和表達式按照其規定結構組成。以For...Next循環結構為例,其句式結構如下[7]:
For 循環控制變量 = 初始值 To 結束值 [Step 步長值]
循環體
Next 循環控制變量
循環語句結構規定以For開始、Next結束。該句式的基本結構是由for、to、next等關鍵字和一個描述循環開始與結束的表達式所組成,能夠完成一些操作不復雜、但需要反復多次處理的循環執行內容(循環體)。這個概念框架是學生學習結構化程序語言后,能夠獨立解決問題所需要的外界幫助。借助搭建的概念框架,可以以最直觀的方式將知識點展示給學生,通過發揮學生的理性邏輯思維能力,幫助其形成基礎知識架構。
(二)創造情境
“情境式”教學是一種常用的教學方法,創建情境服務于學生新知識體系的建構,是以概念框架為基礎的支架式教學的展開環境。借助概念框架,學生初步構建了程序語言句式結構的認知體系,而這個概念框架僅能發揮基礎支撐的作用,學生僅是被動地接受,不能很好地同化到原有的知識結構中。為了幫助學生更有效地利用概念框架,理解和掌握For...Next循環語句的結構和原理,教師可以圍繞教學內容積極地創造具體、形象的學習情境,將的理性知識與感性認識相結合,有助于學生主動建構新知識。
對于For...Next循環語句,概念框架所述句式結構是為了完成循環語句的功能,即解決需要反復多次地執行一些不復雜操作的相關問題。教學過程中可以結合學生熟悉或感興趣的事物,營造學習氛圍。通過描述為觀賞廬山三疊泉,需要從第1級臺階由上而下歷經3300個臺階后,到達目的地的旅游經歷,創建學習情境。對于重復爬臺階的活動,其目的在于反復執行動作以抵達目的地。可將自然語句分解為:1.反復執行的動作:爬臺階;2.動作開始和結束的條件:從第1級臺階開始、第3300級臺階結束;3.每次執行動作的結果:當前臺階的級數增加1。將其轉化為符號化的表達式。因此,對應關系如下:1.反復執行的動作:循環體;2.臺階的數量是決定爬臺階動作開始和結束的關鍵,其開始值和結束值控制動作執行的次數,即循環語句中的循環控制變量。通過定義臺階數量的循環控制變量,并將其值的變化轉換為數學表達式:臺階數量=1 To 3300;3.通過定義步長值,描述每次循環執行后,循環控制變量值的變化量。即當前臺階級數加1。
在實際教學過程中,通過上述方式為復雜學習任務搭建概念支架并為其創建形象具體的應用情境,有利于學生結合已有認知,更主動的理解結構化語句的各組成元素,理清知識脈絡、掌握結構化語句的語法規則。
(三)引導學生獨立探索
支架式教學模式強調學習者以概念框架作為知識學習的基本支架,逐步完成對新知識體系的自我建構的主觀能動性。因此,為發揮學生學習的主體性,教師在教與學的關系中應完成引導、啟發和組織的基本功能,以任務驅動的方式引領和鼓勵學生積極探索和嘗試是支架式教學開展的主要目標。
學生在具備程序設計語言基礎的內容后,沒有形成一個知識體系用來解決“學”以致“用”的問題。根據信息加工理論,發現和解決問題的過程離不開信息的獲取、存儲、轉換、加工和利用[8],即分析問題的過程。因此,在學生已理解結構化語句的語法結構和運用原理后,教師可以用基于建構主義教學理論的“任務驅動”法,以任務為導向設計例題,通過引導和啟發的方式,幫助學生構建一個分析并解決問題的認知體系。以For循環語句的應用為例,設計例題:求解水仙花數。引導學生在解決問題時分析和思考:1.問題求解對象是什么?2.需要哪些關鍵信息作為解決問題的基礎?3.為了解決問題需要使用什么方法?4.求解的結果是否符合問題解答的各項要求,可以怎樣表示?
學生在理解語法結構和原理后,借助分析問題的思維模式,可以清晰地抓住解決問題的關鍵在于什么樣的數是水仙花數。為激發學生興趣,還可通過女生喜歡通過照鏡子保持儀容的現象引入古希臘美少年納喀索斯的神話,創建水仙花癥的自愛成疾的情境,幫助學生理解水仙花數作為1個三位整數,其三個數位上數字的立方之和等于這個數本身的特征,設計算法并進行代碼實現。
引導學生獨立探索是教學過程中教師主導向學生主導過渡的重要環節,善用“我們試想一下”、“大家一起嘗試看看”等啟發性語句,有利于調動學生參與的積極性,學生在引導下主動嘗試,經過分析和獨立思考,逐漸形成自己分析并解決問題的認知體系,減輕復雜知識學習的認知負荷、形成自己的方法論[9]。在組織教學過程中,對復雜知識點有意識地設計特定的問題并創造相應的情境,將感性認識和理性思維相結合,有助于提高學生的學習興趣,變被動完成任務為主動探索,靈活運用抽象概念以解決實際問題。
(四)鼓勵學生協作學習
建構主義思想指出,學習者在融合新舊知識時,借助“支架”建構和發展對事物的認知體系。學習者以自己的方式選擇支撐的“支架”,在認識、接受和內化新知識的過程中,通過協作學習,可以幫助學習者從不同角度建構認知體系。協作學習作為支架式教學模式的重要環節,教師應以任務為導向,通過分組討論等形式給學生建立溝通合作的學習環境;學生通過相互學習、互相補充和共同促進的協作學習方式,更為詳盡、深入地分析和解決問題。
利用不同結構化語言編寫程序解決實際問題的難點在于分析問題的過程和選擇解決問題的算法。在上述例題中,解題本質在于判定和窮舉,而解決問題的算法靈活多樣。通過引導學生思考設計算法的關鍵點,以小組討論的形式進行協作學習,可以啟發學生的開拓性和批判性思維方式,對不同算法進行比較和優化,選擇最優或相對滿意的算法解答具體問題。在教學過程中,對于例題中判定和窮舉的實現,設計有啟發性的相關問題,組織學生進行分組討論,并在討論后實現小組所選擇算法的代碼,提交作業文檔。例如:1.窮舉有哪些方式?可以用什么語句?2.執行判定是否一定要用If語句去實現,若否,則嘗試實現其他的選擇語句?3.如何處理窮舉和判定的嵌套關系?4.求解得到的水仙花數可以用哪些方式表示,并實現。通過組內協作討論、交流反饋并進行實際操作實現,培養學生從整體的角度出發,綜合解決問題所需各相關知識點,深入學習與思考,融會貫通后“同化”、“順應”并內化為自身的知識結構。
(五)重視效果評價
支架式教學模式的目的在于學習者主動進行自身知識建構和發展,建立科學有效的評價機制對學習效果進行評估是改進教與學方法的源動力。支架式教學模式的主體是學習者,更注重學生自主學習、協作學習能力的評價,知識建構效果的評估。因此,VB程序設計課程的教學效果可以從學習能力和知識建構兩方面進行評價。學習能力分為自主學習、團隊合作及溝通能力,知識建構是指綜合運用自身知識體系,分析和解決問題的能力。量化后分為30%的形成性評價和70%的總結性評價。結構化程序設計語言的形成性評價主要從學生以概念框架為基礎從理解和掌握語法結構和原理的接受程度來評估;總結性評價主要依據學生能否利用知識結構靈活解決問題來具體評價。其中,建立教師、學生自己和組內同學的三方反饋機制是客觀評價學習能力和知識建構效果的重要保證。
四、結束語
支架式教學以“在學生潛在發展水平上建立支架,提高學生認知水平”的最近發展區思想為基礎組織教學,將教與學的關系從教師主導轉變為學生主導,強調學生的主體性,能夠激發學生學習興趣、主動進行知識建構,提高教學效果。綜上所述,為提高VB程序設計課程的教學質量,在教學設計中引入支架式教學模式應注意以下3個方面的內容。1.以學生的潛在發展水平為中心,在學生已有認知的基礎上建立概念框架,作為提升學生認知水平的支撐;2.創建具體形象的情境,以任務為導向激發學生獨立思考和探索的興趣和主觀能動性,將概念框架與已有知識結構相融合并內化到自身知識體系;3.注重實踐過程中的互動和協作,建構新知識體系的目的在于通過提升認知水平以解決實際問題,因此,引導學生建立系統性思維,對解決問題所需各種資源進行合理分配、整合,提升學生綜合素質。
參考文獻:
[1]魏志平.支架式教學(ScaffoldingInstruction)方法[J].數學通訊,2003,19.
[2]L.E.Berk & A.Winsler. Scaffolding Children's Learning:Vygotsky and Early Childhood Education[M].NA-EY C,1995.
[3]劉杰.支架式教學模式與課堂教學[J].貴州師范大學學報,2010,26(3):66-70.
[4]雷鋼.支架式教學在計算機網絡實驗教學中的應用[J].中國成人教育,2007,5:165-166.
[5]苗 ,金炳堯.支架式教學方法在計算機程序設計課中的應用研究[J].實驗室研究與探索,2007,26(4):111-114.
[6]龐爾麗,王欣.支架式教學與計算機程序設計語言[J].計算機時代,2012,12:56-58.
[7]涂珊,易鋼.Visual Basic程序設計教程[M].人民郵電出版社,2015.
[8]穆 ,晏峻峰,等.基于信息加工理論的CDIO教育模式在醫藥信息學課程教學中的研究與實踐[J].高教學刊,2016,16:179-180.
[9]王海珊.教與學的有效互動——簡析支架式教學[J].福建師范大學學報,2005,1:140-142.