• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Moodle平臺(tái)的在線編程實(shí)驗(yàn)室的建設(shè)

      2019-08-13 09:09:31劉欽波
      中國信息技術(shù)教育 2019年14期
      關(guān)鍵詞:插件瀏覽器代碼

      劉欽波

      ● 背景

      隨著《普通高中信息技術(shù)課程標(biāo)準(zhǔn)(2017年版)》的發(fā)布,編程教育走進(jìn)中小學(xué)課堂。這對(duì)教師的編程教學(xué)也提出了更高的挑戰(zhàn)——如何保存學(xué)生提交的程序?如何在線運(yùn)行學(xué)生的程序?如何對(duì)學(xué)生的程序進(jìn)行評(píng)測?

      當(dāng)前,大部分中小學(xué)都在使用Moodle網(wǎng)絡(luò)教學(xué)平臺(tái)進(jìn)行教學(xué),該網(wǎng)絡(luò)教學(xué)平臺(tái)雖然可以保存學(xué)生提交的程序,但還不能在線運(yùn)行程序,查看運(yùn)行結(jié)果,更不能對(duì)程序進(jìn)行評(píng)測。網(wǎng)上雖然有許多在線編程工具,如菜鳥工具等,但這些在線編程工具并不能保存提交程序,即使能夠保存學(xué)生提交的程序,也是保存在第三方的平臺(tái)上,不方便教師管理查看這些程序。

      基于以上原因,筆者提出建設(shè)基于Moodle平臺(tái)的在線編程實(shí)驗(yàn)室,用于教師在編程教學(xué)中保存學(xué)生提交的程序,并可以在線運(yùn)行程序和對(duì)程序進(jìn)行評(píng)測。通過這個(gè)在線編程實(shí)驗(yàn)室,學(xué)生在有網(wǎng)絡(luò)的地方就可以在線編程,并不需要安裝本地開發(fā)環(huán)境,真正做到隨時(shí)隨地都學(xué)習(xí)編程。

      ● 實(shí)現(xiàn)方式

      基于Moodle平臺(tái)的在線編程實(shí)驗(yàn)室可以用Moodle開源平臺(tái)和Virtual programming lab(VPL)這個(gè)插件來實(shí)現(xiàn),VPL插件也是完全開源的。

      由于是開源平臺(tái),Moodle可以根據(jù)個(gè)人需求量身定制,其模塊化設(shè)置和可互操作設(shè)計(jì)允許開發(fā)人員開發(fā)插件并集成外部應(yīng)用程序以實(shí)現(xiàn)特定功能。[1]本文探討的在線編程實(shí)驗(yàn)室的功能就是用插件來實(shí)現(xiàn)的。

      虛擬編程實(shí)驗(yàn)室(VPL)是Moodle的一個(gè)活動(dòng)模塊,提供了一個(gè)集成的開發(fā)環(huán)境,可以用于學(xué)生在線編程的教學(xué)與管理,其特點(diǎn)為:允許學(xué)生在瀏覽器中編輯程序源代碼;學(xué)生可以在瀏覽器中以交互方式運(yùn)行程序;學(xué)生和教師可以運(yùn)行測試來評(píng)測程序;允許搜索文件之間的相似性;允許設(shè)置編輯限制并避免外部文本粘貼。[2]

      ● VPL系統(tǒng)架構(gòu)及運(yùn)行原理

      VPL由三個(gè)元素組成:Moodle Server、Student Browser(基于瀏覽器的代碼編輯器)和Jail Server。

      學(xué)生與系統(tǒng)交互過程如圖1所示。學(xué)生在基于瀏覽器的代碼編輯器中編寫好代碼,當(dāng)提交程序時(shí),Moodle服務(wù)器將學(xué)生程序打包成xmlrpc消息,并將其發(fā)送到Jail Server,在這里學(xué)生提交的程序會(huì)在沙盒環(huán)境中執(zhí)行,并將捕獲的輸出發(fā)送回Moodle服務(wù)器。[3]

      代碼編輯器是一個(gè)基于瀏覽器的集成開發(fā)環(huán)境,它具有在線編輯、運(yùn)行、調(diào)試和評(píng)估程序代碼等基本特性。代碼編輯器使用了Java Scriipt、Ajax、HTML5和WebSocket技術(shù),在客戶端上編輯和執(zhí)行代碼需要支持HTML5和WebSocket的瀏覽器。該模塊已在最新版本的IExplorer、Chrome、FireFox、Opera和Safari上成功測試過。

      Jail Server是負(fù)責(zé)在安全環(huán)境中編譯和執(zhí)行學(xué)生提交代碼的服務(wù)器,所接收到的請求在沙盒中執(zhí)行。當(dāng)執(zhí)行結(jié)束時(shí),所有由執(zhí)行程序創(chuàng)建的文件都將被刪除,因而每次執(zhí)行都是從一組虛擬用戶中隨機(jī)選擇。[4]

      ● 系統(tǒng)的部署

      1.測試環(huán)境

      測試環(huán)境為Windows7+ Oracle VM VirtualBox+ ubuntu14.04,Moodle平臺(tái)安裝在Windows7操作系統(tǒng)的主機(jī)上,Jail Server安裝在虛擬機(jī)中,虛擬機(jī)的操作系統(tǒng)為ubuntu14.04。

      2.安裝Moodle平臺(tái)的VPL插件

      登錄網(wǎng)址(https://moodle.org/plugins/view.php?plugin=mod_vpl)下載VPL插件。打開網(wǎng)址后,要在圖2右邊“Your Moodle version”選擇Moodle平臺(tái)的版本,筆者選擇的Moodle平臺(tái)版本為3.4.1,因此選擇Moodle 3.4,選擇后網(wǎng)站的界面如圖3所示。這時(shí),單擊Download按鈕就可以下載VPL插件了,其版本為3.3.4。解壓后,將VPL目錄復(fù)制到Moodle安裝目錄的mod目錄中,然后以管理員身份登錄Moodle平臺(tái),更新數(shù)據(jù)庫,VPL插件就安裝成功了。

      3.安裝Jail Server服務(wù)器

      Jail Server服務(wù)器要安裝在虛擬機(jī)中,虛擬機(jī)的操作系統(tǒng)必須是Ubuntu、Debian或Centos。筆者安裝的操作系統(tǒng)是Ubuntu14.04,設(shè)置虛擬機(jī)的網(wǎng)絡(luò)連接方式為“橋接網(wǎng)卡”。需要注意的是服務(wù)器的軟硬件要求,32位版本比64位版本更好用,因?yàn)?2位版本比64位版本消耗更少的內(nèi)存和CPU。下面是安裝Jail Server服務(wù)器的具體步驟:

      ①下載vpl-jail-system安裝包,筆者安裝的是2.0.1版本,命令為:wget(http://vpl.dis.ulpgc.es/releases/vpl_jail_system-2.0.1.tar.gz。

      ②解壓安裝包,安裝vpl-jail-system,命令為:sudo./install-vpl-sh。

      ③系統(tǒng)提示是否安裝wildcard certificates時(shí),選擇 no,等待系統(tǒng)安裝完畢。

      ④在瀏覽器中輸入localhost進(jìn)行測試,如果瀏覽器顯示的信息為“Ok”,說明安裝成功。

      4.配置Python開發(fā)環(huán)境

      首先,Ubuntu14.04默認(rèn)的開發(fā)環(huán)境為Python2,要安裝Python3可以用下面的命令:

      sudo add-apt-repository ppa:fkrull/deadsnakes

      sudo apt-get update

      sudo apt-get install python3.6

      然后,設(shè)置Python3.6為默認(rèn)開發(fā)環(huán)境:

      sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100

      sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150

      接著輸入sudo update-alternatives --config python,根據(jù)數(shù)字選擇想要的Python版本。這時(shí),Python及其對(duì)應(yīng)的pip也都變成默認(rèn)模式。

      最后安裝pip工具,輸入命令:sudo apt-get install python3-pip。

      5.配置Moodle平臺(tái)的VPL插件屬性

      以管理員身份進(jìn)入Moodle平臺(tái),依次點(diǎn)擊網(wǎng)站管理—插件—Virtual programming lab,進(jìn)入VPL插件設(shè)置界面。如上頁圖4所示,在Execution servers list右側(cè)的文本框中添加Jail Server的訪問地址。

      ● 應(yīng)用

      筆者首先添加了一個(gè)名為“Pyton編程第一課”的活動(dòng)或資源,類型選擇“Virtual programming lab”。接著,進(jìn)入“Pyton編程第一課”活動(dòng),單擊Test activity—Edit就進(jìn)入了在線編程界面(如圖5)。

      在這里可以編輯源代碼,也可以保存編程的結(jié)果。單擊小火箭圖標(biāo)可以運(yùn)行程序,程序運(yùn)行時(shí)會(huì)出現(xiàn)一個(gè)控制臺(tái)窗口,顯示運(yùn)行的結(jié)果和相關(guān)信息如圖6所示。到這里,一個(gè)在線編程實(shí)驗(yàn)室就搭建好了,有興趣的讀者可以試一試。

      參考文獻(xiàn):

      [1]About moodle[EB/OL].https://docs.moodle.org/36/en/About_Moodle.

      [2]What is VPL?[EB/OL].http://vpl.dis.ulpgc.es/index.php/about/what-is-vpl.

      [3]Dominique Thiébaut. Automatic evaluation of computer programs using Moodle's virtual programming lab (VPL) plug-in[Z].Consortium for Computing Sciences in Colleges.2015:145-151.

      [4]J.C. Rodríguez, E. Rubio Royo, Z. Hernández.Scalable architecture for secure execution and test of students' assignments in a virtual programming lab[G].Iated.2011:4315-4322.

      猜你喜歡
      插件瀏覽器代碼
      自編插件完善App Inventor與樂高機(jī)器人通信
      電子制作(2019年22期)2020-01-14 03:16:34
      反瀏覽器指紋追蹤
      電子制作(2019年10期)2019-06-17 11:45:14
      創(chuàng)世代碼
      創(chuàng)世代碼
      創(chuàng)世代碼
      創(chuàng)世代碼
      環(huán)球?yàn)g覽器
      再見,那些年我們嘲笑過的IE瀏覽器
      MapWindowGIS插件機(jī)制及應(yīng)用
      基于Revit MEP的插件制作探討
      咸丰县| 合作市| 定州市| 静海县| 肃宁县| 南陵县| 南安市| 咸宁市| 盐池县| 上饶市| 天等县| 兰溪市| 日喀则市| 冷水江市| 长沙市| 六枝特区| 库伦旗| 小金县| 大港区| 绥江县| 原阳县| 元江| 汝州市| 黄龙县| 合阳县| 德格县| 江油市| 琼海市| 沂源县| 防城港市| 乐至县| 扶绥县| 瓦房店市| 普定县| 玉环县| 锦州市| 南宫市| 本溪市| 吉木乃县| 楚雄市| 汶上县|