综合色图免费的视频看看,国产香蕉一区二区三区,狠狠人人夜夜天天 http://www.gablemachineandengine.com/wp 敏于學(xué) Mon, 09 May 2022 13:46:07 +0000 zh-CN hourly 1 https://wordpress.org/?v=6.6.2 MOODLE的版本號規(guī)范 http://www.gablemachineandengine.com/wp/?p=46 http://www.gablemachineandengine.com/wp/?p=46#respond Mon, 09 May 2022 02:51:15 +0000 http://www.gablemachineandengine.com/wp/?p=46 繼續(xù)閱讀 ]]> 本文介紹在對Moodle(魔燈)做開發(fā)時如何編制版本號。

1 Moodle的版本【versions】和分支【branches】

了解Moodle版本控制方案將有助于您使用我們的存儲庫【repositories】獲取代碼(例如升級)。在tracker.moodle.org中報告錯誤時,了解正確的版本也非常有用。

2 主要【major】版本和次要【minor】版本

Moodle版本號由三個以點分隔的數(shù)字組成,例如1.9.11或2.0.2。前兩個數(shù)字,如1.9或2.0,代表主要版本【major version】。第三個數(shù)字區(qū)分了同一個主要版本中的次要版本【minor version】。發(fā)布新的主要版本時,次要版本設(shè)置為0。例如,Moodle 2.0.1是Moodle 2.0.0的第一次小更新。
通常,Moodle HQ團隊維護Moodle的兩個最新主要版本(該規(guī)則的一個顯著例外是Moodle 1.9,它的支持時間更長)。

3 版本【versions】和分支【branches】

Moodle開發(fā)人員使用源代碼管理(SCM)系統(tǒng)“Git”來跟蹤代碼中的更改。與許多SCM一樣,Git中代碼的變化歷史通過所謂的分支來表示??梢詫⒎种б暈樵创a更改的標(biāo)記序列。
Moodle的每個主要版本都有一個分支。所有Moodle 1.9版本都來自Moodle_19_STABLE分支,所有Moodle 2.0版本都來自Moodle_20_STABLE分支。還有一個名為master的主要開發(fā)分支,負責(zé)保存下一個未來版本的更改。

4 發(fā)布版【releases】

自2.0版以來,Moodle計劃每六個月左右發(fā)布一次新的主要版本。
次要版本每兩個月發(fā)布一次,包括修復(fù)的bug和安全問題。
在兩次發(fā)布之間,Moodle HQ團隊發(fā)布最新穩(wěn)定版本的修訂。這些修訂每周發(fā)布,通常在周四發(fā)布。稱為每周構(gòu)建。通過版本號中的小增量和類似20200723這樣的構(gòu)建日期(發(fā)布每周構(gòu)建的日期,格式為YYYYMMDD)來識別。這些每周構(gòu)建的版本號有一個加號后綴,例如,3.9.1+ 表示基于次要發(fā)布版3.9.1的每周構(gòu)建。

4 源代碼成熟度級別【maturity levels】

在其生命周期中,Moodle代碼分支經(jīng)歷了幾個成熟度級別。
一開始,分支被認為處于alpha狀態(tài)。在此期間,新功能將添加到分支。API和數(shù)據(jù)庫結(jié)構(gòu)可能會根據(jù)需要更改。這些版本主要面向開發(fā)人員,因為沒有任何保證(例如,該版本可能不能安裝或不能執(zhí)行升級)。
當(dāng)決定不向分支添加新功能(即所謂的功能凍結(jié))時,就達到了beta成熟度級別。開發(fā)人員專注于測試、修復(fù)bug和穩(wěn)定分支。
在一段時間的測試中,當(dāng)所有已知的關(guān)鍵和妨礙程序正常運行的bug都已修復(fù),并且沒有新的錯誤報告時,可以發(fā)布分支的preview版本,或稱為“發(fā)布候選版本【release candidate】”。發(fā)布第一個候選版本(RC1)后,將達到候選版本成熟度級別。在此期間,可以發(fā)布多個RC版本,例如2.1RC1、2.1RC2、2.1RC3等。
最后,新的主要版本發(fā)布,分支達到穩(wěn)定的成熟度水平。從現(xiàn)在起,這個分支的數(shù)據(jù)庫結(jié)構(gòu)和API不會改變。將創(chuàng)建相應(yīng)的MOODLE_xx_STABLE,并根據(jù)它創(chuàng)建次要版本和每周構(gòu)建。

5 版本號

每個插件的versions.php文件可以指定插件工作所需的Moodle的最低版本。

$plugin->version = 2011080200;
$plugin->requires = 2011070101;

6 如何在moodle內(nèi)核【core】中增加版本號

在Moodle內(nèi)核【core】中,當(dāng)我們從主干【master】分支時,我們也會分支版本號。這意味著穩(wěn)定分支中的任何版本號都不應(yīng)高于主干【master】分支(或更高版本穩(wěn)定分支)上的版本號。
版本號結(jié)構(gòu)為YYYYMMDDRR.XX。
YYYYMMDD是創(chuàng)建分支的日期。如果在主干【master】上,沒有發(fā)生分支,則應(yīng)將其設(shè)置為當(dāng)前日期。否則(在非主干分支中)不應(yīng)更改(保持原樣,即創(chuàng)建分支時的日期)。
RR是發(fā)布遞增版本號。這是在一個分支上的代碼變化的增量計數(shù)器、或者在主干【master】的日期計數(shù)器。
XX是微增版本號。當(dāng)我們意識到在一個穩(wěn)定的分支上(在RR增量中)可能有超過99個升級步驟時,我們引入了“分數(shù)增量”。它往往只在主版本號文件中使用。

6.1穩(wěn)定分支的規(guī)則

如果存在“微增量”(.XX)。開發(fā)人員只應(yīng)增加“微增量” ‘XX’
集成團隊保留使用“RR”在發(fā)布點之間進行分支的權(quán)利。
如果“微增量”(.XX)不存在,請增加RR。

6.2主干分支規(guī)則

必須在當(dāng)前日期的基礎(chǔ)上遞增全部版本號。
因此,2013年2月6日,版本號設(shè)置為:2013020600.00

6.3我們?yōu)槭裁匆种О姹?/h3>

想象一下以下場景:
1)Moodle 2.4發(fā)布,mod_forum版本2012120300。
2)僅在master中,王二的更新會在升級步驟【upgrade step】中刪除一個數(shù)據(jù)庫字段,并將moodle版本設(shè)置為201301010
3)在2.4.1和master中,張三修復(fù)了權(quán)限定義中的一個問題,并將兩個分支中的版本設(shè)置為2013010200。(注意:這里將導(dǎo)致錯誤,我們錯誤地更改了整個未來2.4.x版本的分支日期!)
4)Moodle 2.5發(fā)布,mod_forum版本2013060100
5)Moodle 2.5發(fā)布后,李四將她的Moodle從Moodle 2.4.1更新為2.5。
由于張三在第3)步中的把2.4.x版本改為2013010200,這導(dǎo)致著第2)步中王二的的升級步驟將永遠無法運行。

6.4我知道STABLE和master之間沒有變化,我可以將版本號設(shè)置為相同嗎?

不是核心插件,抱歉,不能設(shè)置為相同。有太多的開發(fā)人員在使用同一個代碼,如果我們避免為core這樣做的話,它可以防止事故的發(fā)生。

]]>
http://www.gablemachineandengine.com/wp/?feed=rss2&p=46 0
MOODLE的會話鎖 http://www.gablemachineandengine.com/wp/?p=54 http://www.gablemachineandengine.com/wp/?p=54#respond Mon, 18 Apr 2022 04:24:00 +0000 http://www.gablemachineandengine.com/wp/?p=54 繼續(xù)閱讀 ]]> 本文介紹在Moodle(魔燈)開發(fā)中如何處理會話鎖【session locks】。

當(dāng)你創(chuàng)建一個普通的moodle頁面并包含config.php時,默認情況下,在php運行大量moodle引導(dǎo)代碼后,將擁設(shè)置好一個名為$SESSION全局變量。這是一個安全的啟動假設(shè),但在編寫更高性能的代碼時,最好盡可能減少或消除會話鎖。

1 調(diào)試會話鎖問題

如果你發(fā)現(xiàn)訪問某個頁面時特別慢,在對做了分析之后,發(fā)現(xiàn)正在等待一個鎖釋放,那么這可能是一件很容易修復(fù)的事情,可以提高你的整體性能。

$CFG->debugsessionlock=5;//以秒為單位的時間

當(dāng)一個會話被鎖定N秒以上時,將進行一次調(diào)試調(diào)用,詳細說明哪個頁面在正在鎖定。

2 會話解鎖【unlocking】

默認情況下,moodle內(nèi)核【core】假設(shè)您可能需要修改$SESSION對象,所以它將在會話上保持鎖,直到頁面處理完成時由shutdown handle釋放會話鎖。如果您正在處理可能長時間運行的頁面,那么您應(yīng)該對代碼做清晰的分離,把需要修改會話的代碼和需要長時間運行的代碼分離開來,并在修改會話后解鎖會話。

\core\session\manager::write_close();

3 頁面中的只讀會話【read only session】

要使只讀會話起作用,必須啟用只讀會話,并且需要您的代碼來支持它。

如果你提前知道你永遠不會改變會話,但你仍然需要能夠讀會話,那么你可以將你的頁面聲明為只讀會話。這意味著您的頁面永遠不會在另一個http請求中阻止會話。

define('READ_ONLY_SESSION', true);

4 web服務(wù)中的只讀會話

在web服務(wù)中也是如此。聲明web服務(wù)時,可以指定它不需要會話鎖:

5 完全不用會話

如果您的代碼完全不需要訪問$SESSION,那么可以聲明:

define('NO_MOODLE_COOKIES', true);

6 不需要配置

更極端的一種情況,如果您甚至不需要運行完整的moodle引導(dǎo)代碼,那么您可以通過以下方式跳過它:

define('ABORT_AFTER_CONFIG', true);
]]>
http://www.gablemachineandengine.com/wp/?feed=rss2&p=54 0
MOODLE 4.0的新特性 http://www.gablemachineandengine.com/wp/?p=70 http://www.gablemachineandengine.com/wp/?p=70#respond Sat, 09 Apr 2022 01:43:00 +0000 http://www.gablemachineandengine.com/wp/?p=70 繼續(xù)閱讀 ]]> 本文主要介紹魔燈moodle 4.0版的主要功能改進和升級要求。

一、主要改進

  • 導(dǎo)航【Navigation】

1 我的課程:從網(wǎng)站頂部的“我的課程”選項卡可以方便訪問“我的課程”。沒有可用課程的時候,可以方便的在我的課程頁面創(chuàng)建一門新課程??梢园盐业恼n程頁設(shè)置為缺省主頁。

2 儀表板【Dashboard】和時間線【Timeline】:通過儀表板頁面上的時間線版塊經(jīng)過改進,在截止日期前保留目標(biāo)事件。

3 課程目錄索引【Course Index】:在課程頁面的左側(cè)可以顯示課程的目錄索引(教學(xué)資源和教學(xué)活動)。

4 活動完成【Activity Completion】跟蹤:課程目錄索引中顯示各條目的完成狀態(tài)。

  • 課程編輯

1 編輯模式:切換編輯模式,并訪問新的版塊【block】抽屜【drawer】以添加或查看版塊。

2 輕松添加內(nèi)容:只需一次單擊即可添加活動【Activities】和資源【Resources】。

3 上下文導(dǎo)航【Contextual navigation】:課程和活動的選項卡【Tab】菜單。

4 拖放操作移動內(nèi)容:在課程索引區(qū)和中央內(nèi)容區(qū)可以拖放操作移動內(nèi)容。

  • 題庫改進

1 題庫插件:顯示或隱藏注釋和用法。

2 改進題目管理:另存為草稿或正式提交;與同事一起工作時,查看版本歷史記錄并使用自定義字段。

  • 課程

1 Atto編輯器:提升可訪問性【accessibility】。

2 及格才能完成:完成條件可以設(shè)置為成績及格。

3 新的活動圖標(biāo)。

4 內(nèi)容更新:當(dāng)課程內(nèi)容有新增或修改時,通知學(xué)員。

5 作業(yè)的時間:指定作業(yè)時間,鼓勵學(xué)員在指定時間內(nèi)提交作業(yè)。

6 Big Blue Button:使用Big Blue Button的免費試用版上直播課。

  • 管理

1 網(wǎng)站管理預(yù)設(shè)【presets】:輕松為用戶提供高效率的、全套功能的預(yù)設(shè)配置。

2 報表構(gòu)建:建立自定義報表并向指定的用戶【users】、角色【roles】、群組【cohorts】分享。

3 用戶導(dǎo)覽【User Tours】:可以包括圖片。

4 登錄頁面:可以設(shè)置背景圖片。

5 支持LTI 1.3 Advantage。

6 強制性的站點支持郵箱。

二、升級要求

1 Moodle 3.6及以上版本

2 PHP 7.3.0及以上版本

3 推薦PHP擴展sodium

4 推薦PHP擴展exif

5 推薦PHP設(shè)置max_input_vars 設(shè)置為>= 5000

6 數(shù)據(jù)庫最低版本要求

  PostgreSQL       10

  MySQL             5.7

  MariaDB           10.2.29

  Microsoft SQL Server       2017

  Oracle Database       11.2

7 瀏覽器支持:Chrome、Firefox、Safari、Edge

   Moodle 4.0及以上版本不再支持Internet Explorer 11。

   Safari 7及以下版本與Moodle 4.0及以上版本存在已知的兼容性問題。

8 移動端瀏覽器支持:MobileSafari、Google Chrome

]]>
http://www.gablemachineandengine.com/wp/?feed=rss2&p=70 0
MOODLE 3.11的新特性 http://www.gablemachineandengine.com/wp/?p=67 http://www.gablemachineandengine.com/wp/?p=67#respond Mon, 14 Mar 2022 01:07:00 +0000 http://www.gablemachineandengine.com/wp/?p=67 繼續(xù)閱讀 ]]> 本文主要介紹魔燈moodle 3.11版的主要功能改進和升級要求。

一、主要改進

(一)學(xué)生活動完成跟蹤【student activity completion】

1 改善學(xué)習(xí)體驗:活動日期和活動完成條件可顯示在課程頁面上。

2 活動日期和完成條件:活動日期和活動完成條件顯示在活動頁面的頂部。

3 手工標(biāo)記為完成:學(xué)生可以在活動頁面將活動標(biāo)記為完成。

4 新的顯示設(shè)置:新的顯示設(shè)置允許教師在課程頁面上隱藏或顯示活動日期和完成條件。

(二)可訪問性工具包【Accessibility toolkit】

1 免費的入門工具包:可訪問性工具包(來自Brickfield教育實驗室)鑒定課程中的可訪問性問題。

2 課程可訪問性評估:對課程內(nèi)容進行分析,以便教師能夠識別和修復(fù)可訪問性錯誤。

3 錯誤熱圖【Heatmap】:熱圖提供了關(guān)注區(qū)域的彩色上下文視圖。

4 一系列報表和圖表:錯誤可以以圖形形式查看,也可以作為帶有可下載報表的列表查看。

(三)H5P和內(nèi)容庫【content bank】

1 禁用選定的H5P內(nèi)容類型:管理員可以從管理員設(shè)置中禁用選定的H5P內(nèi)容類型。

2 將內(nèi)容標(biāo)記為不列示:教師可以通過將內(nèi)容庫標(biāo)記為不列示來隱藏內(nèi)容。

3 查看鏈接的內(nèi)容:內(nèi)容庫中新增一列顯示項目鏈接的次數(shù)。

4 刪除鏈接內(nèi)容時發(fā)出警報:當(dāng)鏈接內(nèi)容即將被刪除時,將顯示一條警報。

(四)測驗【quiz】與題型【question types】

1 查看分數(shù)修改和及格分數(shù):教師可以查看分數(shù)修改,學(xué)生可以直接在測驗頁面上查看及格分數(shù)。

2 保留首選試題設(shè)置:教師下次創(chuàng)建試題時,將保留對題型默認設(shè)置的更改。

3 論述題字數(shù)限制:論述題可以指定最小和最大字數(shù)限制。

4 反抄襲支持:如果安裝了抄襲檢查器,可用于論述題。

(五)徽章

1 更好的背包【backpack】管理:管理員可以為用戶設(shè)置背包【backpack】的排列順序。

2 兼容 Open Badges v 2.1:Moodle 3.11兼容Open Badges v 2.1,新的OAuth 2 Open Badges服務(wù)允許用戶連接到符合OB v 2.1標(biāo)準(zhǔn)的背包【backpack】,而無需在Moodle中輸入憑據(jù)。

(六)用戶檔案【User profile】字段

1 新的社交賬號字段【Social profile field】:新的社交賬號字段將替換用戶檔案中的硬編碼字段。

2 可在“顯示用戶身份”中選擇的自定義用戶檔案字段:可以在用戶策略>顯示用戶身份中選擇自定義用戶檔案字段,以便它們顯示在參與者列表中。

(七)其它新特性

1 控制音頻/視頻播放速率:學(xué)生可以控制音頻和視頻文件的播放速度。

2 改進的活動完成報表:活動完成報表可以按活動和活動順序進行篩選。

3 搜索語言包:安裝新語言包時,可以搜索語言列表。

4 新的PDF轉(zhuǎn)PNG轉(zhuǎn)換器:對于作業(yè)注釋,可以采用一個新的轉(zhuǎn)換器Poppler來代替Ghostscript。 5 課程單元鏈接版塊【Section links block】:標(biāo)題現(xiàn)在可以顯示在課程單元鏈接版塊中。

二、升級要求

1 Moodle 3.6及以上版本

2 PHP 7.3.0及以上版本

3 推薦PHP擴展sodium

4 推薦PHP設(shè)置max_input_vars 設(shè)置為>= 5000

5 數(shù)據(jù)庫最低版本要求

  PostgreSQL       9.6

  MySQL             5.7

  MariaDB           10.2.29

  Microsoft SQL Server       2017

  Oracle Database       11.2

5 瀏覽器支持:Chrome、Firefox、Safari、Edge

   Moodle 3.10及以上版本不再支持Internet Explorer 11。

   Safari 7及以下版本與Moodle 3.10及以上版本存在已知的兼容性問題。

6 移動端瀏覽器支持:MobileSafari、Google Chrome

]]>
http://www.gablemachineandengine.com/wp/?feed=rss2&p=67 0
MOODL的數(shù)據(jù)庫結(jié)構(gòu)開發(fā)規(guī)范 http://www.gablemachineandengine.com/wp/?p=49 http://www.gablemachineandengine.com/wp/?p=49#respond Wed, 09 Mar 2022 02:56:00 +0000 http://www.gablemachineandengine.com/wp/?p=49 繼續(xù)閱讀 ]]> 本文檔描述Moodle(魔燈)數(shù)據(jù)庫結(jié)構(gòu)開發(fā)規(guī)范。

為了幫助您創(chuàng)建符合這些規(guī)范的數(shù)據(jù)表,建議您使用內(nèi)置的數(shù)據(jù)庫定義(XMLDB)編輯器。

1 每個表都必須有一個自動遞增的id字段(INT10)作為主鍵。

2 包含每個模塊【module】實例【instances】的主表必須與模塊(例如小部件【widget】)具有相同的名稱,并且至少包含以下字段:

id -如上所述

course -模塊實例所屬課程的id

name -模塊實例的全名

3與包含“things”信息的模塊相關(guān)聯(lián)的其他表應(yīng)命名為widget_things(注意復(fù)數(shù)形式)。

4一般來說,核心表的表名應(yīng)該使用一個非復(fù)數(shù)單詞,而兩個單詞的表名只能是最后一個單詞采用復(fù)數(shù),例如course、course_categories。只有保留字【reserved words】例外,例如files。(由于歷史原因,目前有些表名不遵守這種規(guī)范,但這種情況后續(xù)會改變)

5 表名和列名應(yīng)避免在任何數(shù)據(jù)庫中使用的保留字【reserved words】。請在創(chuàng)建之前檢查它們。表名最多可包含28個字符,列名最多可包含30個字符。

6 列名應(yīng)該始終是小寫、簡單和簡短的,遵循與變量名相同的規(guī)則。

7 在可能的情況下,包含對另一個表(例如小部件【widget】)的id字段的引用的列應(yīng)該稱為widgetid。(請注意,此約定是新的,在一些舊表中沒有遵循)

8布爾字段應(yīng)實現(xiàn)為包含0或1的小整數(shù)字段(例如INT4),以便以后在必要時擴展值。

9大多數(shù)表都應(yīng)該有一個timemodified字段(INT10),該字段用PHP的time() 函數(shù)獲得的當(dāng)前時間戳更新字段值。

10始終為每個字段定義一個默認值(并使其合理)

11每個表名都應(yīng)該以數(shù)據(jù)庫前綴($CFG->prefix)開頭。在很多情況下,這會自動為您解決。此外,在Postgres下,每個索引的名稱也必須以前綴開頭。

12為了保證跨數(shù)據(jù)庫的兼容性,請遵循以下關(guān)于AS關(guān)鍵字使用的簡單規(guī)則(當(dāng)然,只有在需要在sql語句中為表、字段指定別名的時候):

  • 不要對表的別名使用AS關(guān)鍵字。
  • 不要在刪除語句中對表使用別名(Mysql不喜歡)。
  • 對字段別名使用AS關(guān)鍵字。

13絕對不要創(chuàng)建唯一鍵【UNIQUE KEYs】約束。而是使用唯一索引【UNIQUE INDEXes.】。將來,如果官方?jīng)Q定向Moodle添加引用完整性,需要的話會使用唯一鍵【UNIQUE KEYs】,但現(xiàn)在不會。請注意,XMLDB編輯器允許您同時指定XMLDB-only UNIQUE和FOREIGN約束(有利于更好地定義XML),但只會在底層生成索引。

14僅當(dāng)字段將成為某些(XMLDB-only)外鍵的引用目標(biāo)的時候,才為這些字段定義XMLDB-only UNIQUE KEYs,否則,定義為簡單的唯一索引【UNIQUE INDEXes】。

15與版塊【block】相關(guān)聯(lián)的表的名稱必須遵循如下約定:$CFG->prefix + “block_” + name_of_the_block + 其他內(nèi)容。例如,假設(shè)$CFG->prefix是’mdl_’,塊“rss_client”的所有表都必須以’mdl_block_rss_client’開頭(可以在末尾添加更多單詞,例如’mdl_block_rss_client_anothertable’ 等等)。

16不要在穩(wěn)定的分支中更改數(shù)據(jù)庫。如果這樣做,那么當(dāng)用戶從一個穩(wěn)定版本升級到下一個穩(wěn)定版本時,將發(fā)生重復(fù)更改數(shù)據(jù)庫,這可能會導(dǎo)致嚴(yán)重錯誤。

17在SQL查詢中引用整型變量時,不要將值括在引號中。例如,下面的語句是正確的

get_records_select( 'question', 'category=$catid' )

下面的語句是錯誤的:

get_records_select('question', “category='$catid’” )

它隱藏未定義$catid的bug。(如果加了引號,當(dāng)$catid沒有值時,sql語句也不會報錯)

18在SQL查詢語句中,不要對變量的值使用雙引號(例如SELECT*FROM{user}WHERE username=“someuser” )。雖然在MySQL中,這樣的SQL語句沒有問題,但這不符合ANSI數(shù)據(jù)庫標(biāo)準(zhǔn),比如Postgresql就會將雙引號的變量值視為系統(tǒng)標(biāo)識符(例如字段名)。

19 Moodle不支持數(shù)據(jù)庫“視圖”【view】,不要使用視圖。如果數(shù)據(jù)庫存在視圖、不符合規(guī)范的表,在數(shù)據(jù)庫轉(zhuǎn)換、遷移、備份、恢復(fù)、升級等操作中,可能會出現(xiàn)錯誤。

]]>
http://www.gablemachineandengine.com/wp/?feed=rss2&p=49 0
MOODLE的學(xué)習(xí)分析功能 http://www.gablemachineandengine.com/wp/?p=43 http://www.gablemachineandengine.com/wp/?p=43#respond Wed, 23 Feb 2022 02:36:00 +0000 http://www.gablemachineandengine.com/wp/?p=43 繼續(xù)閱讀 ]]> 本文介紹Moodle(魔燈)的學(xué)習(xí)分析【learning analytics】功能。

一、概述

(一)什么是學(xué)習(xí)分析?

學(xué)習(xí)分析是一種算法,用于根據(jù)歷史數(shù)據(jù)和當(dāng)前行為預(yù)測或檢測學(xué)習(xí)過程的未知信息。學(xué)習(xí)分析功能具有四性:

  • 描述性【descriptive】(發(fā)生了什么?)
  • 預(yù)測性【predictive】(接下來會發(fā)生什么?)
  • 診斷性【diagnostic】(為什么會發(fā)生?)
  • 對策性【prescriptive】(針對問題的處方,以為了改進后續(xù)的學(xué)習(xí))

大多數(shù)商業(yè)解決方案只是描述性的。那些具有預(yù)測性或前瞻性的方案對學(xué)習(xí)做出了某些假設(shè),但這些假設(shè)并不適用于所有人。

(二)分析【analytics】與報表【report】對比

Moodle(魔燈)提供了基于日志數(shù)據(jù)的各種內(nèi)置報表,但它們基本上是描述性的——它們告訴參與者發(fā)生了什么,但不告訴他們?yōu)槭裁?,它們不預(yù)測結(jié)果或建議參與者如何改善結(jié)果。日志條目雖然非常詳細,但其本身并不能描述學(xué)習(xí)過程。他們告訴我們“誰”、“什么”和“何時”,但不告訴我們“為什么”或“情況如何”。為了形成一種參與模式,每個微觀行動都需要更多的背景。
Moodle也有許多提供描述性分析的第三方插件。還有與第三方離站【off-site】報告解決方案的集成。同樣,它們主要提供描述性分析,依靠人類的判斷來解釋報告并生成預(yù)測和對策【prescriptions】。
過去,學(xué)習(xí)分析系統(tǒng)通常試圖分析過去的活動,以實時預(yù)測未來的活動。通過Moodle Learning Analytics,我們更加雄心勃勃。我們相信,一個完整的學(xué)習(xí)分析解決方案不僅能幫助我們預(yù)測事件,還能讓幫助我們正向提升。

(三)特點

1 支持兩種類型的模型:
? 基于機器學(xué)習(xí)【Machine-learning】的模型,包括預(yù)測模型【predictive models】
? 使用簡單規(guī)則檢測關(guān)注情況的“靜態(tài)”模型【”Static” models to detect situations of concern using simple rules】

2 三種內(nèi)置模型:
? 有輟學(xué)風(fēng)險的學(xué)生【Students at risk of dropping out】
? 即將舉行的活動到期【Upcoming activities due】
? 沒有教學(xué)行為【No Teaching】

3 一套基于探究性團體【Community of Inquiry】的學(xué)生參與度指標(biāo)【engagement indicators】。

4 內(nèi)置工具,用于根據(jù)站點數(shù)據(jù)評估模型

5 使用事件【events】進行主動通知【Proactive notifications】

6 建議的行動【Actions】列表隨每個模型的洞察通知【Insight notifications】一起提供。例如,在“有輟學(xué)風(fēng)險的學(xué)生”模型中,教師可以輕松地向該模型識別的學(xué)生發(fā)送消息,或者跳轉(zhuǎn)到該學(xué)生的活動報表【Activity report】,以獲取有關(guān)課程中學(xué)生活動的更多詳細信息。

7 提供API,為第三方Moodle插件構(gòu)建指標(biāo)和預(yù)測模型

8 機器學(xué)習(xí)后端插件類型 – 支持PHP和Python,可以擴展以實現(xiàn)其他機器學(xué)習(xí)后端

9 基于可重用的目標(biāo)【targets】、指標(biāo)【indicators】和其他組件【components】,該系統(tǒng)可以輕松地通過新的定制模型進行擴展。

(四)局限性

1 機器學(xué)習(xí)模型,比如有輟學(xué)風(fēng)險的學(xué)生,必須在有數(shù)據(jù)的網(wǎng)站上接受訓(xùn)練。這些模型無法在訓(xùn)練完成之前在一個站點上進行預(yù)測。

2 模型的設(shè)計和選擇必須與學(xué)校的教學(xué)目標(biāo)優(yōu)先級相匹配。

二、設(shè)置

Moodle的學(xué)習(xí)分析系統(tǒng)在使用前需要進行一些初始配置。

三、使用學(xué)習(xí)分析功能

Moodle Learning Analytics API是一個開放系統(tǒng),可以成為各種模型的基礎(chǔ)。模型可以包含指標(biāo)【indicators】(也稱為預(yù)測器【predictors】)、目標(biāo)【targets】(我們試圖預(yù)測的結(jié)果)、洞察【insights】(預(yù)測本身)、通知【notifications】(洞察結(jié)果發(fā)送的消息)和行動【actions】(提供給消息接收者,這些可以反過來成為指標(biāo))。
默認情況下,大多數(shù)學(xué)習(xí)分析模型都未啟用。應(yīng)在考慮模型所要支持的目標(biāo)后,根據(jù)目標(biāo)需要啟用相關(guān)模型。

四、管理模型

一旦模型被啟用和訓(xùn)練,就會產(chǎn)生洞察【insights】。還應(yīng)監(jiān)控模型的性能和準(zhǔn)確性。

]]>
http://www.gablemachineandengine.com/wp/?feed=rss2&p=43 0
MOODLE的性能和可伸縮性 http://www.gablemachineandengine.com/wp/?p=38 http://www.gablemachineandengine.com/wp/?p=38#respond Mon, 07 Feb 2022 02:16:00 +0000 http://www.gablemachineandengine.com/wp/?p=38 繼續(xù)閱讀 ]]> 這篇文檔是如何提高moodle(魔燈)性能【performance】和可伸縮性【performance】的編碼指南。

性能【performance】是指允許Moodle(魔燈)使用一定數(shù)量的硬件支持盡可能多的用戶。
當(dāng)然,你總是可以購買更大的服務(wù)器。可伸縮性【scalability】意味著,如果你購買的服務(wù)器的功能是原來的兩倍,那么它可以處理兩倍的負載。

編寫可擴展和執(zhí)行的代碼

每個頁面應(yīng)該只使用固定數(shù)量的數(shù)據(jù)庫查詢

  • 如果在循環(huán)中看到數(shù)據(jù)庫訪問操作,一定要保持警惕。如果數(shù)據(jù)庫訪問隱藏在函數(shù)中,有時很難發(fā)現(xiàn)這一點。
  • 使用聯(lián)接【JOINs】和子查詢(get_records_sql、get_recordset_sql等)而不是循環(huán)執(zhí)行多個查詢。
  • 或者找到一個Moodle API函數(shù),盡可能高效地獲取您想要的數(shù)據(jù)。(例如,get_users_by_capability)。
  • 了解如何編寫適用于所有受支持數(shù)據(jù)庫的SQL,參考官方的《數(shù)據(jù)庫指南》【Database guidelines】文檔。

限制每個頁面在生成時所需的內(nèi)存大小

  • 大型報表應(yīng)該按固定大小的頁面進行分頁。
  • 當(dāng)您無法使用SQL在數(shù)據(jù)庫中完成所有業(yè)務(wù)操作時,處理來自數(shù)據(jù)庫的大量數(shù)據(jù),應(yīng)該使用記錄集,并使用recordset_walk迭代器(moodle/lib/classes/dml/recordset_walk.php),避免將所有結(jié)果加載到大型PHP數(shù)組中消耗內(nèi)存。

警惕外部調(diào)用【external call】

與數(shù)據(jù)庫查詢一樣,還有其他操作比只執(zhí)行PHP代碼慢得多。例如:

  • 運行shell腳本;
  • 進行web服務(wù)調(diào)用;
  • 處理文件(程度較輕)。

無論何時做這些事情,都要注意性能問題。

限制會話鎖【session locks】的范圍

如果您不需要會話鎖,或者只需要在頁面的一部分使用它,請解鎖會話。

如何提高代碼的性能

在開發(fā)過程中評估性能

  • 啟用顯示性能信息【Performance info】(包括數(shù)據(jù)庫查詢操作計數(shù))。管理員登錄后,在 網(wǎng)站管理->開發(fā)->調(diào)試 中勾選perfdebug配置項。勾選性能信息設(shè)置項,將在標(biāo)準(zhǔn)主題【theme】(以及其他一些主題)的頁腳中顯示如下性能信息:頁面加載時間、用于生成頁面的內(nèi)存量、cpu使用率、負載、記錄緩存的命中/未命中率。如果需要對數(shù)據(jù)庫查詢操作計數(shù),還需要在config.php中加入如下代碼:
// Capture performance profiling data 
define('MDL_PERF', true);
// Capture additional data from DB
define('MDL_PERFDB', true);
// Print to log (error_log(),for passive profiling of production servers)
define('MDL_PERFTOLOG', true);
// Print to footer (works with the default theme)
define('MDL_PERFTOFOOT', true);

小技巧:如果希望只對站點管理員顯示性能信息,可以在適當(dāng)?shù)奈恢茫ū热绮季猪撁娴捻敳浚?,加入如下代碼:

if (is_siteadmin()) {
    $CFG->perfdebug = 8;
}
  • 使用JMeter(https://jmeter.apache.org/)等工具對新代碼做壓力測試。
  • 使用https://github.com/moodlehq/moodle-performance-comparison (moodle 2.5及以上版本)比較Moodle的性能。您還可以使用測試站點生成器【Test site generator】或測試課程生成器【Test course generator】(Moodle 2.5及以上版本)。

在運行中評估性能

如果你使用postgres,有一個腳本可以解析日志并輸出最慢的10個數(shù)據(jù)庫查詢,隨時可以插入cronjob并每天給你發(fā)電子郵件。腳本可以在這里找到:

http://git.catalyst.net.nz/gw?p=pgtools.git;a=blob_plain;f=scripts/pg-log-process.pl;hb=refs/heads/pg-log-process-multidb

需要對postgres進行一些配置,使其以正確的格式記錄內(nèi)容。

MySQL數(shù)據(jù)庫有?個配置選項可以幫助我們及時捕獲慢SQL語句:

# 開啟日志記錄慢查詢
slow_query_log = ON
# 閾值,記錄執(zhí)行時間超過2秒的慢查詢
long_query_time = 2
# 指定日志文件
slow_query_log_file = path/to/log/file/slowquery.log
# 記錄不使用索引查詢,即使查詢效率不慢
log_queries_not_using_indexes = ON
# 記錄數(shù)據(jù)庫管理SQL中慢sql
log-slow-admin-statements = ON

Moodle(魔燈)網(wǎng)站能支持多大負荷

從統(tǒng)計數(shù)據(jù)來看,目前世界上最大的Moodle(魔燈)站點

  • 多達100萬用戶
  • 多達5萬門課程
  • 每門課程多達5000名用戶
  • 多達50個角色
  • 多達100個課程類別,嵌套深度約為10級。
  • 課程中多達XXX項活動。
  • 更多內(nèi)容。。。

在規(guī)劃和測試代碼時,這些是您應(yīng)該考慮的數(shù)字。然而,不要認為Moodle(魔燈)網(wǎng)站永遠不會比這更大。
即使不能在開發(fā)服務(wù)器上測試這么大的站點,也應(yīng)該使用生成器腳本,這樣就可以在一個不小的Moodle(魔燈)站點上測試代碼。

]]>
http://www.gablemachineandengine.com/wp/?feed=rss2&p=38 0
MOODLE 3.10的新特性 http://www.gablemachineandengine.com/wp/?p=64 http://www.gablemachineandengine.com/wp/?p=64#respond Thu, 20 Jan 2022 03:00:00 +0000 http://www.gablemachineandengine.com/wp/?p=64 繼續(xù)閱讀 ]]> 本文主要介紹魔燈moodle 3.10版的主要功能改進和升級要求。

一、主要改進

(一)通用

1 下載課程內(nèi)容:點擊“下載課程內(nèi)容”按鈕可以下載課程內(nèi)容(如果被允許的話)。

2 選擇你的徽章背包【backpack】:發(fā)生徽章【badge】到你選擇的徽章背包。

3 測試時的滾動計時器:使用新的測驗滾動計時器,輕松查看剩余時間。

4 文件夾【folder】顯示:文件夾資源【folder resourse】中的圖像和HTML文件可以直接在瀏覽器中查看,而無需下載。

(二)對教師

1 內(nèi)容庫【content bank】改進:可以下載和(或)替換內(nèi)容庫中的H5P文件。

2 下載課程內(nèi)容:可以設(shè)置是否允許學(xué)生下載課程內(nèi)容。

3 付費課程:提供付費課程功能,支持多種付費方式。

4 測驗完成:可以基于試答的次數(shù)設(shè)置完成條件。

(三)對管理員

1 下載課程內(nèi)容:可以設(shè)置是否啟用允許學(xué)生下載課程內(nèi)容的功能。

2 定制H5P風(fēng)格:在主題中定制H5P風(fēng)格。

3 支付網(wǎng)關(guān):設(shè)置由于付費課程的支付網(wǎng)關(guān)。

4 語言定制:導(dǎo)入、導(dǎo)出定制的語言字符串。

5 更好的任務(wù)管理:新的“任務(wù)運行”屏幕顯示當(dāng)前正在執(zhí)行的任務(wù)。

6 LTI改進:LTI改進包括動態(tài)注冊和內(nèi)容的多項選擇。

二、升級要求

1 Moodle 3.5及以上版本

2 PHP 7.2.0及以上版本

3 需要PHP擴展mbstring

4 數(shù)據(jù)庫最低版本要求

  PostgreSQL       9.6

  MySQL             5.7

  MariaDB           10.2.29

  Microsoft SQL Server       2012

  Oracle Database       11.2

5 瀏覽器支持:Chrome、Firefox、Safari、Edge

   Moodle 3.10不再支持Internet Explorer 11。

   Safari 7及以下版本與Moodle 3.10存在已知的兼容性問題。

6 移動端瀏覽器支持:MobileSafari、Google Chrome

]]>
http://www.gablemachineandengine.com/wp/?feed=rss2&p=64 0
您好! http://www.gablemachineandengine.com/wp/?p=1 http://www.gablemachineandengine.com/wp/?p=1#respond Sat, 08 Jan 2022 03:14:09 +0000 http://www.gablemachineandengine.com/wp/?p=1 繼續(xù)閱讀 ]]> 如果您有如下需求,請聯(lián)系我們!

一、您需要給您的學(xué)生開設(shè)在線課程(spoc),開展線上教學(xué),甚至混合課程教學(xué)實踐。

  • 您希望通過試用找到適合自己的產(chǎn)品;
  • 暫時只有少量課程需要上線,希望有免費使用的機會。

二、您是moodle(魔燈)的使用者。

  • 希望能將moodle(魔燈)平穩(wěn)升級到符合國內(nèi)教學(xué)需求和使用習(xí)慣的在線課程平臺(spoc),并使已有的課程、數(shù)據(jù)、定制插件功能得以保留;
  • 有明確的功能改進需求,需要二次開發(fā)
  • 需要外包運維、支持、課件(特別是互動課件)開發(fā)服務(wù)

三、您需要給學(xué)生開展實訓(xùn)教學(xué)。

  • 您需要建設(shè)專業(yè)實訓(xùn)室(會展、物流、老年服務(wù)與管理專業(yè)),希望獲得實訓(xùn)室建設(shè)方案以供參考;
  • 您需要開發(fā)線上模擬實訓(xùn)項目,特別是能嵌入到線上課程平臺的實訓(xùn)項目。

我們的聯(lián)系方式:

  • 電話:0571-85134926
  • 郵箱:support@cnee.com.cn
  • Q Q:100720903
]]>
http://www.gablemachineandengine.com/wp/?feed=rss2&p=1 0
MOODLE 3.9的新特性 http://www.gablemachineandengine.com/wp/?p=62 http://www.gablemachineandengine.com/wp/?p=62#respond Mon, 03 Jan 2022 01:37:00 +0000 http://www.gablemachineandengine.com/wp/?p=62 繼續(xù)閱讀 ]]> 本文主要介紹魔燈moodle 3.9版的主要功能改進和升級要求。

一、主要改進

(一)通用

1 集成H5P。

2 課程參與人【Participants】篩選【filter】:有助于更有效的搜索和篩選課程參與人。

3 圖書【Book】導(dǎo)航:對圖書內(nèi)容提供更清晰的導(dǎo)航,避免以前版本的混亂。

4 可訪問性【Accessibility】:改進Atto編輯器。

5可一鍵快速移動到屏幕頂部。

6 可批量刪除私人文件。

(二)對教師

1 H5P內(nèi)容庫:在一個新的內(nèi)容庫保存、上傳、創(chuàng)建和配置H5P。

2 H5P報表:啟用對成績、學(xué)習(xí)實踐過程【attempt】的跟蹤。

3 活動選擇器:在改進的“活動選擇器”中輕松定位、查看標(biāo)星項目、查看推薦項目。

4 安全考試瀏覽器:正式集成安全考試瀏覽器【Safe Exam Browser】,可在quiz中配置SEB以滿足考試要求。

5 課程頁面,提供一個“打開編輯功能”按鈕。

6 活動完成:移動活動時,無需擔(dān)心會丟失基于“上一個”設(shè)置一個新的完成條件的活動完成設(shè)置。

7 從新的網(wǎng)站moodle.net搜索和導(dǎo)入內(nèi)容。

(三)對管理員

1 H5P設(shè)置:集成H5P功能的設(shè)置。

2 安全考試瀏覽器設(shè)置:正式集成安全考試瀏覽器【Safe Exam Browser】

3 推薦活動設(shè)置。

4 活動選擇器【Activities Chooser】:設(shè)置在活動選擇器彈框中顯示哪些選項卡【Tabs】。

5 許可證:從新的管理設(shè)置中添加新許可證。

6 用戶導(dǎo)覽:在啟用用戶導(dǎo)覽時指定訪問日期。

7 課程復(fù)制:利用新MUA-funded功能快速復(fù)制課程。

8 集成新的moodle.net。

9 徽章:集成新的背包支持Open Badge 2.1。

10 讓你的用戶通過你網(wǎng)站上的反饋鏈接幫助我們改進Moodle。

二、升級要求

1 Moodle 3.5及以上版本

2 PHP 7.2.0及以上版本

3 需要PHP擴展mbstring

4 數(shù)據(jù)庫最低版本要求

  PostgreSQL       9.5

  MySQL             5.6

  MariaDB           10.2.29

  Microsoft SQL Server       2012

  Oracle Database       11.2

5 瀏覽器支持:Chrome、Firefox、Safari、Edge、Internet Explorer

   Moodle 3.9.x(LTS)將是最后一個支持Internet Explorer 11的版本。Moodle 3.10將不支持Internet Explorer 11。

   Safari 7及以下版本、Internet explorer 10及以下版本與Moodle 3.9存在已知的兼容性問題。

6 移動端瀏覽器支持:MobileSafari、Google Chrome

]]>
http://www.gablemachineandengine.com/wp/?feed=rss2&p=62 0