彭耶萍
摘 要: 本文闡述了如何提高軟件工程專業學生編程能力,即從培養學生學習編程的習慣、主動學習編程的態度、通過閱讀代碼找到程序的精髓、學生編寫程序的思維和算法和通過實踐應用鍛煉編寫程序的能力五個方面提高學生的編程能力。
關鍵詞: 軟件工程專業 編程能力 計算機運用能力
軟件工程教育是一種能力教育,是一種以學生為導向的教育,除了注重學生綜合能力的培養外,更注重學生專業能力和專業拓展能力的培養。學生的計算機運用能力和編程能力是軟件工程專業教學質量的兩個重要評判依據。我結合自己多年來的軟件開發經驗和軟件工程專業的教學經歷從日常、學習、讀書、思考、課后練習和實踐操作六個方面探討如何提升軟件工程專業學生的編程能力。
一、培養學生的學習編程的習慣
行為決定習慣,習慣決定性格,性格決定民運。要提升自己的編程能力,就必須養成良好的習慣,每天都要完成一定規模的編程任務,持之以恒。必須嚴格要求學生,每天給學生樹立一天的小目標并且一定完成它。比如說今天要求完全弄懂C語言的基本數據類型有哪一些。基本類型就可以到書籍教材上或者到網上學習C語言的基本數據類型有兩種:一是整形類型,包括int ,short int,long int,long long int(C99),char,bool;二是浮點類型,包括float ,double,雙精度浮點型(float_complex,double_complex,long long_comples)。然后再找題目鞏固,做出一道題來就很會有成就感,久而久之學生對編程的興趣就會越來越濃,從最簡單的知識部分做起,循序漸進,逐步提升學生的編程能力。
所謂練就是練習,把所學的知識應用于實際,練習課本后的習題及書本上經典的例題、經典的算法、具有代表性的程序。在練習的過程中多思考多理解多提問。首先運行這段程序看看是什么效果,然后刪除掉一些代碼,再運行程序看看與不刪除之前的效果有什么區別,從而知道刪除的這些代碼是實現什么功能的。然后再仔細體會這段代碼,例如有很多循環例子,是否可以實現for循環和while循環相互轉化,當通過自己的實際轉換后才體會到原來每個循環有各自的特點。練習其實是一個循序漸進的過程,剛開始先做簡單的練習,后面隨著自己的能力不斷提高再增加難度先練習語法規則和編程規則。
二、培養學生主動學習編程的態度
學,顧名思義是指學習,然而學習也是很有講究的,學習包括提前預習、課后復習和課中認真學習。所以要提升學生的編程能力,就必須一步一個腳印地按著這三個步驟走:上課之前認真預習,把將要上課所要講的知識,要求學生提前預習,做好充分的準備,這樣能夠保證在課堂聽課感覺更得心應手。自學能力是以后工作生活中很重要的一種能力。課中認真聽講,要求學生緊跟著老師的思路,教師在講臺上演示時候要求學生跟著老師同步進行代碼編程,不懂的難點知識點及時標記下來,課堂或課后進行輔導。課后要求學生進行溫習,通過做練習把老師講的知識完全理解。另外,還要不斷地學習新的和先進的開發工具;只有理論基礎扎實,編程才能游刃有余,才能寫出高水平的代碼,才能編寫出高質量的程序,自然而然編程的能力機會得到增加。
三、培養學生通過閱讀代碼找到程序的精髓
除了課堂教學之外,學會閱讀代碼對軟件工程專業的學生來說尤其重要。看經典的算法程序,然后總結起來,反復讀,直到自己完全理解消化自己能夠得心應手地運用,從而發展自己的編程思維。細細地品讀別人寫的代碼,不能效仿別人的代碼,要求學生讀懂代碼的思想和邏輯。讀完后思考自己和編寫這一段代碼的人的差距。讀懂代碼的思想和精髓,沒有思想這段代碼只不過是一段雜亂的英文字母。再將別人的算法思想和自己的思想進行對比,反復琢磨,就會懂得很多有用的東西。此外,閱讀完后應和老師多多交流,和同學溝通,樹立“三人行必有我師焉”的思想。可能在不經意的交談間產生靈感寫出更好的代碼,最終學習別人的精髓編程,以提升自己的編程能力。
四、培養學生編寫程序的思維和算法
面對一個問題,思考這個問題的可行性,思考這個問題為什么值得思考,思考這個問題該怎么解決,包括編寫這個程序所需要的知識,所以完成一個代碼任務之前要再三思考。第一,思考這個問題的可行性,用課堂上學的知識能否解決這個問題,如果這個問題本身就是一個悖論,用編寫一段代碼實現它要求的功能,編寫程序肯定陷入無限的死循環,這個問題終究還是無法解決。第二,思考解決這個問題有沒有更好的解決辦法。這樣可以大大減少完成任務的時間開銷。比如:編寫一個程序要求要有主頁,登入頁面和注冊頁面,讓學生使用以前編寫的代碼,然后通過修改達到老師的要求,這樣既溫故了所學知識,又應用了新的知識,還節約了編碼的時間。
五、通過實踐應用鍛煉編寫程序的能力
所謂實踐就是做出實際的東西出來,“百說不如一練”,學得再好做不出實際的東西出來也是白學。在每個學期的課程設計或實訓時期要求學生以企業實際的工程項目為案例進行開發設計,在實踐中不斷地鍛煉自己的編程能力。以團隊方式供完成。這樣不僅可以培養學生實際能力,還可以養成團隊合作的精神。在合作的過程中找出問題,然后解決問題,不斷提高邏輯能力、思維能力和創新能力。
總之,要提升學生的編程能力,就要養成良好的習慣,培養編寫程序的思維,不斷地積累編程經驗,閱讀、借鑒,然后把所學的東西付諸實踐,持之以恒。
參考文獻:
[1]李永.怎樣提高學生編程能力[J].文獻資料,2006(08).
[2]郭劍.編程能力的培養與提高[J].電腦與電信,2010.
[3]馬慧彬.結合ACM競賽提高學生編程能力的教改探索[J].計算機與信息技術,2010.
[4]韓國勇.淺談提高學生編程能力[J].科技資訊,2010.
[5]樊紀山.提高非計算機專業學生編程能力的探索與思考[J].福建電腦,2010.