基于學(xué)習(xí)分析技術(shù)的高等數(shù)學(xué)輔助學(xué)習(xí)系統(tǒng)的設(shè)計與實現(xiàn)_第1頁
基于學(xué)習(xí)分析技術(shù)的高等數(shù)學(xué)輔助學(xué)習(xí)系統(tǒng)的設(shè)計與實現(xiàn)_第2頁
基于學(xué)習(xí)分析技術(shù)的高等數(shù)學(xué)輔助學(xué)習(xí)系統(tǒng)的設(shè)計與實現(xiàn)_第3頁
基于學(xué)習(xí)分析技術(shù)的高等數(shù)學(xué)輔助學(xué)習(xí)系統(tǒng)的設(shè)計與實現(xiàn)_第4頁
基于學(xué)習(xí)分析技術(shù)的高等數(shù)學(xué)輔助學(xué)習(xí)系統(tǒng)的設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩66頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、分類號:G43密級:公開碩士學(xué)位論文題目:基于學(xué)習(xí)分析技術(shù)的高等數(shù)學(xué)輔助學(xué)習(xí)系統(tǒng)的設(shè)計與實現(xiàn)姓名:王錚學(xué)號:Y140540174學(xué)院:教育科學(xué)與技術(shù)學(xué)院專業(yè):教育技術(shù)學(xué)研究方向:新媒體技術(shù)與學(xué)習(xí)導(dǎo)師:趙穎教授二。一七年五月Design and Implementation of Advanced MathematicsAuxiliary Learning System Based on Learning AnalysisTechnologyA Thesis Submitted for the Degree of MasterCandidate: Wang ZhengSupervisor: Pr

2、of. ZHAO YINGNorthwest Minzu UniversityLanzhou; China關(guān)于學(xué)位論文使用授權(quán)的聲明本人在導(dǎo)師指導(dǎo)下所完成的論文及相關(guān)的作品,知識產(chǎn)權(quán)歸屬西北 民族大學(xué)。本人完全了解西北民族大學(xué)有關(guān)保存、使用學(xué)位論文的規(guī)定, 同意學(xué)校保存或向國家有關(guān)部門或機構(gòu)送交論文的紙質(zhì)版和電子版,允 許論文被查閱和借閱;本人授權(quán)西北民族大學(xué)可以將本學(xué)位論文的全部 或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫進(jìn)行檢索,可以采用任何復(fù)制手段保存和匯 編本學(xué)位論文。本人離校后發(fā)表、使用學(xué)位論文或與該論文直接相關(guān)的 學(xué)術(shù)論文或成果時,第一署名單位仍然為西北民族大學(xué)。保密論文在解密后應(yīng)遵守此規(guī)定。論文作

3、者簽名:王靜 導(dǎo)師簽名:秒釜 日期:M7.Cz原創(chuàng)性聲明本人鄭重聲明:本人所呈交的學(xué)位論文,是在導(dǎo)師的指導(dǎo)下獨立進(jìn) 行研究所取得的成果。學(xué)位論文中凡引用他人已經(jīng)發(fā)表或未發(fā)表的成 果、數(shù)據(jù)、觀點等,均已明確注明出處。除文中已經(jīng)注明引用的內(nèi)容外, 不包含任何其他個人或集體已經(jīng)發(fā)表或撰寫過的科研成果。對本文的研 究成果做出重要貢獻(xiàn)的個人和集體,均已在文中以明確方式標(biāo)明。本聲明的法律責(zé)任由本人承擔(dān)。論文作者簽名:丑鋒日期:2刃槌8摘要近年隨著來互聯(lián)網(wǎng)和大數(shù)據(jù)的快速崛起,各行各業(yè)都在積極的與信息技術(shù)進(jìn)行 整合,其中在教育領(lǐng)域我國也開展了相關(guān)探索,就目前實際情況而言,高等教育的 信息化程度要遠(yuǎn)高于中等和幼

4、兒教育,因此在輔助學(xué)習(xí)系統(tǒng)的建設(shè)方面各大高等院 校始終處于領(lǐng)先地位。雖然在高校的教學(xué)活動中此類應(yīng)用已初具規(guī)模,但仍以視音 頻和題庫為主,缺乏有效的個性化指導(dǎo),所以本文以此為切入點,采用學(xué)習(xí)分析技 術(shù)的理念和方法,設(shè)計并實現(xiàn)一款功能完備且影響廣泛的個性化輔助學(xué)習(xí)系統(tǒng)。本文以大學(xué)的高等數(shù)學(xué)課程為起點進(jìn)行了探究,在分析傳統(tǒng)高等數(shù)學(xué)教育模式 弊端的基礎(chǔ)上提出了本輔助學(xué)習(xí)系統(tǒng)的建設(shè)思路,以當(dāng)前我國理工科大學(xué)生為主要 服務(wù)對象,結(jié)合高校教育的現(xiàn)狀,參照建構(gòu)主義學(xué)習(xí)理論、認(rèn)知同化理論、以及相 關(guān)的教育學(xué)原理和范式,嚴(yán)格依據(jù)軟件工程的標(biāo)準(zhǔn)和步驟進(jìn)行設(shè)計開發(fā)。本系統(tǒng)首 先通過前期調(diào)研來獲取需求定位數(shù)據(jù),將這些數(shù)

5、據(jù)歸納總結(jié)后形成其整體框架和功 能的概述。接下來根據(jù)這些要素,開展數(shù)據(jù)結(jié)構(gòu)的設(shè)計與實現(xiàn),既實體項的劃分和 數(shù)據(jù)庫表單的創(chuàng)建,著重描述數(shù)據(jù)庫的搭建流程和表單間的邏輯關(guān)系形成系統(tǒng)全 局的E-R圖,然后以此數(shù)據(jù)結(jié)構(gòu)為基礎(chǔ),開展相應(yīng)的系統(tǒng)研發(fā)工作。本系統(tǒng)采用當(dāng) 下主流的B/S架構(gòu),涉及了 web前端開發(fā)和后臺腳本的編寫,利用成熟穩(wěn)定的WAMP (Windows、Apache MySQL、PHP)技術(shù),可以完成對頁面內(nèi)容的動態(tài)加載和呈現(xiàn), 再結(jié)合配套的CMS系統(tǒng)能夠?qū)崿F(xiàn)對學(xué)習(xí)資料的增、刪、改、查操作。功能方面主要 由用戶管理模塊、交互模塊、資源管理模塊和學(xué)習(xí)分析模塊組成。以上共同構(gòu)成了 本系統(tǒng)的業(yè)務(wù)邏輯

6、與技術(shù)支撐。該輔助學(xué)習(xí)系統(tǒng)針對高等數(shù)學(xué)學(xué)科,可以在線進(jìn)行答題、獲取實時反饋。此外 又融入了學(xué)習(xí)分析這一關(guān)鍵元素,通過對不同學(xué)習(xí)者的學(xué)習(xí)數(shù)據(jù)進(jìn)行存儲、分析, 最后得出關(guān)于該學(xué)習(xí)者的個性化學(xué)習(xí)分析結(jié)果并加以干預(yù)指導(dǎo),從而使千百年來 “因材施教”的理念在信息技術(shù)的環(huán)境下得以真正實現(xiàn)。關(guān)鍵詞:學(xué)習(xí)分析技術(shù),輔助學(xué)習(xí)系統(tǒng),高等數(shù)學(xué),個性化AbstractIn recent years, with the rapid rise of the Internet and large data, all walks of life are actively integrated with the informa

7、tion technology, which in the field of education in China has also carried out the relevant exploration, the current actual situation, the degree of higher education information Far higher than the middle and early childhood education, so in the construction of auxiliary learning system, the major i

8、nstitutions of higher education is always in a leading position.Although this kind of application has begun to take shape in the teaching activities of colleges and universities, it still lacks the effective individualized instruction, which is based on audio-visual and question-based, so this artic

9、le uses the concept and method of learning analysis technology as the starting point And to achieve a fully functional and a wide range of personalized auxiliary learning system.Based on the analysis of the drawbacks of the traditional higher mathematics education Model, this paper puts forward the

10、construction of this auxiliary learning system, taking the current university students of science and engineering as the main service object, combining with the status quo of the university education , With reference to constructivism learning theory, cognitive assimilation theory, and the relevant

11、principles and paradigms of education, in strict accordance with the standards and steps of software engineering design and development.The system first through the pre-research to obtain demand positioning data, these data summarized after the formation of its overall framework and function of the

12、overview. Then, according to these elements, the design and implementation of the data structure are carried out. The division of the entity items and the creation of the database form are described. The logical relationship between the database construction process and the form is described, and th

13、e ER diagram of the system is formed. Then, As the basis, to carry out the corresponding system research and development work.The system uses the current mainstream B / S architecture, involving the web front-end development and background scripting, the use of mature and stable WAMP (Windows, Apach

14、e, MySQL, PHP) technology, you can complete the dynamic loading and presentation of the page, and then Combined with the supporting CMS system to achieve the learning materials by the increase, delete, change, check operation.Function mainly by the user management module, interactive module, resourc

15、e management module and learning analysis module. Above together constitute the systems business logic and technical support.The auxiliary learning system for high mathematics disciplines, you can answer online, access to real-time feedback. But also into the learning and analysis of this key elemen

16、t, through the different learners of the learning data storage, analysis, and finally obtained on the learners personalized learning analysis and intervention to guide. So that thousands of years of individualized” concept in the infonnation technology environment can be truly realized.Keywords: lea

17、rning analysis technology, auxiliary learning system, higher mathematics, individualizationIIIIV1 12 3 4 5 5 6 6678890 1 1111121313141517171818181920聲明摘要Abstract第1章緒論 1.1課題來源及背景2國內(nèi)外研究現(xiàn)狀1.2.1國外研究現(xiàn)狀1.2.2國內(nèi)研究現(xiàn)狀1.3研究目的與意義1.4研究內(nèi)容L 5研究方法第2章 相關(guān)概念與理論基礎(chǔ)2A概念界定L 1學(xué)習(xí)分析技術(shù)2.1.2輔助學(xué)習(xí)系統(tǒng)2.2相關(guān)教育學(xué)理論及啟示2.2.1布魯姆教學(xué)目標(biāo)分類理論2

18、.2.2認(rèn)知同化學(xué)習(xí)理論2.2.3建構(gòu)主義理論第3章需求分析3.1調(diào)研設(shè)計與實施L 1調(diào)查樣本選擇3.1.2問卷的設(shè)計3.1.3問卷的實施3. 2調(diào)研結(jié)果分析3.2.1關(guān)于學(xué)習(xí)者對高等數(shù)學(xué)的學(xué)習(xí)態(tài)度與現(xiàn)狀調(diào)查2關(guān)于學(xué)習(xí)者對網(wǎng)絡(luò)學(xué)習(xí)的認(rèn)同感調(diào)查3.2.3關(guān)于學(xué)習(xí)者對于高等數(shù)學(xué)輔助學(xué)習(xí)系統(tǒng)的功能需求調(diào)查,第4章輔助學(xué)習(xí)系統(tǒng)的設(shè)計4.1系統(tǒng)框架的提出4.2系統(tǒng)的結(jié)構(gòu)設(shè)計4.2.1表示層2 順層4.2.3功能層4.3系統(tǒng)功能模塊設(shè)計. TOC o 1-5 h z 4.3.1用戶管理模塊 20郊模塊. 214.3.3資源管理模塊 224.3.4學(xué)習(xí)分析模塊 23 HYPERLINK l bookmark

19、102 o Current Document 4.4系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計 24 概念結(jié)構(gòu)設(shè)計 .244.4.2實體詳情及E-R圖 254.4.2數(shù)據(jù)表的設(shè)計 28 HYPERLINK l bookmark111 o Current Document 第5章 輔助學(xué)習(xí)系統(tǒng)的實現(xiàn)31 HYPERLINK l bookmark114 o Current Document WAMP開發(fā)環(huán)境及工具 31Apache 服務(wù)器 31MYSQL 順庫 32 3 PHP 語言和 Zend Studio 編輯器.32MVC結(jié)構(gòu)的實現(xiàn) 335.21 MYSQL接口類的創(chuàng)建 33 2 Smarty模板的應(yīng)用 34 HYP

20、ERLINK l bookmark122 o Current Document 3面向用戶的核心業(yè)務(wù)的實現(xiàn) 3653.1 用戶的注冊與登錄375.3.2在線答題3853.3學(xué)習(xí)分析和反饋405.3.4 視頻唳* 443.5在線投票 46 HYPERLINK l bookmark130 o Current Document 5.4 CMS后臺系統(tǒng)的實現(xiàn) 485.4.1知識點樹狀導(dǎo)航482 發(fā)布495.4.3解答題批閱 52 HYPERLINK l bookmark139 o Current Document 第 6 章 系統(tǒng)測試54 HYPERLINK l bookmark144 o Curre

21、nt Document 6.1頁面測試 54 HYPERLINK l bookmark136 o Current Document 6.2功能測試55 HYPERLINK l bookmark149 o Current Document 3測試結(jié)果分析 57 HYPERLINK l bookmark152 o Current Document 4輔助學(xué)習(xí)效果評估 57 HYPERLINK l bookmark156 o Current Document 第7章 總結(jié)與展望 58 HYPERLINK l bookmark159 o Current Document 7.11作總結(jié) 58 HYPE

22、RLINK l bookmark165 o Current Document 2 不足與展望 58 HYPERLINK l bookmark172 o Current Document 參考文獻(xiàn) 60附錄:62致謝 63第1章緒論1.1課題來源及背景2010年7月黨中央、國務(wù)院召開了新世紀(jì)第一次全國教育工作會議,頒布了 亟 LevelModel.class.php。 ManageModel.dass.phpa E Model.class.phpNavModel.class.php:遒 PremissionModel.dass.phpp B RecordModel.class.php% Rota

23、tainModel.class.php 8 SystemModel.class.php 曲 TagModel.dass.php ? B UserModel.dass.php = VoteModel.class.php 圖5-1 Model文件夾示意圖由于PHP默認(rèn)的數(shù)據(jù)驅(qū)動為MySQL,所以可以直接通過內(nèi)置的方法連接MySQL數(shù)據(jù) 庫,但在實際搭建的過程中,每張業(yè)務(wù)頁面的生成都需要與數(shù)據(jù)庫進(jìn)行實時連通才能加 載相關(guān)數(shù)據(jù)達(dá)到動態(tài)的效果,那么如果每張頁面的代碼都重復(fù)寫_次將大大增加了代碼 的冗余。其實不僅僅單純只是連接數(shù)據(jù)庫方面,在增、刪、改、查的各個操作步驟如果 都反復(fù)編寫,既造成了開發(fā)人員不必

24、要的工作量,也不利于系統(tǒng)的優(yōu)化。最理想的狀態(tài) 是將不同的SQL語句以字符串參數(shù)的形式進(jìn)行傳參然后返回出相應(yīng)的結(jié)果集,這就需 要我們創(chuàng)建一個關(guān)于MySQL數(shù)據(jù)庫內(nèi)置函數(shù)的父類并命名為Model.class.php,由于是 基于MVC開展的項目,所以應(yīng)選選取面向?qū)ο蟮膍ysqli方法進(jìn)行封裝,下面展示Model 父類中使用率最高最高的成員方法:protected function AUD($_SQL)(/增、刪、改$_mysqli=DB: :getDB();$_mysqli-query($_SQL);$_affected_rows=$_mysqli-affected_rows;DB:unDB($_

25、result=null? $_mysqli);return $_affected_rows;protected function all($_SQL)結(jié)果集是多條記錄$_mysqli=DB:getDB();$_result=$_mysqliquery($_SQL);$_HTML=array();while (!$_objects=$_result-fetch_object()$_HTML =$_obj ects;DB:unDB($_result5 $_mysqli);return Tool:HTMLString($_HTML); 從注釋中可以發(fā)現(xiàn)這些方法的功能,當(dāng)然Model父類中還包含了其他

26、mysqli內(nèi)置 函數(shù),詳情可參看工程項目文件中的Model文件夾下的Model.class.php文件。當(dāng)父類 所涉及的常用方法全部封裝完成后,接下來在構(gòu)建具體業(yè)務(wù)構(gòu)建時要創(chuàng)建以該業(yè)務(wù)名稱 為前綴的Model子類,然后子類通過parent::命令調(diào)用父類中的方法并傳參獲取所需 數(shù)據(jù),這樣就實現(xiàn)了項目的模型體系和MySQL數(shù)據(jù)庫接口類的創(chuàng)建。5. 2.2 Smarty模板的應(yīng)用Smarty是一款以PHP為基礎(chǔ)編寫的模板引擎,是目前1T領(lǐng)域中最著名的PHP模 板技術(shù)之一。它主要作用于前端的View視圖中并能夠盡最大限度的分離邏輯程序和 HTML標(biāo)簽,使界面設(shè)計與后臺代碼相分離,這也與MVC的理念

27、相吻合。因為Smarty 中的大部分功能在本系統(tǒng)的研發(fā)過程中并不涉及,一味的引入就會產(chǎn)生資源的浪費,所 以筆者選取了其解析類中的相關(guān)方法重新生成了一款為本項目量身打造的Smarty模板。本研究中Smarty的核心功能就是將后臺中存在的變量,注入到前端的頁面并顯示, 最后生成相應(yīng)的靜態(tài)編譯php文件,在條件不變的情況下,下一次就直接訪問編譯文件, 不必再經(jīng)歷后臺運算的過程,這樣可以大幅提高運行速率。與面向過程的方式不同,由 于模板技術(shù)的使用,所以在項目的開發(fā)流程中不再使用.HTML文件,取而代之的是指 定類型的.tpl文件,我們習(xí)慣稱之為模板文件。與上一節(jié)Model集合相似,我們也必須為這些模板

28、文件提供一個指定的目錄,但smarty對此有嚴(yán)格的要求,該文件夾的名稱 必須為templates如圖5-2所示,放置編譯文件的目錄為templates*雖然文件類型出現(xiàn) 了變化,但內(nèi)部所包含的內(nèi)容依舊全部是HTML的語法結(jié)構(gòu),CSS和JS的導(dǎo)入沒有任 何影響。& templates幽 admin.login.tplB admin.tp!B adver.tpl analyze.tpl 昌 casttpl 周 commenttpl comprehension.tpl 患1 contenttpl details.tpl 揭 feedbacictpl B footer.tpl 國 header.tpl

29、 3 index.tpl 通 level.tpl 囿 listtpl 2) main.tpl圖5-2模板文件夾示意圖在使用該技術(shù)前必須實例化生成$_tpl模板對象,然后通過內(nèi)置的display方法引 入所需的模板文件具體代碼如:$_tpldisplay(index.tpl);然后在對應(yīng)的邏輯程序中使 用assign方法將變量注入到前端如:$this_tpl-assign(TM$_title);而在界面中顯示 變量才是smarty最大的亮點,以上一句assign命令為例,將變量$_title中的內(nèi)容賦 給TM,然后將TM注入到頁面中,在相應(yīng)的模板中使用固定的$丁14寫法就完成 了顯示,簡單明了不

30、涉及任何編程內(nèi)容,即使是美工人員都能夠輕松掌握。此外 smarty還提供了在界面中的一系列邏輯操作,語法與HTML標(biāo)簽極其相似如 (if) /if、如each (/foreach)等o Smarty模板技術(shù)的應(yīng)用,為View視圖方面的建設(shè) 提供了巨大的便利,也是MVC結(jié)構(gòu)中不可獲取的組成部分。2. 3加載控制執(zhí)行腳本前兩節(jié)分別從Model和View兩方面對系統(tǒng)的結(jié)構(gòu)進(jìn)行了布局,并創(chuàng)建了各自的文 件集合,使它們只承擔(dān)與自身相關(guān)的業(yè)務(wù)職能,從而形成“三權(quán)分立的模式。本節(jié)將 對MVC中最后一部分的Control進(jìn)行闡述,其核心就是PHP代碼,之所以選用Control 一詞就是因為php程序在整個系統(tǒng)

31、中起到了控制器的作用,所有的業(yè)務(wù)邏輯和信息傳遞 都是通過php語言直接或間接實現(xiàn)的。php的業(yè)務(wù)代碼也有相對獨立的存儲空間,筆者 并沒有采用Control _詞而是選取了 Action為該目錄命名,因為動作要比控制更加形象 和直觀的體現(xiàn)出了 php程序在整個項目的動作執(zhí)行效果,總的來說與Model的設(shè)置方 法如出一轍,文件名還是以業(yè)務(wù)為前綴,后綴為Action.class.php,同樣需要在父類中封 裝部分方法和屬性。至此MVC的體系在系統(tǒng)中已經(jīng)完全成型,那么這三者又是如何進(jìn)行聯(lián)系的,上述的 命名方式會有什么特殊含義?單純的數(shù)據(jù)庫操作類和模板文件及業(yè)務(wù)構(gòu)建邏輯是三個 獨立的文件,只有他們是無法

32、進(jìn)行交互的,所以還必須為他們引入一個聯(lián)系紐帶。以 Analyse (分析)功能為例,除了上述的 AnalyseModel.class.php AnalyseActionxlass.php 和Analyse.lpl夕卜,需創(chuàng)建Analyse.php文件,其實我們在實際訪問頁面的時候就是訪問 Analyse.php,不會直接對MVC結(jié)構(gòu)的文件進(jìn)行訪問,但Analyse.php文件中包含了自 動加載的功能,自動加載是利用了 PHP內(nèi)置的autoload。函數(shù),其具體內(nèi)容如圖5-3: fimction autoload ($_className)if (substr($_classHame, -6)=

33、1 Action1)(require ROOT_PATH.f/action/1.$_classMame.1.class.php1;Jelseif (substr($_classltae, -5)=最ModelHrequire ROOTPffTH.$_classMame.class.php1;else require ROOT_PATH./includes/1 . $_classNne. * * class php;圖5.3自動加載函數(shù)具體代碼通過這一方法,系統(tǒng)就會自動加載與前綴業(yè)務(wù)名稱相關(guān)的Model類和Action類, 從而將M和C部分進(jìn)行了連接。此夕卜在Analyse.php中還需要使用全

34、局的smarty對象 $_tpl將Analyse.tpl導(dǎo)入,這樣就實現(xiàn)了 MVC三者之間的信息傳遞,從而形成了一套 標(biāo)準(zhǔn)的系統(tǒng)功能開發(fā)模式。在業(yè)務(wù)實現(xiàn)的過程中難免會經(jīng)常要用到前端的$一加1對象和 數(shù)據(jù)類實例化后相應(yīng)的$_血如對象,因此將這兩個對象以成員屬性的方式存放到父類 Action.php類中,以便于各業(yè)務(wù)子類運用構(gòu)造方法Construct。繼承 父類部分內(nèi)容如下:protected $_tpl;protected $_Model;protected function _construct(&$_tpL&$_Model=null)$this-_tpl=$_tpl;$this-_Model

35、=$_Model;子類構(gòu)造方法如下:public function _construct(&$_tpl) /構(gòu)造方法,初始化parent:_construct($_tpl5new AnalyseModelO); 3面向用戶的核心業(yè)務(wù)的實現(xiàn)在上一節(jié)中對MVC的搭建過程和運行模式予以介紹,可以說MVC結(jié)構(gòu)為所有功 能的實現(xiàn)提供了一個標(biāo)準(zhǔn)的模板,為整個系統(tǒng)構(gòu)建了一個骨架讓開發(fā)人員依此進(jìn)行填充本項目中全部的業(yè)務(wù)邏輯都能夠以這種方式來完成,下面我們就利用該技術(shù)手段開展針對用戶的核心業(yè)務(wù)實現(xiàn)。5.3.1用戶的注冊與登錄每個用戶在系統(tǒng)中應(yīng)有唯一的賬號信息,只有進(jìn)行登錄后才能將用戶的個性化學(xué)習(xí) 數(shù)據(jù)按照相應(yīng)的

36、身份進(jìn)行存儲,進(jìn)而開展個性化的學(xué)習(xí)分析活珈由此可見用戶的注冊、 登錄功能是一切輔助學(xué)習(xí)活動的先決條件,因此本節(jié)將對用戶注冊和登錄功能的實現(xiàn)進(jìn) 行描述.該功能最終實現(xiàn)的狀態(tài)如圖5-4所示:登錄前:會員登錄登錄后:會靛息用戶.名:一一童超您,a岳以習(xí)家到學(xué)習(xí)蒂朋奈綻nikpass *? f$this-ewail , f$this-question*, $this-answer!, NOW(),$this-face,1$this-time1 / $this-state1)u; return $thisAUD($_sql); 圖5-5 UserModel類中的注冊方法在登錄時同樣需要用戶輸入的賬號和密

37、碼信息作為限制條件,并將這些數(shù)據(jù)傳遞至 Model類中,利用checkLoin()函數(shù)在user表中進(jìn)行查詢。如果結(jié)果集存在即表示登錄 成功,接下來執(zhí)行生成相應(yīng)$_SESSION和$_(200時的命令,若結(jié)果集為空則提示用 戶賬號或密碼錯誤。Model類中的方法只是執(zhí)行了相關(guān)數(shù)據(jù)的查詢或增加,結(jié)果怎么樣 并不能在此體現(xiàn)出來,因此我們還需要在Action類中編寫業(yè)務(wù)的邏輯判斷。以注冊環(huán) 節(jié)為例,如果addUser函數(shù)的返回值為空則表明向表中添加數(shù)據(jù)失敗,若返回值存在就 說明寫入的命令執(zhí)行成功。為了提升用戶的操作體驗,無論結(jié)果如何都應(yīng)給予用戶一定 的反饋,使用戶明確自己所處的狀態(tài)。其關(guān)鍵代碼如圖5

38、-6:if ($this-_model-addUser()$_cookie=new Cookie(luser1J$this-_model-userJ0)j$_cookie-setCookie()j$_cookie=new Cookie(face$this-_model-face,0);$_cookie-setCookie();Tool: zaLertLocation(恭喜你,注冊成功、./);else Tool:aLertBack( *很遺憾,注冊失敗);)圖5-6注冊反饋環(huán)節(jié)的代碼示意圖5. 3.2在線答題通過對前期調(diào)研數(shù)據(jù)的分析可以明確學(xué)生對于微練習(xí)的支持度非常高,而且應(yīng)采用 選擇、填空題

39、為主解答題為輔的方案,所以本系統(tǒng)基于此確定了習(xí)題設(shè)置的原則,即每 套試卷都是由五個選擇題和五個填空題及一道解答題組成。當(dāng)用戶登錄成功后就可以進(jìn) 入答題環(huán)節(jié)了,筆者為學(xué)習(xí)者們準(zhǔn)備了兩種模式,一是快速練習(xí)、二是專項練習(xí),這二 者的試卷組成沿用了上述的方式,只不過快速練習(xí)的習(xí)題是從整張習(xí)題表中完全隨機抽 選出來的,而專項練習(xí)是在某一特定知識點的范圍內(nèi)隨機抽選題目,這樣就達(dá)成了綜合 和專項學(xué)習(xí)的效果。在所有的練習(xí)頁面中,選擇題和填空題都以form表單的形式出現(xiàn), 其中選擇題的類型為type=radio填空題為type=text,關(guān)于解答題的填寫運用了 CKeditor 編輯插件。選擇題與填空題共10道

40、,每道題都應(yīng)有自己獨特的Name值,這樣才能在 后臺使用$_POSTrfoHnNamb命令接收到學(xué)習(xí)者填寫的對應(yīng)答案。如果前10道題分布 于10個不同的表單內(nèi)那么獨立的Name值非常容易實現(xiàn),但這樣就會增加后臺Action類中代碼的復(fù)雜程度并且極其冗余,所以筆者將這10道題目放置于同一表單內(nèi),并為 每一道題設(shè)置一個隱藏表單項,其Name值為數(shù)組的形式具體代碼如下:input type=Hhiddenn name=nycn value=n(value-idH / 而 value 值是此題在習(xí)題表中的 id序號。每道題的4個選項他們Name值必須相同且唯一,因此其中也涉及了習(xí)題 id號元素,以A選

41、項的代碼為例:idn value-,value-selection_j/A. value-selection_A 填空題的表單編寫方式與上述思 路基本一致,只是type類型有所改變。解答題使用了 CKeditor編輯器插件,所以 在表單創(chuàng)建時與選擇和填空題不同,CKeditor有固定的表單模式即vtextare id=nTextArealn name=%ontentH class=nckeditorMx/textarea,而且必須采用這種方式 才能正常使用每張試卷的解答題只有1道,只需要給解答題表單賦予一個固定值 的“content”就可以,然后引入插件中的工程文件ckeditorjs就可以完

42、成相關(guān)配置 及啟用了,非常簡便的就能夠?qū)崿F(xiàn)超文本編輯的效果。經(jīng)過以上的表單規(guī)劃后,在Action對象接收時就可以運用$_POSTryc,來獲取 剛剛用戶做答的全部習(xí)題id號,這為后續(xù)的答案呈現(xiàn)、學(xué)習(xí)記錄.學(xué)習(xí)分析起到了 重要的鋪墊作用。學(xué)生的答題環(huán)節(jié)主要是面向各個前端頁面進(jìn)行操作,所以本節(jié)著 重描述了表單的構(gòu)建情況,而且對于正誤判斷、答案呈現(xiàn)和學(xué)習(xí)記錄等功能,都隸 屬于學(xué)習(xí)分析的后臺邏輯業(yè)務(wù),因此會在一下節(jié)介紹。專項練習(xí)列表如圖5.7所示:O快速練習(xí)專項謝練當(dāng)畿狀態(tài)專頊訓(xùn)練集合知識點專項練習(xí)分柝報告視頻詳程知識點樹狀導(dǎo)航圖5-7專項練習(xí)頁面效果圖選擇某一內(nèi)容后,進(jìn)入其具的體習(xí)題頁面如圖5.8所

43、示:當(dāng)前狀態(tài) 集合 集合的盤念集合的概念罟題時間:29拷-11-瞻14:30:00來源:高琴費學(xué)教材第一童點擊重:濟(jì)桀輯:王錚 TAG標(biāo)筌:集合1-小于2的自然數(shù)集用列舉法可以表示為()2.3./A t0, L 2CB. 1GC. 0,1 j5. (1, 2下頁四個集合中,不同于另外三個的是)0),則下列各式正確的是()C A. 3EAieAOC. oeA4,集會A中含有三個元素X 16.若am,則6-aeA,vA. 2定義集會運算.UB=z I z=xy, x eA, y e B),L 2, B- (0. 2 s 則集合好B的唐有元素之和為():B. 2C D. 6調(diào)查某毒的名學(xué)生,音樂爰好

44、者4。人,體育愛好者24人,則兩方面都愛好的人數(shù) 最少是圖5.8習(xí)題頁面效果圖5.3.3學(xué)習(xí)分析和反饋當(dāng)學(xué)習(xí)者完成答題后,除了需要教師人工批復(fù)的解答題外其余的選擇和填空題應(yīng)及 時給予學(xué)習(xí)者作答反饋,告知用戶剛剛的題目作答情況以及正確答案是什么,這樣才能 真正起到促進(jìn)學(xué)習(xí)的作用,也是反饋環(huán)節(jié)的主要任務(wù)吃通過上述講解,我們能夠進(jìn)一 步將反饋任務(wù)進(jìn)行分解,由于所有題目都是隨機生成的,所以要動態(tài)的從數(shù)據(jù)庫中獲取 用戶剛剛所作答題目的各項信息,然后將用戶所的作答結(jié)果傳遞至Action對象中,最 后將正確答案與用戶填寫的內(nèi)容進(jìn)行對比給出反饋評價,在開發(fā)的過程中重點實現(xiàn)這三 個步驟。上一節(jié)中提到了為每一道題

45、匹配一個隱藏的表單項其value值就是此題的id編 號,這樣我們在后臺對應(yīng)業(yè)務(wù)的Action類中就能利用$_POSTformName,來獲取到這 些習(xí)題表的id數(shù)據(jù),但這得到的是一個字符串,所以還需要用implode函數(shù)處理使其 變成數(shù)組,具體代碼如下:$_arr=$_POSITyck$_striiig=implode(”,:$_arr);每個$_皿數(shù)據(jù)組項的值就是id號,所以將此數(shù)組做為限制條件傳遞至習(xí)題的Model對象中, 得到這些習(xí)題的信息為后續(xù)的答案比對做準(zhǔn)備。每道題除了隱藏的表單涉及了習(xí)題 id號之外,還有常規(guī)表單項的name值中也包含了 id號,SPOSTCxxarrtSi得到 的

46、就是用戶對該編號題目作答的結(jié)果,將此信息與從數(shù)據(jù)庫習(xí)題表獲取的數(shù)據(jù)進(jìn)行 匹配,從而得出最終的作答結(jié)果,具體代碼如圖5-9:$ _job j ect=$this - _cxiel-SelectionO ;$ret=TcMl:objarray_tint_id FRfflausjuestionWHERE id I機SELECT DISHIKT questioned m cs_record WERE userthis-yuser1)8; return 限r(nóng)ert:(Hl($_sql);圖5-12獲取知識點數(shù)據(jù)的關(guān)鍵函數(shù)在分析Action類中的關(guān)鍵邏輯循環(huán)代碼如圖5-13所示:For($i=0;$iin

47、t,;$zong$iinf。 =$ARR$ir info* ;Sthis-jKdel-kjJd=$ARR$i (1 id1 ;$zsg$i count *=$this-_jiodel-AnalyzeCourrt()-x 叫航;$zong$i * right * =$this -_odel- AnalyzeRight ( )-r_count;$zcmg$ij=rMind($zong$i right/$zigf$i count1 , 3)*1;if ($zongF Fight5j$zong$i ,rit_analyze,=,不及格亟待強化;if ($zong$i1 right_num1 60SS$

48、zong$i1 rS8)( $zong$i1 right_span1 J=*an class=8blueBt;$zong$i WghOmlyM U 及格還需鞏固七)if ($zong$i,rd曲t_rw*J)($zong$i *i*it_span,=*el-pid=$W$i (* pid1 j$zong$ipid* pid*;$zong$i( parent,=$tiiis-jm)del-getf arentKscledge() * knowldgejpoint; $zong$i *pc* =$this-_model-getParentMuis()-id;else($zong$i arent1

49、無; $zong$iH-pid4R;$zongj$ijrpc*=;$zong$i gain5 jthis-jKdel*getNuffi()-ititle (value-nav_name)寫入 到標(biāo)簽中,此外value.kid為知識點id編號,它作為重要的值寫入到視頻鏈接 的kid參數(shù)之中即:kidn請點擊此處,這樣 course 中的每條數(shù)據(jù)就能夠準(zhǔn)確的與各自的知識點建立起聯(lián)系當(dāng)系統(tǒng)內(nèi)的試卷和導(dǎo)航數(shù)量較 多時一味的數(shù)據(jù)羅列會給用戶的操作體驗帶來負(fù)面影響,所以應(yīng)設(shè)置相關(guān)的篩選功 能,該功能與nav的邏輯非常相似,故在Action類中實例化$_nav=new NavModel。, 通過調(diào)用$_aa

50、v中的查詢方法再結(jié)合Model父類中的Page(分頁方法)實現(xiàn)篩選功能。 該頁面的效果如圖5-15所示:責(zé)夏抉濂練瑟?,嵳{(diào)練分析報咨巍聚漫薰i按霆目 口頂新心益瑟素還泰號1雄其:本等等按替等甫裝秘密基本裙等者敷經(jīng)過交展傾期您運尊和叟含運集疥壽冥的丞數(shù)2陜就遂酸學(xué)中揆迷了戀號鬟會元素之圓-舞賽殊抱雅癱美系i篷舍酸念與畚箓含魁念分寒密封思維壽氛柴嘗檢.鞋象類的反酸4球就慝個集會國葬籍與交疆的舍義=來靠轎其策.相關(guān)卻S區(qū)逾篷如萎功恣的.&盼前裝酸程-令點鱷曲左玄蕙畿方腋皿 br密I IM浚文霆(C) 2014-2017Copyright Q 2014-2017 L的蛔泰g我沖茬索展囊洗學(xué)繇設(shè)濤圖5-

51、15課程列表頁面的呈現(xiàn)當(dāng)我們跳轉(zhuǎn)至video.php頁面時,應(yīng)該如何動態(tài)的加載視頻資源,如何確定此視 頻就是相應(yīng)知識點的課程,這就需要利用我們在前文中提及過的kid這一重要參數(shù), 它是視頻顯示的關(guān)鍵依據(jù)。video.php打開后首先就要獲取$_GETkid,的值,然后 將這個值賦給video業(yè)務(wù)Model類中的$kid屬性,接著調(diào)用Model類中的getUrlQ 方法,其中,$this-kid,作為WHEREid的限制條件,這樣就可以精確的獲取到指定 知識點的url數(shù)據(jù),將此url注入至前端的vembed標(biāo)簽內(nèi)的src屬性中,這樣就實 現(xiàn)了指定知識點視頻的呈現(xiàn)。除了上述的邏輯之外,video頁

52、面還具備另一個重要 功能就是允許學(xué)習(xí)者在視頻下方就課程內(nèi)容進(jìn)行文字交流,文本輸入工具依然采用的是CKeditor插件,并在數(shù)據(jù)庫中添加指定的discuss表用于存儲學(xué)習(xí)者的對話信 息。video中的1級回復(fù)下還可以包含2級子回復(fù),但不支持3級回復(fù),此類應(yīng)用 的思路都大致相同,在discuss中建立pid字段,用于將子回復(fù)綁定到父節(jié)點上,1 級回復(fù)的pid為0, 2級子回復(fù)的pid為上級回復(fù)的id,此id數(shù)據(jù)通過回復(fù)時所點擊 的超鏈接將參數(shù)進(jìn)行傳遞。當(dāng)某1級回復(fù)下包含多條2級回復(fù)時,其所在div層的 高度應(yīng)動態(tài)的進(jìn)行調(diào)整,這里需要使用JQuery中的each。和height。方法,遍歷 clas

53、s=”child”的div層,然后對每一個div的height屬性進(jìn)行測量和修改。最終video 頁面的實現(xiàn)效果如圖5-16:_ _ 茴蚤快連氣習(xí)虧琮罹嫉ex報&視頻謎料|藏自Z :蜂j TAG癱遂與admin00:00H1:07/X圖5.16播放視頻課程、添加文字信息5.3. 5在線投票綜上用于促進(jìn)用戶學(xué)習(xí)的功能已經(jīng)基本建設(shè)完畢,接下來在要前端搭建一個在線投 票的功能,使之與前期的調(diào)查方案相呼應(yīng)。在前期問卷的需求分析中主要調(diào)研了學(xué)生對 于高等數(shù)學(xué)課程的學(xué)習(xí)現(xiàn)狀和態(tài)度、在線學(xué)習(xí)的認(rèn)可程度以及對輔助學(xué)習(xí)系統(tǒng)的期望功 能,但并沒有涉及有關(guān)課程自身的知識內(nèi)容。原因有以下幾方面,首先高等數(shù)學(xué)的教材 或

54、大綱是隨著時間動態(tài)調(diào)整的,單純依靠一次問卷得到的結(jié)果就來確定今后的知識體 系,這樣做是片面的。其次過早的將課程的重難點劃分完成,也不符合形成性評價的原 則。因此本系統(tǒng)在前端首頁中設(shè)置了關(guān)于強化知識點的投票業(yè)務(wù),從而根據(jù)學(xué)生的現(xiàn)狀 和需要有的放矢的進(jìn)行試卷和習(xí)題的設(shè)置。實現(xiàn)的web頁面如圖517所示:調(diào)查投票以下高等凝學(xué)內(nèi)容曾系中,您認(rèn)為哪些知識點較逐學(xué)習(xí)?0集合o睇壁與函快C向皇代舞O無天與連續(xù)導(dǎo)數(shù)L微分常分方程C3不是積分曲蠢及方程G極限重積分投票查看一圖5-17投票選項區(qū)域本在線投票功能采用了多選制的方式,但至少選擇一項才能提交。此外還利創(chuàng)建了 防刷票功能,1個用戶每天只能完成一次投票,這

55、是利用了用戶登錄時的COOKIE過期 機制來實現(xiàn)的。投票的選項也應(yīng)該隨著課程的變化而調(diào)整,因此在數(shù)據(jù)庫中專門為投票 功能建立了投票表(vote),通過對該表的動態(tài)調(diào)整就能夠?qū)崿F(xiàn)對投票項的管理。在開 發(fā)的過程中不能在index.tpl (首頁)文件中以靜態(tài)的表單來呈現(xiàn)投票的條目,而是在頁 面中循環(huán)顯示$vote_item對象的 title 屬性,即input type=ncheckboxn name=Hvoten value=n value-id *7( value-title) 從這句 HTML 代碼中我們可以發(fā)現(xiàn) name 值 為vote數(shù)組,value值分別是各投票項在vote表中的id序

56、號,這樣在Action類中通 a$_POSTvote,就可以得到用戶所選項的id,對傳遞過來的id字符串進(jìn)行處理,并將 其賦值到Model對象所對應(yīng)成員屬性中,然后作為WHER限制條件來改變表中特定記錄 的投票數(shù)(count)字段的值,修改方式為count=count+l即投票數(shù)加L然后在Model 類中創(chuàng)建查詢?nèi)縯itle和count字段的成員方法,在業(yè)務(wù)Action類中都調(diào)用該方法獲 取結(jié)果集,再將這個結(jié)果集以對象的形式注入到前端,為之命名為votejtem這其實 也就是上面提及的$vote_item。最后在cast.php的新頁面中,以表格的方式將投票結(jié) 果對象的title和count

57、屬性聯(lián)立并顯示出來,達(dá)到了投票結(jié)果的展示目的。最終效果如 圖5-18所示:以下高等數(shù)學(xué)內(nèi)容體系中,您認(rèn)為哪些知識點較難學(xué)習(xí)?投票琰目圈示比倒百分比得票數(shù)案含la 峽慝三函密6. 2部1建重代數(shù)如二,技12. 5K2無突與連續(xù)12. 5%2善包溉1酸分0%G京孩分方卷& 25%1不定積分18. 75?&位12. 5%2援隔6. 259;1重積分0%G圖5-18投票結(jié)果查看5.4 CMS后臺系統(tǒng)的實現(xiàn)面向用戶的功能開發(fā)完成后,接下來就要為教師和網(wǎng)站的工作人員建設(shè)相應(yīng)的管理 體系。在前文中提及的資源管理模塊承擔(dān)了這部分的任務(wù),該模塊以CMS系統(tǒng)的形式 存在而且是不可獲取的一部分,因此本章節(jié)著重介紹C

58、MS系統(tǒng)中對網(wǎng)站管理有較大影 響的業(yè)務(wù)開發(fā)環(huán)節(jié)。5.4.1知識點樹狀導(dǎo)航在第二章的理論研究中對認(rèn)知同化理論進(jìn)行了一定的闡述,并且將其作為本研究的 指導(dǎo)思想之一,設(shè)計的過程中對認(rèn)知同化理論的落實體現(xiàn)在設(shè)置相應(yīng)的上下位知識結(jié)構(gòu) 上,如何將的知識點層級展現(xiàn)出來并加以設(shè)置是本節(jié)的研究重點。筆者借鑒了導(dǎo)航的理 念,即一級知識點導(dǎo)航下包含了二級子導(dǎo)航以此類推。通過對不同知識點導(dǎo)航的觸發(fā), 從而加載出相應(yīng)的試卷信息,這樣既將知識點的隸屬關(guān)系進(jìn)行了構(gòu)建,同時也設(shè)置了系 統(tǒng)必備的知識點導(dǎo)航管理可謂一舉兩得。知識點之間的關(guān)系,不應(yīng)由學(xué)生來確定,應(yīng)由 專業(yè)教師或權(quán)威的工作人員負(fù)責(zé),所以知識點樹狀結(jié)構(gòu)需在CMS系統(tǒng)內(nèi)

59、完成布局。在數(shù)據(jù)庫中創(chuàng)建知識點導(dǎo)航表(Nav),注意該表與知識點表是兩張獨立的表,它 主要負(fù)責(zé)導(dǎo)航的設(shè)置。由目前的教材目錄可知,高等數(shù)學(xué)的知識點主要為二層結(jié)構(gòu)。讓 筆者舉例說明,一級知識點導(dǎo)航為導(dǎo)數(shù),其下屬的二級子知識點導(dǎo)航為極值,目前的大 綱中只劃分到二級細(xì)目,并無下屬的第三層內(nèi)容,所以本功能也是基于此設(shè)計了二級結(jié) 構(gòu)。在實現(xiàn)知識點樹狀導(dǎo)航的步驟中,Nav表中的字段起到了決定性的作用,其中以id 和pid (parent id即父id)構(gòu)成了上下位的邏輯關(guān)系,這與之前所提到的pid原理相同。 還以剛才的導(dǎo)數(shù)舉例,假如它的id號是1,導(dǎo)數(shù)應(yīng)用是一級的知識點導(dǎo)航所以沒有下位 知識那么他的pid就

60、是0,假設(shè)極值知識點的id為2,由于它是下屬于導(dǎo)數(shù)的知識點, 所以它的pid值就是導(dǎo)數(shù)的id值也就是1 o通過上述的案例相信大家都已經(jīng)明確了知識 點導(dǎo)航的邏輯形式,接下來就是通過對CMS系統(tǒng)中nav.tpl頁面的操作完成其數(shù)據(jù)表的 處理。在Action類中通過Model對象調(diào)用成員方法,查詢出pid=0的所有導(dǎo)航記錄并得 到返回的結(jié)果集,然后注入前端這樣所有一級知識點導(dǎo)航就呈現(xiàn)出來了,每個一級知識 點導(dǎo)航列表中都有添加子類的鏈接,其具體地址如下:a href=Hnav.php?action=addchild&id=value-id ”增加子類/a,將此知識點的 id 和執(zhí)行的動作都作為鏈接參數(shù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論