馬 創 劉 俊 解紹詞
(重慶郵電大學軟件工程學院 重慶 400065)
2018年,在成都舉辦的全國高等學校本科教育工作會議上,教育部進一步強調要發展新興工科、改造傳統工科,統一部署了新工科的建設方案。隨著新工科建設方案的實施,許多新的教學理論、方法與模式在高校本科教學過程中得到了研究與實施。《編程基礎(1)面向過程》是軟件工程學課本科培養方案中重要一門課程,該課程入門簡單,但實踐性要求高,很多知識點學生只能記憶,不易理解,該課程不僅要求學生針對現實問題進行抽象和編碼、能獨立排查程序錯誤,且對計算機硬件相關知識需要基本了解。同時,本課程也是軟件工程學科和計算機相關學科的一門基礎課程,它不僅是計算機原理、操作系統、數據結構等其它課程的必要先修課,而且對于學生掌握程序設計一般方法和技術,熟悉上機操作和程序調試技術都有重要作用。
目前,從學生就業和相關課程教學反饋回來的信息,直接指出了課程在培養學生獨立運用程序解決實際問題時的能力欠缺。由于受學時和傳統教學方式的限制,教師只能在課堂上教授淺表層的知識點,沒有時間進行深入學習。因此,要想徹底改變這一格局,教育者要意識到,課堂教學活動中最寶貴的資源是師生面對面相處的有限時間,這些時間應該被用于實現深層次的學習。在大量優質的MOOC、SPOC出現以后,學生完全可以借助新的教學手段在課前進行淺表層學習,老師則負責指導學習在課堂上進行基于問題、基于案例的深度學習,這種學習可以以實驗、研討、報告、辯論等形式展開,教師在整個教學活動中,只是一個引導者、組織者。
傳統教學方法存在一定的優勢,如:學生可充分利用課堂時間完成相應教學內容的學習、需要掌握的知識點清晰明了等。但是傳統方法在激發學生積極性、創造性方面存在不足。新工科提倡創新性、應用型人才的培養,以創新性思維推動應用型人才改革,因此傳統教學方法難以適應學科發展的必然趨勢。目前《編程基礎(1)面向過程》課程教學存在的主要問題有:
任何工程學科教育都離不開理論與實踐相結合的教學理念,理論學習是實踐的基礎,實踐是理論學習的最終目標。目前,我校在面向過程程序課程設計與教學的過程中對實驗實踐的教學仍停留在依靠實驗指導書的階段,使實驗課程難以達到培養學生解決實際問題能力的目的,禁錮學生的思維,這與新工科概念中創新人才培養的核心理論相悖。學生脫離了實際問題的環境,對所學知識的理解和掌握僅僅停留在知識點的程度,如何將實際問題抽象為計算問題,進一步表達為編程語句這一過程,難以做到融會貫通。
新工科意義下的創新人才應具備更高的綜合素質,因此需要更加完善的考評機制作為衡量標準。現有的面向過程編程課程期末考試區分度不高,考試形式與往年較為相似,導致學生平時上課僅僅學習相關理論和書本知識,而忽略實際動手能力的培養,也可以順利通過考試。與此同時,除了考試考核的內容與方式需要進行適當調整外,實驗實踐過程中的打分環節也需進一步細致化、科學化和全面化。
教學軟件是一個包含教學計劃、內容與方法等多方面的概念。傳統工科教學常常囿于教學計劃的約束在固定的課時里進行“填鴨”式教學。以面向過程編程課程為例,教師們把課堂教學重點放在對語法、語義掌握與注意事項等方面而不重視結合具體程序進行講解;在編程實踐中將教學重點放在編程技巧和程序調試上而沒有結合生活實際去引導學生接觸與時俱進的新硬件、新程序。另一方面,傳統工科班級體量較大,大班教學的優勢在于方便教師控制教學進度、課堂管理以及考核評定,但是缺點同樣明顯。面向全體學生的集中授課很難對每一位學生提出有針對性的指導,無法在教學過程中進行針對性施教。
針對上述存在的問題,本文結合實踐經驗,從教學的方法、手段、內容等方面進行闡述,以培養學生實際問題解決能力為核心,構建面向過程程序設計教學改革與建設新的參考方案。
結合新工科背景的要求與現代教學的實際情況,傳統工科的課程改革方法應該緊扣上述的幾個共性問題,以問題樹立風向標,為課程改革之路指引正確的方向。同時,由于問題存在于多個方面,故其對應的解決方法也應是多角度的,依此提出“多角度融合式課程教學改革框架”。
采用單一的期末考試作為考核評價手段,往往出現臨時抱佛腳的學習行為。本課程組對教學環節進行了改革,課程考核更加重視過程性考核。理論課的具體考核如下:(1)出勤及課堂表現:10%;(2)課外編程作業:20%;(3)章節平均測驗成績:30%;(4)期末考試40%。實踐課程的具體考核方式如下:(1)出勤及表現:10%;(2)實驗完成情況和實驗報告:30%;(3)實踐項目成績:30%;(4)期末考試成績:30%。其中實踐項目分配采用分組方式,按小組分配實驗項目任務,引導學生進行團隊協作,通過團隊合作完成項目結果驗收,由教師綜合面向對象程序設計能力、系統分析能力、創新能力及自主學習能力給出小組成績,具體各項指標比例如表1所示。通過考核方式的改革,提高學生的工程能力、創新能力和團隊協作能力,以適應新工科對計算機類人才的要求。

表1:考核參考評分
為了提高學生的學習興趣,課程組每次上課中都會播放一段其他知名高校的名師授課視頻,課后和同學們交流,引導同學提出建設性意見,包括:課程內容,授課方式等,老師通過收集信息來不斷改進教學方式。
本課程組將順應全球教育改革趨勢,將線上學習引入全校理工科類的《編程基礎(1)面向過程》課堂,要求學生初步適應線上、線下的混合學習模式,并且對于學習情況定期考核。這在一定程度上,增強了學生自主學習的能力,為想要學習的學生提供了非常好的課下自學的途徑。
師生互動現象在課堂教學中是客觀存在的,貫穿課堂教學的全過程。根據其產生效果的不同,可以把師生互動分為正互動和負互動。正互動就是指能取得積極效果的互動方式,即有效的師生互動;負互動是指不能取得積極效果,甚至是負面效果的互動方式,即無效或影響教學效果的師生互動。
尋找“興趣點”,以趣引動。興趣是“最好的學習助推器”。教學中,教師要善于抓住符合學生身心特征的“興趣點”,以學生喜愛的方式開展教學活動,激起學生參與互動的欲望,達到提高師生互動有效性的目的。如在學習《數組》內容時,結合電子游戲《英雄聯盟》的人物屬性數值存儲方式,所需變量數量等展開介紹,引導學生積極主動對不同的數據組織存儲方式展開探索。
創造“思維點”,以思引動。數學思維的訓練始終是編程語言教學的核心任務之一。然而,由于學生的個體差異和教學內容的區別,有些知識中的思維過程比較難以把握。此時,教師可以有意識地參與學生的討論,幫助學生學會用數學的方法思考問題,把握學生學習過程中的“思維點”。在學習《函數》時,對比編程函數和數學中計算函數的異同,讓學生理解函數產生的邏輯過程,函數的本質作用以及如何將邏輯推理過程轉化為計算機語言表示,以樹立面向過程編程的思維模式,把握以外在編程語言形式培養內在編程思維的目的。
做到學生課外自主學習、單元測試、課堂表現、課后作業、實驗環節的全過程積極互動,既能督促學生平均分配學力,又能助于教師根據學生實際學習情況,適時調整課堂上課的內容、進度、深度、廣度。
整個教學過程有個人完成環節和團隊完成環節,例如:單元測試、課后最低練習數量及期末測試,都是個人完成環節,保障了每個人能夠達到學習要求,避免了“混水摸魚”和“濫竽充數”的情況。而課前的資料查詢、PPT制作,課堂上的給老師和同學們上課以及課后習題講解,每個團隊甚至每個成員可以根據興趣以及天賦差別進行不同層次的深入學習,實現了因材施教、個性化、差異化教學。
面向畢業要求的程序設計課程應同時注重學生個人編程、調試能力的培養,也應注重學生團隊協作、溝通能力、創新能力的培養。課程組利用每次課前的團隊題目、課堂的講述及討論環節,給學生提供了兩條并行的能力鍛煉線路,有助于學生能力的全面培養。
隨著計算機軟件技術的快速發展,越來越多的高級編程語言成為軟件工作者需要掌握的必備語言。但是面向過程編程一直以來都是編程入門語言之一,學好面向過程編程,有助于面向對象高級語言的學習和面向對象思維的形成,通過面向過程編程的學習,培養學生在編程過程中的計算思維,有助于學生深刻領會把握程序語言與邏輯思維之間的關系,對學生快速學習其他高級編程語言的能力起到促進作用,為學生提供學習編程語言更高的視角。同時,教學目標的調整、教學內容的優化、新的教學方法和手段的運用、考核機制的完善等措施順應我國當前高校人才培養的目標,為學生提供了更加個性化的廣闊選擇空間。