摘要:Java作為目前最熱門的程序設計語言之一,是當前很多高校計算機專業的必修課程。文章簡要介紹Java在線開放課程建設的背景,分析Java在線開放課程建設的可行性及意義,詳細闡述Java在線開放課程建設的主要內容,最后討論J&va在線開放課程建設與使用過程中遇到的若干問題。
關鍵詞:lava;在線開放課程;網絡課程
1.Java在線開放課程建設的意義
從2012年開始,美國一批頂尖大學開始陸續建設網絡學習平臺并在平臺上提供一些供學生免費使用的優質課程,這被視為在線開放課程的開端。隨著三大課程提供商edX、Coursera、Udacity的興起,在線開放課程蓬勃發展。國內的一些知名高校幾乎與國際同步開始在線開放課程的建設,如2012年5月清華大學成為edX的第一批亞洲高校成員,正式與edX合作;2013年7月,上海交大和復旦大學簽約Coursera;2014年5月,網易云課堂與愛課程網合作推出的“中國大學MOOC”項目正式上線,承接教育部國家精品在線開放課程的任務。目前,在線開放課程建設受到越來越多國內高校的重視。
在線開放課程之所以受到如此關注,是因為它具有以下優點:①教學資源和學習工具多元化。在線開放課程整合多種形式的數字化資源和多種社交網絡工具,形成了形式多樣的課程資源和多元化的學習工具。②課程使用方便。在線開放課程使得世界各地的用戶可以通過網絡,在家學習著名高校提供的優質課程,從而突破傳統課堂的時空限制。③課程受眾面廣。在線開放課程用戶通過網絡進行學習,能夠滿足大規模學生同時學習。
Java面向對象程序設計(以下簡稱Java)是很多高校計算機專業的必修課程,是學生后續學習當前主流開發技術的基礎,課程地位十分重要。浙江師范大學行知學院的Java課程是計算機專業每屆學生的必開課程,是Web前端開發、Web系統開發、移動互聯網開發技術等后續課程的基礎;尤其在與國內信息安全領域某知名公司簽訂聯合辦學協議后,我們已經把網絡應用安全方向確定為將來計算機專業的重點發展方向,因此網絡應用開發技術相關課程的重要性愈顯突出。
隨著社會經濟和信息技術的發展,個人電腦和移動智能終端越來越普及,尤其是在高校計算機專業中,學生幾乎人手一臺筆記本電腦和一部智能手機,因此Java在線開放課程用戶已經具備良好的硬件基礎。此外,Java課程內容由一系列可離散化的知識點組成,比較適合在線開放課程這一新興的教學模式,因此Java在線開放課程建設具有良好的可行性。另外,Java在線開放課程的意義還在于能夠為將來開展線上和線下融合教學提供基礎。
2.Java在線開放課程的建設內容
在線開放課程與傳統的網絡視頻課不同,它需要提供多元化的數字化教學資源,主要包括課程教學大綱、知識點關系及學習導航、高質量的教學視頻、隨堂講義、同步練習、學習評價方案、其他輔助資源等內容,并且提供師生互動與答疑機制等。Java在線開放課程建設的主要內容如下。
(1)課程教學內容知識點的離散化。在線開放課程的一個重要優點在于它能夠讓用戶通過碎片化的積累成就系統性的學習?;诎咐腿蝿镇寗拥慕虒W法有利于激發學生的學習興趣,提高學生的學習效率,在傳統課堂教學上具有良好的教學效果并被廣泛應用。為了突出案例的趣味性和實用性,所設計的案例往往包含多個知識點,可能需要較長的時間才能完成;而在線開放課程用戶的時間往往比較零碎,每次在網上學習的時間比較短,因此基于綜合案例的任務驅動教學法并不適合在線開放課程的學習特點,在線開放課程適合采用更細粒度的教學單元。為了適應這一需求,必須以知識點為基本教學單位重新組織教學內容,因此在線開放課程建設的首要任務是實現課程教學內容的知識點離散化處理。在Java在線開放課程的建設中,我們把課程教學內容劃分為68個知識點。
(2)基于知識點的教學單元設計?;谥R點的教學單元設計是Java在線開放課程設計的重要內容。Java作為一門程序設計語言課程,主要目的是讓學生具備使用Java編程的能力。為了實現良好的教學效果,教師需要將知識點講解融入一個個實例中,因此基于知識點的教學單元設計重點是基于知識點的實例設計??紤]到在線開放課程的特點,每個教學單元時間不宜過長,一般要求控制在5-10min之內,因此教師在設計教學實例時,除了要考慮實例的典型性、趣味性、實用性等,還特別需要注意教學實例的大小。另外,有些知識點在Java課程知識體系中具有十分重要的地位,如構造方法、參數傳遞、super關鍵字使用、多態、接口回調等,為了能夠讓學生更好地理解和掌握這些知識點,教師需要設計多個教學實例。
根據不同知識點的特點,我們采用不同的教學單元內部組織形式:有些是先進行知識點講解,后介紹相關應用實例,如在講解for語句時,首先通過一個簡單的例子介紹for語句的執行機制,然后通過稍復雜的例子讓學生進一步理解for語句的功能;有些是先提出實際問題,再介紹相關知識點,最后解決問題,如在講解String類常用方法時,首先提出并分析“如何判斷一個字符串是否是回文”的問題,然后再講解需要用到的String類相關方法,最后使用String類的相關方法解決“判斷回文”的問題;另外,在某些教學單元最后,我們提出一個小問題,引導學生進行下一個單元的學習,如在“方法重寫”教學單元的最后,提出“如何調用被覆蓋的父類方法”的問題,吸引學生進入“super關鍵字”知識點的學習。
(3)教學單元視頻的制作。在線開放課程的視頻比普通公共課的視頻具有更高的要求,要想達到更好的教學效果,必須采用多種媒體技術制作教學視頻,還需要根據知識點及其實例的特點選擇最適合的媒體技術進行呈現。例如,一些操作技能性知識點(如JDK的安裝與環境配置、Eclipse的安裝與使用等)比較適合采用屏幕操作錄像;一些語句功能(如Java流程控制語句等)的講解可采用板書錄像;一些原理性的知識點(如對象的內存模型、參數傳遞等)講解則可借助于靜態圖片展示或Flash動畫等。教學視頻的制作是Java在線開放課程建設工作的重中之重。 (4)視頻教學單元配套講義的整理。為了提高在線開放課程的教學效果,除了提供基于知識點的教學視頻外,還需要整理與之相配套的教學單元講義。在教學單元講義中,一般需要提供如下內容:教學目標、知識點內容、前續知識點、相關實例功能及其實現過程、鞏固性提問、參考資料列表等。配套講義可以和教學視頻相輔相成,共同促進學生的學習并為學生提供必要的知識拓展。
(5)同步練習的設計。為了能夠使學生所學的知識和能力得到及時鞏固,教師需要為每個視頻教學單元設計同步練習??紤]到在線開放課程學生的學習特點,在設計同步練習時,教師需要重點關注同步練習的大小和難度。同步練習不應過大,可以與教學視頻中的實例相當或比其稍大;在難度方面,一般是由單一知識點應用到多個知識點應用,由簡到難,層次遞進,這樣有利于知識的鞏固和編程能力的提升,同時不至于打擊學生的學習積極性。另外,設計的同步練習需要有一定的實用性和趣味性,以有利于提高學生的積極性。
(6)Java程序自動評判系統的設計。Java作為一門程序設計語言,最主要的目的是培養學生的編程能力,要實現這一目標,學生必須進行大量的編程練習。為了提高學習效率,及時對學生完成的Java程序進行評判與反饋就顯得十分重要,但參加在線開放課程學習的學生人數往往較多,通過教師人工評判顯然無法滿足需求,因此需要考慮設計Java程序自動評判系統。目前,有些用于ACM競賽的0J系統支持對Java程序的自動評判,但這些系統對Java面向對象編程的特點支持不足,不能很好地滿足Java在線開放課程的需求,因此我們需要對Java程序的自動評判技術進行研究。
(7)學習效果的評價。在線開放課程在教學組織、學生層次、學習方式等方面與傳統課堂教學存在較大的差異,因此學生的學習效果評價方案也需要作出相應的調整??紤]到在線開放課程中學生的學習時間比較零碎,因此學習效果評價時間不宜過長,適宜采用化整為零,以章節為單元進行階段性評價;考慮到學生間的學習進度存在差異,空余時間也不盡相同,因此適宜采用分散式自主評價,讓學生根據自己的學習進度進行學習評價,另外還可以把學生的視頻觀看記錄、同步練習作業等數據作為其學習評價的一部分。
(8)其他輔助資源的整理與建設。在線開放課程建設除了上述內容外,還需要整理和建設其他輔助資源。例如,整理Java常見問題及回答預案,以便教師在互動答疑時能夠及時、準確地回答學生提出的疑問;提供最新版本JDK和Eclipse安裝包的下載鏈接;提供一些主流Java技術論壇的鍵接,讓學生可以在課余時間學習交流。
3.Java在線開放課程建設與使用過程中遇到的問題
首先,教學視頻的制作需要專業視頻錄制人員的參與。在線開放課程對教學視頻提出了更高的要求,因此在課程建設團隊中,除了要有教學經驗豐富的教學名師外,還需要有精通視頻拍攝的專業人員,如攝像師、配音師、動畫制作師等,甚至導演;另外,還需要比較專業的設備和場地,如攝像機、攝影棚、專業視頻編輯平臺等。在Java在線開放課程教學視頻錄制環節,我們邀請浙江師范大學行知學院信息技術傳播實驗教育國家示范中心和學校電視臺的專業人員加盟,錄制的視頻質量好,工作效率高,反而降低了相關成本。
其次,Java在線開放課程必須要有相關平臺的技術支持。由于浙江師范大學行知學院的在線開放課程平臺還在招標采購中,因此目前Java在線開放課程已建成的部分資源只能暫時存放在原來的網絡教學平臺上。原來的網絡教學平臺提供課程管理、學生管理、教學材料管理、作業管理、在線測試、互動答疑討論等功能,能夠滿足普通網絡課程的基本使用。然而,該網絡教學平臺對視頻資源的支持并不理想,基于知識點的教學視頻只能作為教學資源進行管理和維護,學生在訪問觀看使用視頻時比較麻煩。另外,隨堂練習也無法與相關的教學視頻建立關聯,需要學生以人工的方式進行選擇,使用起來十分不便。為了能夠讓Java在線開放課程發揮更大的作用,必須要有相關平臺的技術支持。
最后,Java在線開放課程的各個使用環節需要進一步探索。由于Java在線開放課程目前還處于建設階段,我們還是以傳統課程形式為信息類學生開設Java,而只是將Java在線開放課程作為一個輔助教學平臺供學生課余學習?;诮ㄔO中的Java在線開放課程,我們嘗試“翻轉課堂”這一新的教學模式:首先,教師要求學生在課余時間觀看教學視頻,進行相關內容的學習;然后,教師在課堂上通過提問、答疑等方式幫助學生鞏固所學知識。學生對這種新的教學模式感到新奇,但同時對這種改變還不太適應,學生和教師都需要更長的時間適應這種改變。另外,我們嘗試階段性分散自主學習評價,由學生單獨在自己的電腦上完成測試,但由于系統無法鑒別系統用戶的身份,因此無法有效保證評價的公平性。
4.結語
筆者通過分析Java課程內容及其教學特點,提出建設Java在線開放課程的設想并開展Java在線開放課程的建設工作,主要包含知識點離散化、基于知識點的教學單元設計、教學單元視頻制作、配套講義整理、同步練習設計、Java程序自動評判系統構想、學習效果評價等內容。在線開放課程具有開放性、無時空約束、教學資源多元化等特點,對傳統的教學模式產生很大的影響。然而,在線開放課程有其固有的優點和不足,還需要我們在實踐過程中不斷探索和總結,必須充分考慮課程平臺的技術特點,才能使課程內容和課程平臺無縫對接,從而達到良好的教學效果。