單維鋒 李攀 陳新房
摘 要:針對當代大學自我認知程度低,自我管理能力弱、主動性不強等特點,分析了程序設計類課程特點以及現有教學方法存在主要問題,提出將講練結合教學方法引入課堂,把課堂從教室搬至實驗室,合班授課改為小班授課,先講后練改為教師指導下的邊講邊練,實現了理論與實踐的完美融合。實踐證明,該教學方法有助于培養學生的學習興趣、創新能力和動手實踐能力,有利于培養高質量的計算機應用型人才。
關鍵詞:面向對象程序設計;教學方法;實踐能力;講練結合
中圖分類號:G642 文獻標識碼:A
1 引言(Introduction)
面向對象程序設計等程序設計類課程是計算機科學與技術、軟件工程、網絡工程、信息管理與信息系統等相關專業的核心課程,在人才培養方案中占有非常重要的位置。通過本課程的學習,使學生能夠掌握面向對象程序設計的基本概念和語法,并能熟練應用面向對象的思想分析問題、描述問題(面向對象的分析),提出問題的解決方案(面向對象的設計),并具備開發、調試應用程序(面向對象的編程)能力。
本課程學習效果的好與壞直接影響著多門后續專業課程地學習,也影響著學生對該專業的學習興趣、甚至影響著學生的就業質量,因此提高本課程的教學質量和教學效果顯得尤為重要。然而,通過調查發現本課程的教學效果非常令人擔憂,學生評教滿意度也不高。很多學生感覺本課程非??菰铩⒙牪欢?、不會寫程序、不會調試程序,漸漸放棄了本課程,甚至有些同學因此課程放棄了本專業。不少高校出現了學生“上課基本不聽、下課基本不看、上機基本不練,考試大批不過”的現象。究其原因,縱然有學生學習積極性不高、生源質量逐年下降等方面的問題,更主要的應該從教師教學這個環節找原因。改革教學方法,提高學生動手實踐能力的口號喊了很多年,但是效果不甚明顯,這是為什么?很多高校的管理人員和教師對此重視不夠。大班授課、理論課時多實踐課時少的教學安排鮮有變化;多數教師仍然采用“一言堂”“滿堂灌”“填鴨式”等傳統教學模式[1-3];課堂上缺少與學生地互動、沒有生機,不利于培養學生的學習興趣和動手能力,不能培養出適合市場需求的計算機應用型人才。
本文在分析面向對象程序設計課程特點和現有學生學習習慣的基礎上,提出了適合面向對象程序設計課程的“講練結合”教學方法。該教學方法將課堂從教室搬到實驗室,合班授課變為小班授課,先講后練變為邊講邊練、講講練練。該教學方法將理論教學和實踐教學有機地融合在一起,增加了學生上機動手時間,很好地實現了教師和學生的互動,提高了學生的學習興趣和動手編程能力。
2 面向對象程序設計課程特點分析(Analysis of
features of OOP)
面向對象程序設計課程在不同高校設置的課時也不同,大概分為48學時、64學時、80學時等。多數高校按照2:1或1:1的比例分配理論課時和實驗課時。通常是先上理論課,然后再安排實驗課。理論課上教師通常借助PPT,以講授為主,幾乎沒有交互。實驗課上教師演示程序或布置作業,最后讓學生提交作業,中間環節管理不嚴。
面向對象程序設計課程對學生的動手能力要求非常強,現有的教學方法隔離了理論與實踐教學環節。學生在上實驗課時,通常已經忘記了理論課所講的內容,學生需要從頭看書來回憶理論課上講述的內容,然后再去完成上機練習,這大大浪費了寶貴的上機時間。此外,由于安排的上機時間偏少、上機人數偏多,導致學生對知識的掌握不熟練、教師對學生地指導不到位。要想提高學生的動手編程能力,就必須增加學生動手實踐的機會,“無他法,唯熟而”。
近年來,有很多老師認識到傳統教學方法的弱點,進而開始采用了一些注重學生交互和啟發的教學方法,如“做中學”教學方法和項目教學法。這些教學法往往是將學習的內容交給學生,教師輔以指導,但是由于現在的學生學習積極性不高、主動性和獨立學習能力不強,經常導致教師提問的問題無人回答,布置的作業無法按時完成、甚至抄襲,該討論的問題無人發言等。
此外,學習面向對象的程序設計語言,就如同學習英語語言一樣,如果過分注重學習語法知識,而忽略其核心的面向對象思想的學習,會導致該課程非常枯燥,以至于讓很多學生逐漸失去了興趣。因此,在教師授課過程中,需要傳授給學生的應該是如何應用面向對象的思想去分析問題、描述問題、解決問題的思路和方法,這樣才能使面向對象程序設計語言煥發出強大的生命力。
3 當代大學生學習特點分析(Analysis of study
characteristics of contemporary college students)
由于現在的生活條件越來越優越,大多數學生又都是獨生子女,他們習慣了以自我為中心的生活,不喜歡別人的干涉和打擾,喜歡用與眾不同的方式去獲得社會的關注。他們在思想、觀念、生活以及學習等方面都表現出很強的個性。
很多學生自我認知程度低,自我管理能力弱,學習積極性不高,遇到挫折或困難容易中途放棄[4,5]。由于沒有正確地認識到自身的缺點和優勢,又不能合理地管理業余時間,導致很多學生隨波逐流,大部分業余時間沉迷于網絡世界,或用于娛樂、運動方面,而用在學習方面的時間是少之又少,浪費了寶貴的時間,耽誤了學習。此外,在學習方面,學生拋棄了很多高中時的好習慣。課前不預習,課上不做筆記、玩手機游戲,課下不復習的現象日趨嚴重[6]。部分同學處于“上課基本不聽、下課基本不看,上機基本不練”這樣的一種狀態,疲于應付老師的考勤,自然導致很多同學考試成績不理想。
4 教學改革理念和思路(Ideas and thoughts of
teaching reform)
通過前面的分析,可見面向對象程序設計課程是一門動手能力要求非常高的一門課程,現在的學生都有自己的個性,他們更關注于娛樂、運動以及網絡,在學習上缺乏目標。這就要求教師在課程教學方面要斟酌教學的每個環節,引導學生對本課程產生興趣,幫助學生樹立學習目標,進而養成良好的學習習慣。因此,本次教學改革主要考慮以下幾個理念。
首先,要給學生講清楚本課程在人才培養方案中的位置,并明確每節課的內容在整個課程中的位置與作用。很多老師只注重講知識,忽略了本課程與其他課程以及課程各知識點之間的聯系,使學生“只見樹木,不見森林”。這樣的教學容易使學生迷失方向,導致部分學生中途放棄了學習。應該在教學過程中,時常提醒學生為何學這學這門課,如何學習這門課程,闡明本節課講授的目的以及本次授課內容與其他知識點之間的聯系。
其次,授之以漁,而非授之以魚。注重面向對象程序設計方法的傳授,而不僅僅是知識的傳授。在授課中注重培養學生應用面向對象的思想分析問題、解決問題的思路和方法。當學生在編程過程中出現了問題時應該注重給學生講解錯誤是什么意思,出現錯誤的原因是什么,如何解決這類錯誤,而不是直接幫助學生改正程序,逐步培養學生編寫程序和調試程序的能力。
第三,要多站在學生的角度思考問題。由于學生和教師在專業知識方面相差甚遠,在教師看來非常簡單的知識,而學生則感覺難以理解。這就要求教師要多從學生的角度的思考問題,然后通過一些形象、直觀的例子引導學生理解知識、掌握知識、運用知識。
第四,以問題為導向,注重啟發式教學方法的應用。教師在講授知識時,注重提出問題,然后引導學生思考并探索問題的答案,逐步培養學生獨立思考的能力[7-9],不能像講授法一樣以教師講為主,也不能完全將任務交給學生自己獨立完成,而是在授課過程中逐步引導學生在完成一些小任務的過程中學習相關理論、培養興趣,鍛煉分析問題、解決問題的能力。
最后,注重提高實踐教學的質量?!笆熳x唐詩三百首,不會做詩也會吟”。學習面向對象程序設計這門課程也是如此,必需經過一定量程序代碼的訓練,才能從量變到質變,方能較為熟練掌握面向對象程序設計語言的各種語法和編程技巧,才能成為一名合格的軟件開發人員。
5 講練結合的教學方法(Combining explaining and
practising teaching method)
為了提高教學質量,培養學生學習興趣,增強學生動手實踐能力,本文提出了將“講練結合”的教學方法引入面向對象程序設計課堂,有機整合了理論教學和實踐教學,提高了教學質量。具體做法如下:
(1)將課堂從教室搬到實驗室。由于在教室上課,教師往往直接對照PPT講,學生不愛做筆記或者隨便用手機拍照一下,印象不深刻。將課堂從教室搬到實驗室,學生人手一臺計算機,方便學生隨時編程、練習,大大增加了學生的動手編程時間。
(2)合班授課改為小班授課。由于合班授課人數較多,教師很難照顧到每個同學,因此將課堂改為小班授課,教師有精力根據每個學生的不同情況有針對性地進行輔導。增加了教師和學生交流機會和時間,特別是增加了與那些性格較為內向、學習成績在中等或中等偏下同學的主動交流機會。大大增強了師生感情,有助于因材施教。
(3)先講后練,改為邊講邊練、講講練練。以前授課總是先講理論,然后再實踐。而學生課下少有時間復習,到上實驗課時已經忘記了大部分理論知識,學習效率較低。“做中學”教學法太注重學生練習了,很多同學根本沒有思路,有的抄襲甚至放棄了學習。在本教學方法中,教師將每堂課的內容分解為多個小的知識點,講一個知識點學生就可以在計算機上編程、調試、實現。教師可以根據學生實際完成的情況,適時調整講課進度,增加了實踐學時,大大提高了授課靈活度。
(4)拋棄PPT,改為學生練習+板書+演示的教學手段。以前教師普遍采用多媒體進行教學,對幫助學生理解某些復雜的原理有很大好處。但有些教師把講義搬上課堂上展示并逐片朗讀,課后讓學生上網下載PPT課件,學生課堂上也不需做筆記,嚴重妨礙了學生思維能力的訓練。在本教學方法中,拋棄了照讀PPT的講授方法,對于非常簡單的知識,直接采用教師說學生寫的方法;對于那些抽象、不易理解的知識,轉而采用白板進行板書講解;對于那些操作性非常強、步驟較為繁瑣而不容易說清楚的問題,采用多媒體控制軟件給學生現場演示;對于某些典型的問題、作業、項目展示內容等可以讓學生通過多媒體控制軟件演示給其他學生觀看。
(5)教師以講為主改為以輔導為主,學生以聽為主改為以練為主。在教室授課,通常教師以講為主、學生以聽為主。往往一開始上課,學生還可以跟得上,但是時間稍微一長,學生就開始走神、開小差,教學效果較差。改革后教師每次講授的時間都控制在5分鐘左右或者教師說學生練。學生上課的大部分時間都是在上機練習,并且能直接看到程序運行效果,大大增強了學生的成就感,從而培養了學生的學習興趣。
(6)教師在講臺上講改為教師圍著學生講。以前上課教師總是站在講臺上對照PPT或黑板講解,學生的狀態難以掌握。改革后教師在講授的同時,可以不停的走動并檢查學生實現代碼的情況,如果發現某個同學在編程過程中出現了問題可以及時給予指導和幫助,如果是大家共性的問題可以統一講。這也在很大程度了防止了學生上機時看電影、打游戲、聊天等現象。
6 實施效果(Implementation result)
本課題組分別在信息管理與信息系統專業2011級3個班級中開展了比較研究,在2011級1班、2班(共67名同學)采用講練結合的教學方法,而在3班(共35名同學)采用傳統的教學方法。學生評教數據顯示,1班和2班同學“非常滿意”的占97%,“滿意”的占3%,沒有“不滿意”的同學。而3班的同學“非常滿意”的占85.7%,“滿意”的占8.6%,“不滿意”的占5.7%。由此可見,改革后的學生滿意度明顯提高。同時,我們還為實施教學方法改革的1班和2班同學單獨做了一份問卷調查。調查數據顯示,100%的同學贊成該教學方法,98.5%的同學認為自己對該課程有了更強的興趣,97%的同學認為該教學方法使自己的編程水平有了比較明顯地提高。
7 結論(Conclusion)
隨著高校擴招和社會經濟的發展,普通高校的大學生出現學習積極性不高等新特點,本文在分析當代大學生學習特點的基礎上,結合面向對象程序設計課程的特點,提出了將課堂從教室搬至實驗室,大班授課改為小班授課,先講后練改為講講練練的講練結合的教學方法,真正做到了理論與實踐相結合。從實驗結果可見,該教學方法可以有效地增強學生的動手實踐能力,有助于培養學生的學習興趣,有利于幫助學生掌握應用面向對象的思想分析問題、解決問題的能力。
當然在該教學方法的實施過程中,教師是最關鍵的因素,主講教師不僅要非常熟練授課內容,能夠選用形象的、規模適中的例子靈活安排教學內容,而且要具有豐富的軟件分析、設計、開發、調試經驗,這樣才可以在講授過程中快速、準確、及時幫助學生分析問題、解決問題,才能真正確保講練結合教學方法的有效實施。該教學方法也可以應用在Web應用技術等學生動手能力要求非常強的課程中,通過有機地整合理論和實踐環節,可有效地提高教學質量,培養符合市場需求的計算機應用型人才。
參考文獻(References)
[1] 王義遒.教學方法改革:改什么,怎么改?[J].中國高等教育, 2009,(06):8-10.
[2] 浩歌.教學方法改革何時突破重圍?[J].中國高等教育.2009, (06):1.
[3] 姚利民.高校教學方法研究述評[J].大學教育科學.2010,(01): 20-29.
[4] 楊成輝.大學生自我管理能力現狀研究[D].長春:東北師范大 學,2013.
[5] 彭囿朗,李淑慶.提高大學生學習積極性的對策研究[J].大學 教育,2012,(04):39-40.
[6] 谷大海,等.手機對大學生課堂學習影響的研究[J].大學教育, 2013,(14):130-131.
[7] Rodríguez Corral J M,Civit Balcells A,Morgado Estévez A, et al.A Game-Based Approach to the Teaching of Object-Oriented Programming Languages[J].Computers & Education,2014,(73):83-92.
[8] Machanick P.Teaching Java backwards[J].Computers & Education,2007,48(3):396-408.
[9] 陳瀟.項目教學在高職院校程序設計課程中的應用——以 《C#程序設計》為例[J].軟件工程師,2015,18(01):41-42.
作者簡介:
單維鋒(1977-),男,碩士,副教授.研究領域:并行計算,數
據庫理論.
李 攀(1977-),女,博士,副教授.研究領域:地理信息
系統.
陳新房(1975-),男,碩士,講師.研究領域:信息系統集成.