[摘 要]《面向對象的程序設計語言》在大學生思維訓練、創新能力培養、計算機素質教育等方面發揮著重要作用。文章結合筆者多年教學經驗,提出在教學中要體現師范院校特色,注重培養學生的計算機教學技能;整合實驗內容,科學設置實驗項目,編寫實驗指導書;引入課程設計,改革考試方法等促進實驗教學改革的若干方法。
[關鍵詞]面向對象程序設計語言 實驗項目 課程設計 教學改革
[中圖分類號] G642 [文獻標識碼] A [文章編號] 2095-3437(2013)05-0065-02
一、引言
《面向對象的程序設計語言》是計算機類課程的專業基礎課,是計算機圖形學、軟件工程等課程的選修課,也是其他課程上機實踐的基礎。本課程的學習質量直接影響著后繼課程的學習,本課程以C++語言為平臺,介紹面向對象的程序設計的思想和方法。該課程的學習不僅要求學生掌握C++語言的語法和語義,更重要的是要在實踐中逐步掌握面向對象的程序設計的思想和方法,培養學生分析問題和解決實際問題的語言應用能力。因此,這是一門以實驗為重,旨在培養學生探索創新精神和實踐能力,做到學以致用特色鮮明的課程。
國內外很多高校都對《面向對象的程序設計語言》課程的實驗教學改革進行了研究。重慶交通大學進行了面向對象的程序設計精品課程教學改革與實踐,將 “高級語言程序設計”、“面向對象的程序設計”兩門課程內容進行整合,課堂教學以程序設計案例教學為主線、以分層次思想設置實驗內容、建立教學資源共享平臺。[1]浙江師范大學的江頡、石曉耀進行了面向對象的軟件工程自主實驗教學改革,將自主學習的理念引進到實驗建設中,體現了以培養學生的技術應用能力為重點的教學改革。[2]南京理工大學的李海倫等人在程序設計課程教學改革研究中強調了算法設計、邏輯思維、編程方法是學習“程序設計”的重要內容。[3]
以上研究都對面向對象的程序設計語言課程的建設起到了積極的推動作用,但還存在以下問題:(1)教育部已經把人才分類培養上升到戰略層次,教育環節要融入學校特色,因此不應該搞統一模式;(2)現有改革成果主要集中在實驗內容的整合上,對實驗課程教材建設方面的工作還較少,導致教材更新較慢,無法及時體現行業技術發展;(3)在實驗項目設置上,缺乏融合各門課程知識的企業實踐類實驗,課程設計的內容有待進一步改革;(4)對實驗課程成績考核方法的研究較少,考試直接影響到學生學習的主動性。
針對以上問題,結合筆者多年教學經驗,本文提出了以培養特色人才、做到學以致用為目標的《面向對象的程序設計語言》實驗教學改革的思路。
二、體現師范院校特色,注重培養學生的計算機教學技能
教育部已經把人才分類培養上升到戰略層次,教育環節要融入學校特色,分流人才培養方向,因此不應該搞統一模式,在教學改革中師范類院校要揚長避短,發揮自身優勢,體現學校特色。在本課程教學和實驗教學中,要加入師范特色的模塊,注重計算機教學技能的培養。在就業壓力日益增大的今天,加入帶有學校特色的標簽,無疑將大大提升學生的競爭力,并會對未來人才的培養產生積極影響。
在實驗教學中,可以將學生分成4-5人的實驗小組,基礎類實驗每個學生獨立完成,然后在小組內講解,組織成員一起討論,分析各種方法的優缺點,找出存在問題,完善程序。對于設計和研究型實驗,可以小組成員協作完成,依據軟件工程的理論,合理分工,規范開發步驟,教師要注重對學生良好編程習慣的培養,強調算法的高效性、代碼規范化。學生通過問題分析、模塊設計、運用跟蹤、斷點等調試手段調試程序得出結果,提高編程能力。完成實驗后,一個小組推選出一名同學為代表,對本組的工作進行介紹,組間互評,在討論過程中取長補短,進一步完善自己的工作。這種實驗教學模式,激發了學生學習的興趣,培養了學生自主學習的行為。同學之間的相互協作和探討不僅提高了學生的分析問題解決問題的能力,還培養了團隊精神和協作理念,這都是當今用人單位非常需要的重要素質。同學們介紹自己項目的過程也是鍛煉他們的表達能力、思維能力,梳理知識點,構建知識體系,模擬教學的過程,有利于為以后從事計算機教育工作打下良好的基礎。
三、完善實驗內容,合理設計實驗項目,編寫實驗指導書
實驗是程序設計類課程非常重要的部分,多數程序設計類實驗教材的組織往往是以計算機語言的語法為主線,從最基本的常量、變量、語句、函數到一些重要的數據結構、概念介紹和相應訓練,內容很散,學生會覺得理論知識好理解,就是無法靈活運用?!睹嫦驅ο蟮某绦蛟O計語言》教學的目的就是要分析實際問題,并轉化為計算機能解決的模式,用計算機語言加以實現、運行。因此,實驗教材內容的設計應本著教會學生“如何進行編程”、“如何提高編程能力”、“怎樣學習編程方法”的目的對實驗內容重新整合、編寫。實驗指導書可分為兩大部分。(1)基本實驗指導。主要包括計算機語言的規范和概念(數據類型、數據結構、輸入輸出、文件包含、程序的框架結構等語法內容)及程序設計方法(重點介紹面向對象的思想和方法,教會學生如何用面向對象的方法解決問題,而不是簡單介紹概念和程序結構)。(2)設計研究型實驗指導。注重編程能力的培養,在實驗教學中不斷推出設計型和研究型實驗,培養學生對知識的綜合運用能力和系統開發能力。
實驗項目的設計要注意前后知識的關聯,開設以項目驅動為主的實驗。隨著課程的進行,實驗項目要不斷完善功能,能夠貫穿課程始終,使學生對面向對象的思想有整體認識,避免只會知識點不會整體運用的問題。實驗內容要注意和其他課程的聯系,如在講解循環控制語句時,可以和高等數學中的定積分及一元高次方程的求解聯系起來,培養學生綜合運用所學知識的能力,以避免以往學生學完程序設計后連一個定積分都不會用計算機求解的尷尬,提高學生的專業水平。
教材從編寫、試用到正式出版需要一定的時間,導致課本與時俱進的難度非常大。高校教育要注重知識的傳承性,課本不換或少換為宜,這與計算機行業的高速發展和知識爆炸顯然是相悖的。因此,我們要定期進行企業調研,不斷學習,將獲得的最新信息編入實驗指導書,作為正式教材的補充,讓學生在學習過程中不斷接觸新技術,激發學習興趣,做到理論和實踐相結合。
四、引入課程設計,改革實驗課程的考試方式
目前高校的許多科目都存在考前教師劃定考試范圍、學生突擊應考的問題。同時實驗課的考核,由于抄襲現象嚴重,公平性難于把握。為了預防這種不良現象的發生,我們在實驗課程中引入了課程設計,將學生分成小組,規定學生用較長時間應用所學的程序設計知識來完成一個比較復雜的課題,并把課程設計的成績作為實驗課程的成績。
課程設計本著“案例入門、改造拓寬、項目綜合”的原則,[4]分為案例教學階段和學生實踐階段。教師講解的案例都是代碼級別的,定義規范、流程清楚、可讀性強、具備參考價值,有利于促使學生養成良好的編程習慣。教師以多媒體手段演示代碼的編制調試過程,使學生對編程環境更加熟悉,能夠靈活運用跟蹤、斷點等調試手段,開發過程事半功倍。學生實踐階段,教師提供具有實際意義的開發項目,教師要求學生按照軟件工程的原則,采用先進的程序設計理論指導課題設計,掌握好設計方法,分析程序實現的思路,注意程序書寫的風格,通過上機調試與測試程序,發現問題、分析問題、解決問題,最后完成課程設計任務。
成績評定方法是,由小組推薦一名同學介紹項目內容,個人的成績代表全組的成績,營造小組研討、共同學習的團隊氛圍,以此培養學生自覺的學習行為。通過課程設計,可以將平時理論教學中涉及的知識點貫穿起來,對不同的數據類型、程序控制語句、數據結構及軟件工程的方法進行總結,對所學知識達到融會貫通的程度。
五、總結
《面向對象的程序設計語言》是大學生學習程序設計的重要課程,在大學生的思維訓練、創新能力培養、計算機素質教育等方面發揮著重要作用。本文結合筆者多年的教學經驗,提出在教學中要體現師范院校特色,注重培養學生的計算機教學技能,并科學設置實驗項目,引入課程設計,改革考試方法。教學改革是無止境的,今后還需要在實踐教學中集思廣益,發動教師、學生在教和學的過程中不斷探索和實踐,調整教學內容,改進教學方法,加強實踐教學,使面向對象的程序設計語言課程的教學質量提高到一個新的水平。
[ 參 考 文 獻 ]
[1] 羅憲,王家偉,等.“高級語言程序設計”、“面向對象程序設計”精品課程改革與實踐[J].重慶交通大學學報(社會科學版),2009,9(1).
[2] 江頡,石曉耀.面向對象的軟件工程自主實驗教學改革[J].實驗技術與原理,2007,24(5):112-114.
[3] 李海倫,唐全.“程序設計”課程教學改革的研究與實踐[J].學科建設與教學研究,2005,(7):21-22.
[4] 周立章.C++面向對象程序設計課程教學探索與實踐[J].西華大學學報(哲學社會科學版),2005,(12):257-258.
[責任編輯:雷 艷]