吳冬芹 劉瀟涵 李佳
摘 要:云計算技術在學習領域的應用使云學習成為發(fā)展的必然趨勢。在云學習理念下所設計的在線互動編程服務系統(tǒng),針對程序設計初學者,提供了包括云端編程、云端指導、云端資源管理的各項功能;在技術層面,不僅提供了web實現(xiàn),更有app應用,學習者可以在不同終端登錄系統(tǒng),隨時隨地展開編程活動,系統(tǒng)的使用和推廣能極大地改善程序設計的學習效果,提高學習效率。
關鍵詞:云學習;云端互動編程;云端資源管理
中圖分類號:TP315 文獻標志碼:A 文章編號:1673-8454(2016)03-0076-03
一、引言
在網(wǎng)絡和計算機技術快速發(fā)展的時代背景下,涌現(xiàn)出種類繁多的云學習平臺。經(jīng)調(diào)查發(fā)現(xiàn),現(xiàn)有學習平臺主要的優(yōu)勢在于提供了豐富的視頻資源,同時開設用于學習者討論的論壇、貼吧等,滿足了一定人群的學習需要。不足之處在于,現(xiàn)有云學習平臺在功能上過于強調(diào)通用性,在內(nèi)容上關注學科的齊全性,針對性不夠強;尤其是針對實踐性較強的程序設計語言,缺乏有效的編程實踐環(huán)境和項目實踐指導,顯得蒼白無力,很難真正滿足程序設計學習者的需要。
云學習理念下的在線互動編程服務系統(tǒng)在此背景下產(chǎn)生,結(jié)合云學習的特點,平臺針對程序設計初學者進行設計,以編程吧的形式展現(xiàn),提供了云端編譯的環(huán)境,學習者可以在任意終端登錄,選擇自己需要的程序設計語言,編寫、編譯程序;此外,編程吧還提供大量可在云端練習的各種語言的程序題目,每種語言還有專家團隊對學習者在云端提供一對一的專業(yè)編程指導。
二、云計算與云學習
云計算是一種基于互聯(lián)網(wǎng)的全新計算模式, 它是在分布式系統(tǒng)、網(wǎng)格計算、虛擬存儲等基礎上形成的一種新型共享基礎架構, 它的核心是提供數(shù)據(jù)存儲和網(wǎng)絡服務。[1]隨著云計算應用研究的不斷深化,越來越多的研究者開始研究如何利用這一新技術改進人們的學習方式、更新學習資源、改造學習環(huán)境,“云學習”理念在此背景下應運而生。這也是云計算在學習領域的廣泛應用,與學習者群體的現(xiàn)實學習發(fā)展需求相一致。
云學習理念勢必會潛移默化地改變學生的學習行為和學習結(jié)果。[2]在云學習時代,真正把“學習的主動權還給了使用者,使用者可以高度自由地控制學習的內(nèi)容、方向和進度”。在學習內(nèi)容、學習時間、學習場所的選擇上,學習者有了更多的決策權,能真正為自己的需求、自我成長而學習。[3]云學習是在云計算上的延伸和發(fā)展。[4]這一新的學習理念要真正為學習者服務,還需要構建一定的平臺,不斷進行嘗試和探索。
三、云學習理念下的系統(tǒng)目標
云學習具有開放性、交互性、個性化學習、優(yōu)質(zhì)學習資源整合等特征。[2]結(jié)合云學習的思想,可以得出云學習理念下互動編程服務系統(tǒng)的整體設計目標。
1.云端編程
對于所有的程序設計學習者而言,編程環(huán)境的安裝和配置是極為重要的,編程環(huán)境也約束了學習者的編程自由,一旦離開自己配置好的電腦,就無法展開編程練習。針對這一點,在線互動編程服務系統(tǒng)糅合了云學習開放性的特點,程序設計學習者不再受環(huán)境的約束,在任何時間、任何地點、任何終端都能登錄,選擇正在學習的語言,編寫、編譯并且運行代碼,徹底擺脫了對編程環(huán)境的依賴,使學習者的學習空間得到了極大的拓展和延伸。
2.云端指導
云學習的特征之一就是能夠針對不同學習者提供個性化的學習需求。[5]依托云學習服務思想,在互動編程服務系統(tǒng)中,學習者能夠方便快速選擇所需要的學習資源和服務。在學習過程中,如果編寫代碼或者編譯程序遇到問題,不能解決,可以選擇系統(tǒng)內(nèi)各種語言對應的專家,在任意終端都可以將相關問題發(fā)送給所選擇的專家,能夠隨時隨地得到專家的實時幫助和編程指導,提高程序設計的學習效率與效果。
3.云端資源的使用與管理
在互動編程服務系統(tǒng)中,不僅提供了主流語言的編譯平臺,更提供了主流語言配套的各類編程練習題以及各類教學視頻,學習者在任意終端選擇相應的編程題展開練習,或者閱讀系統(tǒng)內(nèi)專家給出的編程經(jīng)驗文章,也可以觀看相應語言的視頻講解。在學習過程中,學習者還可以將感興趣的內(nèi)容加入收藏夾管理。
四、互動編程服務系統(tǒng)主要功能設計
按照所設定的系統(tǒng)目標,互動編程服務系統(tǒng)在設計時,分配的角色有游客、會員、專家、管理員。游客僅有在云端編程、編譯的權限,不能得到專家指導,也不能收藏和管理相應的資源。在系統(tǒng)內(nèi),所有學習者均可以申請注冊成為會員,得到相應的訪問權限。
系統(tǒng)的業(yè)務模式如圖1所示。會員端包括資訊查看、云端編程、云端咨詢、收藏夾四個主要模塊;與之相對應,專家端包括資訊管理、程序批改、云端互動、資源管理四個部分;而管理員的主要權限是實現(xiàn)對會員、專家的注冊申請、權限審核。
1.會員端功能模塊設計
(1)云端程序編寫、編譯與運行
會員終端登錄系統(tǒng)后,能夠查看到當前系統(tǒng)內(nèi)所有的資訊。資訊的內(nèi)容包括系統(tǒng)通知、最新的編程題、最新的編程技巧、編程視頻四個部分。會員也可以根據(jù)需要定制自己感興趣的編程內(nèi)容模塊。
(2)云端編程
會員在終端登錄后,在任意時間內(nèi)都可以享有系統(tǒng)互動編程服務。成功登錄后,可以選擇相應的語言、選擇系統(tǒng)所提供的各種編程練習題,展開編程,書寫代碼,并可以完成實時編譯、調(diào)試。完成編程后,可以選擇將程序保存在系統(tǒng)內(nèi),或者保存于個人終端設備中。
(3)云端咨詢
在該模塊,列出各種語言對應的專家,專家主要由從事程序設計學科的教師以及在企業(yè)實踐的工程師擔任。會員在終端編寫完成程序后,可以選擇對應語言的專家,將呈現(xiàn)提交給相應的專家。除了提交程序給專家進行批改外,會員也可以在云端與專家交流,向?qū)<易稍兙幊讨械母鞣N問題,逐步提高編程者的編程能力以及代碼的理解能力,
(4)收藏夾功能
該模塊提供對收藏夾的管理,會員在系統(tǒng)內(nèi)看到任何感興趣的內(nèi)容,比如編程資訊、最新的編程題或者其 他編程技巧,都可以加入個人收藏夾,在需要的時候,可以查看已經(jīng)收藏的內(nèi)容,在需要時,可以對收藏的內(nèi)容進行刪除等管理操作。
2.專家端功能模塊設計
(1)資訊管理
專家端的資訊管理和會員端相呼應。專家可以查看當前平臺內(nèi)所有上傳的資訊記錄,同時可以根據(jù)條件篩選查看資訊,或者自己已傳的資訊記錄,同時也可以上傳最新的資訊,比如最新的編程教學視頻、編程技巧等。
(2)程序批改
專家收到會員發(fā)送給自己的問題程序后,可以進行批改,給出相應的批改和調(diào)試意見。修改后,可以將程序意見反饋給會員,同時還可以選擇公開相應編程題的答案,讓會員進行對照修改。
(3)云端互動
除了對會員提交的程序題進行批改外,專家還可以在本互動模塊回復會員的私信,為會員解答其他編程問題。
(4)編程資源管理
互動編程服務系統(tǒng)的一大特色就是豐富的編程資源,每個專家都可以在自己的后臺上傳并且管理自己的程序題、編程技巧等。這些豐富的資源有利于學習者更好地展開編程練習,提高編程水平。
3.管理員端功能與設計
管理員主要負責對系統(tǒng)的整體管理,這里包括對會員的管理,如會員注冊申請的確認、會員密碼的恢復、會員的刪除等,同時包括對專家注冊申請的確認與管理操作。
五、系統(tǒng)部署與技術實現(xiàn)
1.整體部署
互動編程服務系統(tǒng)從基礎架構層、運行管理層、核心應用層、展現(xiàn)層幾方面入手搭建。系統(tǒng)整體架構如圖2所示。用戶通過不同的終端登錄系統(tǒng),編寫程序,得到專家的指導幫助。
2.技術實現(xiàn)
在實現(xiàn)時,互動編程服務系統(tǒng)在Web端的技術實現(xiàn)采用B/S體系結(jié)構;使用者可以在PC端直接訪問編程吧,用戶與系統(tǒng)間交互采用I/O重定向技術實現(xiàn),前端配合HTML5與JavaScript ;WinSocket實現(xiàn)web即時通信,即客戶端和服務器之間的實時連接。
在移動端,可以下載安裝移動APP,隨時隨地展開程序的編寫。安卓端的開發(fā)所選擇的是Eclipse,它是基于Java的可擴展開發(fā)平臺。最后在此基礎上安裝Android SDK,即Software Development Kit,便可進行時間管理系統(tǒng)安卓應用的開發(fā)。[6]
六、結(jié)語與展望
互動編程服務系統(tǒng)的設計依賴于云學習思想的指導,最終目的是為廣大編程設計初學者提供一個舒適、專業(yè)的學習環(huán)境。針對程序設計類課程,提供了“云端編譯”、“云端學習指導”、“云端資源管理”等特色功能。
在平臺即服務、軟件即服務的思想下,學習者能自由地在PC端、移動端等各個終端編寫程序、編譯運行代碼,并能隨時與學習伙伴協(xié)作,得到專家的指導。目前,互動編程服務系統(tǒng)主要實現(xiàn)了包括VB、C、Java、C++四種主流編程語言的學習和指導,后期將不斷擴充,使支持的語言更加多樣化。
參考文獻:
[1]王萍,張際平.云計算與網(wǎng)絡學習[J].現(xiàn)代教育技術,2008(11):81-84.
[2]白云娟,沈書生.云學習:云計算激發(fā)的學習理念[J].中國電化教育,2011(8):14.
[3]周海燕,明靜.高校教師在大學生“云學習團隊”中的角色嬗變[J].高校教育管理,2013(5):17.
[4]楊艷艷,黃純國,鐘柏昌.基于云計算探析云學習[J].現(xiàn)代教育技術,2010(9):108.
[5]唐箭,虢莉娟,龔濤.基于云計算的終身教育服務平臺設計[J].現(xiàn)代電子技術,2010(12):43-50.
[6]趙亮,張維.基于Android 技術的界面設計與研究[J].電腦知識與技術,2009(29).
(編輯:王天鵬)