李穎
(黑龍江大學劍橋學院,黑龍江 哈爾濱 150000)
眾所周知,Java 是20 世紀90年代初推出的一種純面向對象編程語言工具,自從它面世以來,已經獲得了業界的一致推崇,時至今日,Java 已經發展為一個覆蓋面廣、效率高、易用性強的技術平臺。為了適應人才市場的需求,幾乎所有高校都競相開設了《Java 程序設計》等相關課程。雖然IT 企業對Java人才的需求量很大,但卻很難招聘到合格Java人員,其中最根本的原因就是許多計算機專業的畢業生在讀期間沒有掌握實用的技能與經驗,距離企業的實際用人需求有較大的差距,因此如何更好地發揮JAVA 課程實踐性強的特點,使學生具備很強的動手實踐能力、掌握JAVA 程序開發技巧、積累項目開發經驗便成了計算機教學中一個探討與研究的熱點和焦點。
在Java 程序設計這門課程日常的教學中以及與同事之間的相互交流中,作者發現該門課程在實際教學中主要存在以下幾個方面的問題:
(1)學生普遍反映對Java 程序設計有興趣,但同時也畏難。學生的興趣來源于實際就業需要,Java 的廣泛應用是學生們想學習Java 的主要原因。學生們通常對編程沒有足夠的了解,在初學編程時,很少會有學生真的因為愛好編程而學習Java。由于程序設計不僅要求設計者具有很強的邏輯思維能力,思路清晰,要求設計者能不斷自我學習,適應現代編程技術的變化。這對一些學生造成了學習壓力,進而導致這些學生畏難,害怕編程。
(2)希望獲得更多實用技能和動手能力的培養。Java 程序設計在課程改革以前,主要通過傳統的語言教學方法來進行,在內容上從了解語言特征入手,重點強調基礎Java 語法。盡管在實踐教學中逐步引入了案例教學,不過仍缺乏如何運用Java 完成實際項目的內容。另外,教學內容中也欠缺一些與編程相關的能力培養。包括使用參考文檔的能力、使用開發工具的能力等等。雖然這些內容均不屬于傳統教學范圍,但都是學生在實際動手環節中必須用到的能力。因此有必要在Java 程序設計教學內容和方法上做一些調整,以促進學生實用技能的提高。
無論學習哪一種編程語言,最重要的是掌握其編程思想,從而培養編程的感覺,而不是對語言本身死記硬背。編程思想是在反復的實踐、觀察、分析、比較、總結中潛移默化積累的。多數情況下,一旦掌握編程思想,面對新的編程語言時,只需要簡單了解該語言的語法特點就可以即學即用。為了更好的啟發學生的編程思想,首先要培養學生解決實際問題的能力,以解決實際問題的程序設計思想作為教學的切入點,加強基礎、強化實踐、注重應用、引導創新,啟發學生用程序的方式來解決問題,要把程序的組織結構、語句含義、運行流程和實際問題對應起來。其目的是使學生學會學習、學會思考,學會自我啟發的“關鍵能力”。教師可以讓學生先解決一些簡單的實際問題,掌握編程的一些常用結構和方法。然后邊學邊用,學生熟練掌握編程技術后,就可以獨立編程了。
根據Java 課程的特點,教學手段上應充分利用現代化的多媒體教學方式,利用大屏幕投影進行直觀教學,采用演示+操作+講解(即邊講邊練)授課方法進行教授。多媒體技術為教學提供交互式的教學環境,學生可以按照自己的學習基礎、學習興趣來選擇學習策略、學習的內容和適合自己水平的練習,體現了學生的主體地位。學生在這種交互式教學環境中有了主動參與的可能,有利于激發學習興趣形成學習動機。使用各種軟件實時操作進行教學,學生可以同步感受軟件的運行過程。演示程序的調試與運行過程,真正實現了“用計算機教計算機”,使教學更具直觀性和互動性,同時加大了授課的知識量。此外,多媒體所提供外部刺激有利于學生對知識的獲取與保持,獲得較好的教學效果。
能夠自己動手解決實際問題是學習的最直接動力,是激發學習興趣的根源所在。在Java 程序設計課堂教學中采用案例教學方法可對每一個單一知識點進行教學。選取的案例都盡可能小而精,針對特定問題。通過小型案例講解獨立知識點,以案例模仿的形式促進學生動手能力。學生通過案例研究,培養一種分析問題的能力和獨立處理、遷移性的應用能力。學習過程貫穿于案例分析的過程之中,培養學生學會抓住或發現問題,然后結合所學知識尋找解決問題的途徑、手段。這樣不僅能幫助學生鞏固已學的知識,同時也能幫助學生提高自學能力和設計能力,強化了案例教學的效果。
學習Java 編程語言要經常閱讀一些優秀的源碼,對自我提高、開闊視野非常重要。但一定要多動手才能真正把別人的東西消化掉。
很多學生學Java 就是看書、聽課,當時是明白了,過后馬上就忘記。如果不愿意敲鍵盤,就不如不學。即使有時候所敲的代碼不太明白,可以先運行,看看結果,增加感性認識,然后上升到理性的認識。所以教學中一定要鼓勵學生多動手寫代碼。
良好的職業素質能使學生在工作生涯中終生受益。教師在傳授專業知識的同時應該強調職業素質教育,把職業素質教育融合到教學中去,注重學生綜合能力和解決實際問題能力的培養。
對于Java 教學,職業素質教育首先應該強調團隊精神和協作能力?,F實中的開發任務幾乎是個人力量不可能完成的,需要通過組成強大的團隊來創造奇跡。其次應該養成規范化、標準化的代碼編寫習慣。良好的編寫習慣,使代碼具有良好的可讀性,不但有助于代碼的調試和移植,也有助于不同技術人員之間的協作。
課程設計是對本課程所學內容的綜合運用和鞏固提高,它在整個Java 教學過程中起到一個承上啟下的關鍵性作用,一方面能夠鞏固前面所學的基礎知識;另一方面能讓學生了解Java 開發的一些基本流程,為日后從事Java 領域的開發作鋪墊。
在課程設計的過程中采用分組的組織形式,以完成小型任務為目標,鍛煉學生合作和設計能力。在分組實驗中,學生以3 個人左右的小規模進行分組,這樣一方面可以保證每個學生都有動手實踐的機會,同時也能充分參與合作。學生個人的最終成績取決于團隊的最終成績、個人在團隊中的貢獻以及教師對個人表現的評價。分組實驗中通過競爭機制和團隊成員的交流可以促進學生學習興趣和提高團隊合作能力。
在課程設計階段,學生已經有了一定的Java 編程基礎,欠缺的主要是實際的開發經驗和全面系統的、深入的掌握Java 技術。解決的方法就是通過企業真實項目練習,對所學知識進行深化,然后通過項目來獲取實際開發的經驗,盡快達到企業的實際要求,讓學生在具體的項目中進行學習,縮短學生與企業之間的距離。
Java 教學一定要圍繞提高學生實踐應用能力展開,注重面向對象編程思想的培養,教學過程中要引入多媒體技術等先進教學手段。文中探討了Java 教學的一些問題,提出了改進措施,并實際應用于Java 教學,取得了很好的效果。其實,教學關鍵在于因材施教,所以文中所提及措施,也不一定適合所有Java教學活動。但希望能夠拋磚引玉,愿各位教師教好Java,愿各位學生學好Java。
[1]全成斌,楊士強,趙有健.計算機工程實踐教學的改革與探索[J].計算機教育,2008(4).
[2]孫偉.《Java 程序設計》課程的教學改革與實踐[J].計算機時代,2005(11),84-86.