999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Moodle平臺語法高亮功能的兩種實現(xiàn)方法對比分析

2016-08-18 05:47:29趙亮馮佳河南警察學院河南鄭州450000
河南科技 2016年7期
關(guān)鍵詞:頁面功能方法

趙亮 馮佳(河南警察學院,河南 鄭州 450000)

?

Moodle平臺語法高亮功能的兩種實現(xiàn)方法對比分析

趙亮馮佳
(河南警察學院,河南鄭州450000)

Moodle平臺是一個開源互聯(lián)網(wǎng)教學平臺,在運行程序設(shè)計類課程時,語法高亮功能的缺失嚴重影響平臺的使用效果。鑒于此,基于當前流行的開源代碼語法高亮解決方案,設(shè)計了兩種在Moodle中實現(xiàn)語法高亮的方法,并從多方面分析對比兩種方法并得出結(jié)論。

Moodle;語法高亮;GeSHi;SyntaxHighlighter

1 Moodle平臺簡介

Moodle是由澳大利亞教師Martin Dougiamas創(chuàng)建的一個開源項目,21世紀初在國內(nèi)高校一度風行,但由于中文支持不好,早期版本功能繁雜體驗差,不管在國內(nèi)還是國外都未得到廣泛應(yīng)用。而隨著版本的迭代更新,3.0版本的Moodle已經(jīng)修復(fù)了中文顯示的問題,隨著“微課”“翻轉(zhuǎn)課堂”的興起,Moodle作為一個功能強大的成熟框架,再次得到教育技術(shù)領(lǐng)域的關(guān)注[1]。

Moodle是一個基于主要使用PHP構(gòu)建的Web系統(tǒng),因此可跨平臺運行在支持PHP的服務(wù)器上,包括Linux、Windows和MacOS,常見的架構(gòu)是LAMP(Linux操作系統(tǒng),Web服務(wù)程序Apache,數(shù)據(jù)庫MySQL,后端腳本PHP,)如使用Windows Server,Web服務(wù)程序也可對應(yīng)地使用IIS。

Moodle的安裝和部署十分方便簡單,對于熟悉Web Services的用戶,添加一個空白數(shù)據(jù)庫,將Moodle目錄放置于web目錄下即可輕松完成配置。而且bitnami還提供了集成XAMPP等Web套件一鍵安裝發(fā)布的安裝包,大部分高校教師可以輕松完成配置。因此,Moodle在高校應(yīng)用極其廣泛,很多學校都有自己的站點。

河南警察學院的平臺上線于2015年9月,上線即承擔了《網(wǎng)絡(luò)協(xié)議分析》4個中隊的實驗實訓任務(wù),期間遷移過一次服務(wù)器,3.0版本的Moodle測試功能中支持數(shù)據(jù)庫的網(wǎng)絡(luò)遷移,平臺運行狀況整體良好,在問卷調(diào)查中學生滿意度達到95%以上。2015年10月平臺向系內(nèi)教師開放,《電子數(shù)據(jù)的檢驗與分析》(取證)課程的實驗也遷移到本平臺上,2016年1月平臺承擔了《網(wǎng)絡(luò)協(xié)議分析》和《取證》課程的期末考試任務(wù)。

2 語法高亮功能的需求分析

語法高亮功能,是程序設(shè)計中一些高級文本編輯器以及IDE中必備的功能,通過高亮來區(qū)分、操作符、變量、注釋,可以讓代碼的可讀性更好,同時也更加美觀。

圖1分別是記事本、Notepad++和Eclipse中一段java代碼的顯示效果,記事本沒有語法高亮,而后兩者使用了語法高亮,代碼可讀性區(qū)別顯而易見。

而Moodle平臺當承擔程序語言課程時,語法高亮是一個必備的功能,雖然Moodle有著大量的擴展和插件,但是目前并沒有完善的支持語法高亮的插件。語法高亮,在Moodle平臺的應(yīng)用主要集中在以下幾個方面:①教程、考試等用戶可見的模塊,應(yīng)有語法高亮的功能;②學生在編輯作業(yè)時輸入的代碼,應(yīng)有語法高亮的功能;③在線文本編輯器應(yīng)方便地通過標簽方式高亮編輯后的代碼。

圖1 代碼高亮效果對比

3 兩種實現(xiàn)Moodle語法高亮方法

3.1方法一:GeSHi插件方式

GeSHi的全稱是Generic Syntax Highlighter,即通用語法高亮器,項目地址是http://qbnz.com/highlighter。GeSHi有著以下特點。

3.1.1服務(wù)端兼容性。GeSHi的編碼完全用PHP。這意味著良好的兼容性,任何支持PHP的服務(wù)器都能使用GeSHi。

3.1.2客戶端兼容性。GeSHi兼容XHTML標準的輸出,通過使用CSS樣式表類來高亮顯示。

3.1.3多語言支持。GeSHi目前支持超過100種語言的高亮顯示,包括PHP、HTML、CSS、java、C、Lisp、XML、Perl、Python和ASM等。

3.1.4高度可定制。GeSHi的允許你改變高亮顯示的輸出方式,同樣也是通CSS類來實現(xiàn)的。

3.1.5靈活性。GeSHi基于模塊化設(shè)計。關(guān)閉不必須的特性,預(yù)載CSS樣式表可以顯著提升速度。

GeSHi的插件全部為PHP文件,本質(zhì)上就是一個PHP類庫,實現(xiàn)web文本的語法高亮方式如下:

其中,include語句載入geshi庫,新建一個geshi對象,其中$source是需要高亮的代碼或者頁面,調(diào)用parse_code()函數(shù)就可以完成代碼部分的高亮。

3.1.6GeSHi在Moodle平臺上的實現(xiàn)及部署。根據(jù)需求分析,如果要使Moodle下不同的頁面中的特定部分能夠語法高亮,需要使用Moodle的Filter模塊,F(xiàn)ilter模塊是Moodle提供的使用正則表達式匹配文本,并對匹配到的文本進行相關(guān)操作的模塊,語法高亮可以使用Filter功能對特殊關(guān)鍵字標簽生效,如[code][/code]標簽的實現(xiàn)如下:

Filter生效后,需要在使用用對相應(yīng)的代碼部分添加[code][/code]標簽來完成。

3.2方法二:SyntaxHighlighter主題方式

SyntaxHighlighter是一個基于JavaScript的代碼高亮開源插件,由Alex Gorbatchev開發(fā),項目地址是http:// alexgorbatchev.com/SyntaxHighlighter。SyntaxHighlighter也有著以下特點。

3.2.1兼容性。SyntaxHighlighter是在前端層面高亮顯示代碼,所以不存在服務(wù)端兼容的問題,前端同樣是支持XHTML標準和CSS。

3.2.2多語言支持。SyntaxHighlighter目前僅提供23種常見的語言的支持。

3.2.3高度可定制。SyntaxHighlighter使用筆刷的方式來實現(xiàn)代碼高亮,定制顯示效果只需要修改筆刷即可。

3.2.4性能。SyntaxHighlighter是前端語言,不占用服務(wù)器端資源,性能差別僅在于瀏覽器。

3.2.5SyntaxHighlighter插件組成。SyntaxHighlighter插件包括以下幾個文件夾:Scripts,面存放了所有功能性的JS文件;Src,源文件,里面是shCore和shLegacy這兩個核心JS文件,和Scripts里的一致;Styles,存放了各種主題風格的css文件以及顯示小圖標需要的圖片。

SyntaxHighlighter的核心是shCore文件,語法高亮的功能性函數(shù)都在此文件中定義。此外,Scrpits里還提供了常見的23種筆刷文件,如shBrushCpp,shBrushJava等,用于對不同的語言采用不同的高亮規(guī)則。

因為SyntaxHighlighter是高亮實現(xiàn)機制是基于前端JS,因此部署到Moodle上可以通過修改主題的方式。

3.2.6Moodle主題機制。Moodle主題包含以下幾個目錄及文件,具體功能如表1所示。

表1 Moodle主題包含的目錄/文件及其功能

Moodle主題的工作原理如圖2所示,使用PixCSS等資源的是MVC架構(gòu)中的view部分,包括Moodle主體頁面及自定義layout頁面,lib.php提供自定義工具函數(shù),config.php配置主題,最終用戶可以通過setting.php完成主體的設(shè)置及個性化。由此可知,在主題中配置SyntaxHighlighter,shCore.js和JS筆刷文件需要放置于javascript目錄下,CSS文件需要放置于style目錄下,并在Config.php中完成JS和CSS的載入:

圖2 Moodle主題生效機制

完成以上工作后,還需要在各種有需求的view頁面加入以下JS代碼:

4兩種高亮實現(xiàn)方法的對比分析

本文嘗試的2種方法均可以完成Moodle平臺上語法高亮的需求,方便程序設(shè)計類課程的課程在Moodle平臺上線,表為2種方法各自的綜合對比。

總之,使用前端JS解決方案的SyntaxHighlighter優(yōu)于在后端使用php的GeSHi,雖然使用

標簽存在沖突的可能性,但現(xiàn)階段瀏覽器對JS支持良好的環(huán)境下,使用SyntaxHighlighter無疑是一種更加便捷、高效的代碼高亮方法。

表2 2種高亮實現(xiàn)方法的綜合對比

[1]陳肖庚,王頂明.MOOC的發(fā)展歷程與主要特征分析[J].現(xiàn)代教育技術(shù),2013(11):5-10.

Comparison and Analysis of Two Methods to Realize the Syntax Highlighting Function of Moodle Platform

Zhao LiangFeng Jia
(Henan Police College,Zhengzhou Henan 450000)

Moodle is an open-source internet education platform,When running the program design courses,the lack of syntax highlighting features a serious impact on the use of the platform.In view of this,based on the current popular open source code syntax highlighting solution,the two in Moodle syntax highlighting method were designed,and analyzed and compared the two methods from many aspects,and draw the conclusion.

Moodle;syntax highlighting;GeSHi;SyntaxHighlighter

TP311.52

A

1003-5168(2016)04-0020-03

2016-03-12

馮佳(1985-),男,碩士,工程師,研究方向:交通管理,ITS技術(shù);趙亮(1987-),男,碩士,研究方向:信息安全,網(wǎng)絡(luò)空間安全。

猜你喜歡
頁面功能方法
大狗熊在睡覺
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
刷新生活的頁面
關(guān)于非首都功能疏解的幾點思考
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
捕魚
中西醫(yī)結(jié)合治療甲狀腺功能亢進癥31例
辨證施護在輕度認知功能損害中的應(yīng)用
同一Word文檔 縱橫頁面并存
主站蜘蛛池模板: 午夜a级毛片| 国产微拍一区| 少妇精品网站| 精品丝袜美腿国产一区| 欧美日韩国产在线观看一区二区三区 | 少妇露出福利视频| 久久综合九色综合97网| 欧美日韩激情在线| 日本一本在线视频| 一本久道热中字伊人| 毛片免费在线视频| 久久精品国产亚洲麻豆| 色欲色欲久久综合网| 亚洲欧洲日韩综合色天使| 91国内在线观看| 欧美日韩免费观看| 一级看片免费视频| 91精品视频播放| 久久人人妻人人爽人人卡片av| 国产在线拍偷自揄观看视频网站| a级毛片毛片免费观看久潮| 91po国产在线精品免费观看| 亚洲无码免费黄色网址| 91视频日本| 国产九九精品视频| 亚洲一区二区在线无码| 欧美精品影院| jizz在线免费播放| 国产内射在线观看| 福利在线一区| 中文字幕首页系列人妻| 亚洲码在线中文在线观看| 成人亚洲视频| 亚洲码在线中文在线观看| 婷婷亚洲天堂| 无套av在线| 91成人在线观看视频| 久久国产亚洲欧美日韩精品| 国产主播福利在线观看| 国产视频一二三区| 欧美日韩国产系列在线观看| 国产xx在线观看| 亚洲精品无码人妻无码| 亚洲区视频在线观看| 精品无码视频在线观看| 东京热av无码电影一区二区| 久久黄色毛片| 色婷婷丁香| 日韩区欧美国产区在线观看| 91在线无码精品秘九色APP | 国产日韩丝袜一二三区| 农村乱人伦一区二区| 国产成人无码播放| aa级毛片毛片免费观看久| 五月天丁香婷婷综合久久| 毛片免费观看视频| 国产综合无码一区二区色蜜蜜| 国内精品九九久久久精品| 国产九九精品视频| 天堂久久久久久中文字幕| 亚洲视频a| lhav亚洲精品| 亚洲综合天堂网| 91麻豆久久久| a毛片在线播放| 99久视频| 日本不卡在线视频| 国产午夜无码专区喷水| jizz亚洲高清在线观看| 99久久成人国产精品免费| 日本一区二区三区精品AⅤ| 国产精品一线天| 国产精品偷伦视频免费观看国产| 亚洲色图欧美一区| 69国产精品视频免费| 91视频青青草| 国产青青草视频| 在线欧美a| 天天躁狠狠躁| 亚洲精品高清视频| 中文国产成人精品久久一| 天堂岛国av无码免费无禁网站|