徐照興

關鍵詞:翻轉課堂;構建課堂新生態;面向對象程序設計;課程建設;微課
中圖分類號:G642.0 文獻標識碼:A
文章編號:1009-3044(2023)08-0157-04
隨著信息技術、互聯網技術的不斷發展,學生的學習習慣、學習思維及學習方式發生很大的變化,比如學生可以很方便地使用電腦、手機查閱各種資料、觀看各種學習視頻,可以說很多知識都不用“死記”,那么在教育信息化2.0時代教學模式、方法及手段就要相應地進行轉變。即“互聯網+教學”“大數據+教學”的時代已經到來,和新技術融為一體的新教學是必然趨勢[1]。教師不能再是單純傳授知識,而是要做到以學定教,比如,課前給定或指定相關學習資料讓學生先自主學習,然后收集學生的相關學習疑問及難點,課堂進行精講,學生可以課堂現場查閱資料進行回答問題,這樣有利用培養學生綜合能力,有利于培養應用技術型人才[2]。筆者就是在這樣的思想指引下對面向對象程序設計課程進行了建設,下面給出具體的建設措施,以期為同行提供參考與借鑒。
1 面向對象程序設計課程的性質與定位
面向對象程序設計課程是計算機科學與技術、軟件工程等的一門專業基礎必修課[3],是理論與實踐互為支撐的應用性課程,該課程的主要教學目標是培養面向對象程序設計的思想,并且熟練掌握一種開發工具來實踐面向對象程序設計思想,具備WinForm應用程序開發基本能力。該課程與后續課程共同培養學生的軟件工程實踐能力,能設計與實現滿足用戶特定需求的高解耦、高擴展的軟件系統。
該課程先修課程有計算機基礎、程序設計基礎(C語言程序設計)、高等數學等,后續課程有ASP.NET動態網頁設計、NET開發框架技術、Java程序設計、JavaEE開發框架技術、PHP程序設計、數據庫系統等。
2 當前面向對象程序設計課程教學中存在的不足
筆者有多年的實踐開發經驗,且做教學督導多年,聽了很多同行教師授課,同時筆者對面向對象程序設計課程的教學進行了調研,發現主要存在以下不足。
2.1 重視理論課堂的教學,忽視實踐課時的教學
教師在教學過程中非常重視理論課堂的教學,而忽視實踐課時的教學,表現在以下三個方面:1) 理論課時的教案設計安排非常詳細,有如何導入、提什么問題、注意什么事項及總結;而實踐課時的教案往往只給出實踐的主題或要求。
2) 理論課的教學過程中教師比較有激情、與學生的互動也較好,而實踐課時的教學很多教師站在講臺或坐在教師機旁,與學生互動較少,很多時候是放任學生自由,缺乏對學生必要的督促與指導。
3) 理論課時安排偏多,也即教師講解偏多,實踐課時偏少,經與教師溝通了解到有些教師擔心課程講不完,所以教師自己多講,這實際上就是滿堂灌的一種現象,沒有考慮學生才是課堂的主體,講得多并不代表學生學得多[4]。
2.2 重視案例功能的實現,忽視面向對象思想的培養
教師在教學過程中非常重視案例功能實現的分析,而忽視案例為什么要這樣實現[5],這樣實現的優勢是什么,即缺少必要的面向對象的設計模式分析,這樣勢必導致學生在遇到具體問題時思路不開闊,不會從設計模式角度去考慮實現方法,容易受到面向過程思想的影響,在實現項目功能時把所有代碼放入一個類中,這樣就與面向對象思想相違背。面向對象思想的核心是封裝、繼承、接口、多態、類與對象[6]。在設計類時每個類的功能職責盡量單一,然后可以通過繼承擴大類的功能;另外需要考慮各個模塊之間的耦合性,各模塊之間盡量依賴接口,因此需要多設計接口,然后設計類去實現接口等,這些才是面向對象設計精髓,但是很多老師往往忽視,這與課程教學目標不吻合。
2.3 重視根據教學章節引入“小”案例,忽視根據課程目標引入“大”項目
教師在教學過程中非常重視根據當前教學章節引入“小”案例,而忽視根據課程目標引入“大”項目。這樣導致的問題就是很多學生課堂上很活躍,好像所有問題基本都可以解決。然而,在實際開發過程中就會碰到這樣那樣的問題,而且發現很多問題好像是在平時上課學習時沒有碰到的,這是什么原因呢。
簡單說就是項目開發運行的不同環境所導致。具體來說就是平時教學中采用“小”案例,它所涉及的運行依賴環境是教師事先設置好或者它本身依賴的環境就比較少,這樣在實現功能時出現的問題會比較少,即功能比較容易實現。而實際開發過程中的項目往往是綜合性的,它的所有運行依賴環境需要開發者自己配置,而且這樣環境配置好后,有些時候在“小”的案例中可以實現功能的方法,在“大”的項目中還不能解決問題,因為一些項目相關程序集的引入,會導致一些方法運行不了,這就不利于培養學生軟件工程實踐能力。
3 基于翻轉課堂教學策略,構建課堂新生態的教學模式
以培養應用技術型人才為目標,基于“以學定教”的指導思想,依據面向對象程序設計課程的性質與定位,為解決上述面向對象程序設計課程教學中存在的不足等,提出基于翻轉課堂教學策略,構建課堂新生態的教學模式,具體來說有以下幾個方面。
3.1 重構教學內容
教學內容的先進與否可以說是決定一門課程是否為優秀課程的主要因素,如果只是傳授過時技術概念、企業不用的技術,學生學得再好也不能做到學校的“及格”等于企業的“合格”[7]。基于此理念筆者對面向對象程序設計課程教學內容進行了大量調研,同時結合自己多年對此課程教學的經驗,對教學內容進行了重構。
1) 教學內容選取原則
①密切跟蹤行業發展,圍繞行業常用技術、已成熟的新技術進行組織重構教學內容。
②針對崗位需求或者所需素養(面向對象程序設計主要為培養軟件工程師服務),對必學知識重新排序,培養學生實際技能[8]。
③引入典型開發項目,將學習型實踐轉換為生產型實踐。
④堅持理論適度的教學內容選擇標準,強化實踐教學。
2) 合理安排與整合教學內容
面向對象程序設計語言目前主要有Java、C++、C#,筆者選取了C#,因為C#是一門非常優秀且簡單易學的語言,C#語言是2000年才開始發展起來的語言,它吸取了C++的優點,相比Java 具有簡單易學的特點[9]。結合上面教學內容的選取原則,筆者把面向對象程序設計教學內容分為三大模塊,具體見表1所示(含課時安排)。
3.2 借助“互聯網+”技術手段輔助教學
“互聯網+教學”已是一種教學趨勢,筆者就把“互聯網+教學”應用于面向對象程序設計課程的教學中。主要是借助于以下兩種“互聯網+”技術手段。
1) 網絡綜合教學平臺
大多數高校均引進了網絡綜合教學平臺,在該平臺可以很方便地進行課程建設。通過該平臺教師可以上傳教學大綱、教學日歷、教學課件、教學微視頻、拓展資源鏈接等各種教學資料,此外,還可以布置作業、發布討論等,更重要的是教師能夠清楚地知道哪些學生觀看了哪些資料。不過有些網絡綜合教學平臺尚沒有移動版本,也即是學生不能隨時隨地觀看學習,教師也不能隨時隨地查看學生的學習情況及不能及時與學生溝通。因此筆者還引入了藍墨云班課App。
2) 藍墨云班課App
藍墨云班課App是一款免費課堂互動教學App,也是一種融入人工智能技術的智能教學工具[10]。使用藍墨云班課輔助教學具有以下特點。
第一,課前課后學習資源的推送。推送的教學資源可以有教學微視頻、課件、配套測試題、數據庫等素材、教師相關研究論文、學習資源鏈接、作業、通知消息。學生可以通過手機隨時隨地在班課中查看學習資源,教師可以通過班課查看學生的學習情況,并對沒有及時完成的學生推送提醒通知。
第二,即時反饋調整教學。利用云班課可以對整個教學活動數據化,學生觀看視頻、參加教學活動(討論、測驗、頭腦風暴等)都有詳細的實時記錄。測試活動可以設置多長時間完成、能否重做、重做的次數、什么時候查看答案,提交后會給出測驗情況的分析,教師可以根據學生的反饋有針對性地開展教學,通過數據分析調整教學進度,真正實現以學生為中心,以學定教,提高教學效率和教學質量。這樣,平常的教學過程性評價點被一一分解到各個資源學習、教學活動學習。使用QQ群、微信群可以發布教學資源,但是學生是否查看學習沒有辦法監控,現在云班課中可以清楚知道每個教學資源多少同學沒看,對于沒有查看的同學,還可以進行提醒。此外,藍墨云班課的人工智能可以通過語音和文字形式反饋學生的學習情況給老師,也會反饋提醒學生。
第三,基于游戲理念設計經驗值的獲取方式。參加觀看視頻學習、非視頻資源學習、討論、頭腦風暴、問卷、測驗等活動可得到相應的經驗值。這種設計基于游戲理念,學生的經驗值要一分一分去掙了。在云班課的成員模塊中,教師可以隨時關注到每個學生的經驗值獲得情況,學生也可以關注自己的經驗值情況,這對實現過程性評價的即時反饋和學習指導作用是有極大幫助的。
總之,使用藍墨云班課就是要有足夠多的資源、開展適量的活動、及時關注學生的學習情況。
3.3 運用翻轉課堂教學策略
運用翻轉課堂的教學策略其本質就是讓學生課前自主學習,根據學生自主學習情況,課堂上教師精講[11]。如何讓學生課前更好的自主學習,這就可以利用藍墨云班課和網絡綜合教學平臺,但是這里關鍵是教師要能提供足夠配套的優質資源,包括教學微視頻、討論題、測驗題、拓展學習資源等,此外,還有一個非常重要資源要提供給學生——教學設計。那么這些配套資源如何成為優質資源呢?需要教師花大量時間去準備。研究結合近兩年的翻轉課堂教學經驗及調研,給出教學設計撰寫和配套微視頻錄制的注意事項。
1) 教學設計撰寫及注意事項
撰寫教學設計的目的有兩個:一是方便教師錄制微視頻和教學時做到“心中有數”;二是方便學生整理筆記。撰寫教學設計時要注意以下事項。
①根據本章節一級教學目標,分解成一個個二級教學目標,如果二級目標還比較大,再分解成三級目標,確保一節微視頻只講一個問題,時間控制在15分鐘左右。
②根據一個個細分的小目標,選取或設計合適的案例,然后通過設疑、提問、試錯、討論等形式一步步引導學生去達成小目標。
③最后一定要總結梳理知識。
2) 微視頻錄制及注意事項
微視頻是進行翻轉課堂非常有效的一種學生自主學習資源[12],而且配套的微視頻最好要是教師自己錄制的,這樣才更有針對性。錄制軟件建議采用Cam?tasia Studio ,錄制輸出格式建議為MP4,分辨率建議為1280×720,時長15分鐘左右,不超過20分鐘等基本參數要與省級和國家級在線開放課程建設技術規范要求相符。此外,錄制時還要注意以下事項:
①錄制時一定要充分備課,撰寫好教學設計。
②錄制場所一定要安靜,錄制時不能有咳嗽等不必要的雜音及不能有超過2秒的空白,有的話一定要剪切掉。
③在錄制前把這一節課需要的素材、窗口都準備好,在錄制需要用到時直接切換到窗口即可,不要在錄制的時候去找素材等浪費時間。
④錄制前注意口腔保持干凈,特別是牙縫里不能藏有雜物,否則影響講課。
⑤對于代碼編寫分析課程,一定要在錄制時手動敲代碼,不要直接展示PPT,為了保證敲代碼不受影響,教師不要留有指甲。
⑥錄制的字體不能小于14磅,否則學生利用移動端觀看時字體會很小,影響觀看。
⑦由于錄制時是面對電腦,很多教師聲音過于平淡或者不自然,這樣不利于學習者堅持學下去。因此錄制時聲音不要過于平淡,要有激情,甚至是手勢,要想象下面有學生。
⑧錄制時最好錄制2遍,第一遍錄制好后,自己聽一遍,就會發現有些不足的地方,及時記下來,然后再錄制第二遍改進不足地方。
⑨在導出生成MP4時,注意把鼠標的單擊、右擊給以突出強調。
錄制時做到以上9點,就可成為優質資源或者說是“干貨”。這些“干貨”微視頻建議教師同時上傳到各大在線教育平臺(比如51CTO學院、CSDN學院、騰訊課堂、網易云課堂)供其他院校學生或社會學員學習,可以設置為付費課程,一方面為教師自己辛苦付出獲取一定的回報,另一方面教師課程如果被很多其他學校或者是社會學員學習,學生會對老師產生敬佩,也會更好地尊重教師,從而會更好地跟著教師學習。
3.4 采用“學生分享講解、教師精講點撥、師生共同梳理、有效布置任務”四步課堂教學流程
經給定充分且優質教學資源后,學生經過課前自主學習,課堂上教學流程必然要與翻轉課堂對應,首先要對全班學生進行分組,組員建議按成績好中差搭配,每組4人左右,并設定一名小組長[13],然后課堂上按照學生分享講解、教師精講點撥、師生共同梳理、有效布置任務四步教學流程執行。
1) 學生分享講解
課堂上指定某小節教學內容,然后隨機抽取一名學生上臺講解,該名學生講解遇到問題時可以由該學生所在組的其他組員進行補充講解。這里要點是兩個隨機。第一,隨機指定某小節教學內容,當然這個小節內容不宜過長;第二,隨機抽取一名學生。其目的在于督促激勵每個學生課前要認真進行自主學習,同時培養學生的表達能力、團隊合作協調能力。
2) 教師精講點撥
教師課堂上一定要注意是精講,所以在上課的前1~2天教師一定要收集學生自主學習過程中遇到的難點及學生給出的授課建議等。教師可以設計“個人/小組自主學習任務反饋單”及“小組自主學習任務反饋匯總單”,這兩個任務單核心就是收集并匯總學生在自主學習過程中遇到的學習疑問、學習收獲/感悟、對教師此內容授課的建議等。教師在收集到反饋任務單后,然后根據此再次備課。做到這些之后,教師在課堂上才可能真正做到精講。教師在精講過程中重在答疑,給出應注意及容易出錯的知識點。
3) 師生共同梳理
教師在精講點撥之后,要引導學生一起回顧梳理本次課主要知識點,從而進行歸納總結。這里教師要注意重在引導學生去回顧總結,可以通過小任務、提問、討論等形式去引導。
4) 有效布置任務
在課堂的最后就是布置課后課前學生要去完成的任務。通常都有鞏固本次課知識的作業及自主學習下次課的教學內容,也即要完成“個人/小組自主學習任務反饋單”。但不能簡單地對學生說:去完成某某作業或者去自主學習某某教學內容,如果這樣的話學生會認為教師不重視,學習的積極性自然不高或者純屬應付[14]。有效的布置任務才能更好地促進學生課后去積極完成。有效布置任務要做到以下幾點:
①任務難度及學習量要適宜,同時交代清楚完成作業任務的作用意義,這也是備課的一個重要內容。
②要提供配套且充分的學習資源。
③明確每一項作業任務的上交要求、上交時間、誰負責收齊。比如:一些討論答疑題、頭腦風暴題可以直接在線作答完成;有些題目需要上交源程序的,就要明確上交要求,是直接把源程序壓縮上交還是把源程序運行后操作過程錄制視頻或者截圖等。
④讓負責收齊作業的學生在截止日期的前一天通過班級群等方式提醒學生上交作業。
⑤不按要求不按時上交作業的后果是什么等都要說明清楚。
4 結束語
當前面向對象程序設計課程教學存在的主要不足是重視理論課堂的教學,忽視實踐課時的教學;重視案例功能的實現,忽視面向對象思想的培養;重視根據教學章節引入“小”案例,忽視根據課程目標引入“大”項目。歸根結底就是不能很好地為培養應用技術型人才服務。而翻轉課堂的教學策略運用,本質是充分體現學生的主體地位,促進學生從被動學習向主動學習的轉變,促進課堂上知識信息的有效傳遞,從而打造有效課堂和高效課堂[15]。翻轉課堂是很好的培養技術型人才的手段,但是就面向對象程序設計課程而言,經實踐研究表明:基于翻轉課堂教學策略的面向對象程序設計課程建設是有效的。也即是在運用翻轉課堂的同時,還要對教學內容進行重構,提供充分且優質的學習資源,然后借助于“互聯網+”技術手段輔助教學,同時改變課堂教學流程,采用“學生分享講解、教師精講點撥、師生共同梳理、有效布置任務”四步課堂教學流程。
對面向對象程序設計課程要能有效地進行翻轉課堂,對教師的要求是非常高的,首先教師要有軟件開發實戰經驗,其次需要教師花費更多的時間備課,這就需要學校層面給出相應的政策支持。