重庆麻将的玩法|重庆麻将机厂
熱門標簽:代寫本科論文 寫作發表 工程師論文 代寫一篇論文多少錢
當前位置: 代寫一篇論文多少錢 > 計算機論文 > 在線留學生學習系統的設計與開發

在線留學生學習系統的設計與開發

時間:2019-07-31 15:03作者:曼切
本文導讀:這是一篇關于在線留學生學習系統的設計與開發的文章,本文主要研究實現了一個在線留學生學習系統, 能夠讓留學生自主獲取知識, 在線學習課堂相關知識, 同時也能夠通過課程論壇與老師溝通交流。

  摘    要: 在國家進一步擴大來華留學生規模的大背景下, 各高校如何克服生源質量、師資力量、硬件投入、軟環境建設等方面的不利因素, 迅速提升留學生教育質量, 跟上教育國際化的時代步伐, 已成目前留學生教育中一個重要的工作。留學生在線學習系統目的是為了方便留學生自主學習, 同時輔助任課教師對留學生進行課外教學, 最終實現任課教師、學生及管理員端的登錄驗證、學生選課、在線學習、用戶管理、課程論壇等模塊的相關功能。

  關鍵詞: 在線系統; 留學生; 自主學習;

  2010年7月29日, 《國家中長期教育改革和發展規劃摘要 (2010-2020年) 》正式發布, 綱要對來華留學生教育有如下表述:“進一步擴大外國留學生規模。增加中國政府獎學金數量, 重點資助發展中國家學生, 優化來華留學人員結構。實施來華留學預備教育, 增加高等學校外語授課的學科專業, 不斷提高來華留學教育質量。”[1]同時在保證措施中提到要“實施留學中國計劃, 擴大來華留學生規模”。同年還召開了全國來華留學生工作會議, 發布了《留學中國計劃》[2]。現階段要進一步擴大來華留學生規模, 應該把提升來華留學生教育質量作為重要抓手, 只有質量提高了, 才能吸引更多的留學生, 其規模也才能做大。地方高校對此更應把如何提升留學生教學質量作為吸引更多留學生和擴大自身國際影響力的重要舉措[3,4,5,6]。

  本文主要研究實現了一個在線留學生學習系統, 能夠讓留學生自主獲取知識, 在線學習課堂相關知識, 同時也能夠通過課程論壇與老師溝通交流。任課教師可以在系統上傳視頻和課件, 這些學習資料可以完成對課內知識的補充, 課外知識的延伸, 同時能夠覆蓋到不同基礎的學生, 保證教學進度;另一方面, 課程論壇能夠讓任課教師更全面的了解到留學生的學習情況, 發現學生普遍存在的問題, 及時調整授課計劃。

  一、系統設計

  (一) 系統內容設計

  本系統主要以本校留學生對在線學習系統的需求, 對在線學習系統進行流程分析和業務需求分析, 其中涉及到了三種角色, 分別是任課教師、學生和管理員。將系統主要功能劃分為登錄驗證, 用戶信息管理, 在線學習, 課程論壇四大模塊, 教師、學生和管理員通過權限管理系統來進行不同級別的操作。

  1.管理員通過導入excel文件來導入學生和任課教師信息, 并可以對學生和任課教師信息實現增加、刪除、修改、審查, 也可以添加其他管理員。

  2.管理員需要對任課教師開設的課程和上傳的課件進行審核, 只有通過審核的課程, 學生用戶才能進行選課、作業提交和視頻查看的操作。

  3.用戶登錄“。”通過學號、任課教師號或者管理員賬號進行登錄, 登錄驗證成功后, 服務端會返回令牌, 用戶根據令牌中的角色權限可以進行不同的操作。

  4.打破傳統在課堂上交流討論的模式, 課程論壇讓學生在課堂以外也能獲得和同學老師交流的機會。

  5.通過國際化技術, 一定程度的緩解了留學生教育中文化差異的影響, 方便外國留學生進行自主學習。

在線留學生學習系統的設計與開發

  (二) 系統架構

  系統基于MVC架構模型[7,8,9,10], 采取前后端分離的方式, 包含:前端頁面顯示, 界面跳轉路由, 異步請求控制器, 數據庫服務器。系統架構圖如圖1所示。

  圖1 落千丈系統架構圖
圖1 落千丈系統架構圖

  用戶在頁面上的操作通過瀏覽器發送請求, 控制器接受到請求, 獲取用戶發送的數據, 交給service層進行業務處理, 生成數據模型, 交由控制器, 控制器再將模型交給前端框架進行展示。

  (三) 系統結構設計

  系統由登錄模塊進入系統首頁, 根據權限不同開放課程模塊、后臺管理模塊和課程論壇模塊, 如圖2所示。

  圖2 系統結構圖
圖2 系統結構圖

  各模塊主要功能如下:

  1.系統首頁模塊包括課程展示和推薦課程。課程展示是按課程所處類別來做展示各個課程。推薦課程是后臺管理員從所有課程中選出優秀課程進行推薦。

  2.課程模塊包括學生選課、視頻課程、作業管理、課件下載四個功能。

  學生選課:學生查詢自己感興趣的課程, 報名參加對應課程。

  視頻課程:學生在完成選課以后可以看到教師在對應課程下上傳的視頻。

  作業管理:學生在截止日期之前, 提交老師在課程中所布置的作業。

  課件下載:學生可以下載已選課程的課件。

  3.后臺管理模塊。此模塊的角色只有管理員, 學生和教師沒有后臺管理的權限。

  后臺管理模塊包含用戶信息的導入導出, 課程課件的審核, 課程信息的管理。

  信息導入導出:主要功能是使用excel批量導入師生信息, 將數據庫數據導出成excel文件。

  課程課件審核:對課程, 課件進行審核, 只有審核通過的課程和課件學生才能查看。

  課程信息管理:包括課程管理, 課件管理和視頻管理, 后臺管理員可以實現對課程、課件、視頻的增加、刪除、修改、審查。

  4.課程論壇模塊分為精品置頂版塊和課程交流版塊。精品置頂版塊是由管理員選擇優秀發帖進行制定操作的版塊, 排在所有發帖頂端課內技術跟視頻課程對應的每一門課的論壇版塊。課程交流版塊包括了各類課程的發帖。

  (四) 數據庫設計

  根據對學生、教師和課程以及選課的需求進行全面分析, 設計規劃出了該系統的數據庫結構, 總共包含八張表, 分別是用戶表、課程表、課程附件表、作業表、提交表、選課表、課件表、視頻表。以下對這八張表做詳細介紹。

  1. 用戶表 (user)

  用戶表主要用來存儲用戶信息, 分別是學生、教師、主任。管理員可以編輯用戶, 分配用戶權限。

  2. 課程表 (course)

  課程表主要表示課程信息。當教師添加相對應的課程后, 在對應的地方添加相對應的課程資料, 前臺頁面會展示課程的所有信息以及相關的學習資料, 學生可以打開平臺來進行報名課程, 此表的操作權限是管理員和教師。

  3. 課件表 (courseware)

  課件表主要包含了課件的相關信息。

  4. 附件表 (append_document)

  附件表主要包含了提交作業附件相關的信息。

  5. 作業表 (homework)

  作業表包含了教師布置的課程作業信息。

  6. 提交作業表 (submit_homework)

  提交作業表保存了學生提交作業后的信息。

  7. 選課表 (user_course)

  選課表保存了學生選課后的信息。

  8. 視頻表 (video)

  視頻表保存了視頻有關的信息。

  二、系統實現

  本小節介紹系統具體實現的過程。

  (一) 前后端項目結構

  項目后端采用了較為經典的maven目錄結構, 其中main中存放了Java的源碼 (Java文件夾) 和項目所需的資源文件 (resource文件夾) , 而target文件夾則存放著編譯好的class文件。aspect:包含了日志的切面文件。cahce:存放redis連接池和緩存工具類。common:用于存放通用模塊, 包括常量, enum類, 自定義異常, 過濾器, 全局的異常處理類, 響應處理類和通用工具類。config:包含了一些項目的全局配置類, 包括跨域配置、防XSS攻配置和項目國際化配置。controller:包含了項目控制層的代碼, 用來接收并轉發請求。entity:項目中所有涉及到的實體類, 原則上字段和數據庫表中相同。mapper:數據庫操作類, 用于存放MyBaits映射文件對應的dao層類。service:業務邏輯處理類, 控制層轉發的請求將在這里進行處理, service層完成了dao層取出數據的處理, 連接了數據模型層和控制層。vo:前端業務實體類, 用于保存頁面所需的對象, 剔除了請求所不需要的字段, 增加了一些entity中不存在的、通過計算得出的字段。LearnApplication:SpringBoot應用的入口, 項目的啟動類, main函數會啟動一個springboot內置的Tomcat來作為整個web項目的容器。pom.xml:maven的配置文件, 用了規定該項目所用的第三方包。

  項目前端采用了較為典型的Vue項目的目錄結構。build/config:用來存放所有webpack的配置項。node_modules:主要包括所有node.js需要的第三方依賴。src:前端源碼的存放路徑, 包含了圖標等靜態資源文件, components包含了項目的所有組件, router文件夾內為所有前端路由, App.vue為整個項目模板的入口。一些需要在整個項目中被使用的方法被定義在main.js中。

  (二) 功能實現

  1. 跨域功能及實現

  由于系統整體上使用了前后端分離的開發方式, 前后端在會分別在不同的端口啟動, 而瀏覽器的同源機制, 只有協議、域名和端口號都一致的請求才會被認為是同源, 所以在這里需要解決跨域問題。

  跨域問題有很多成熟的解決方案, 比如使用jsoup, 但是jsoup只能支持get請求, 而get請求在很多場景下存在著安全性問題, 所以該系統采用了HTML5帶來的新的跨域解決方案CORS。CORS是一個萬維網聯盟 (W3C) 所制定的跨域標準, 是“跨域資源共享”的縮寫。在SpringBoot中整合CORS十分方便, 通過@Configuration來創建Cors配置類進行全局性的跨域配置。在buildConfig通過addAllowedOrigin方法設置可以跨越訪問的域, 通過@Bean注解corsFilter過濾器, 該過濾器會自動為請求添加跨越請求頭Access-Control-Allow-Origin來允許相應的請求到達。

  2. 登錄功能及實現

  由于登錄的業務邏輯較為簡單, 即匹配用戶的學號和密碼來給予用戶相應的鑒權, 并保存用戶的登錄狀態來保證用戶訪問的安全性。但是傳統以session保存數據的方法存在缺陷。由于HTTP的無狀態性, HTTP服務器是不知道客戶機發送的這個請求和上一個請求有什么關聯性, 為此引入了session來保存信息, 而傳統session保存于單服務器上, 在分布式和服務器集群環境中客戶機的請求會經常會根據負載來分配到不同的服務器上, 如果session不能共享, 那么單服務器session中保存的用戶信息將毫無意義。所以本項目采用來了基于token的認證方式來區分用戶鑒權并保證訪問的安全性。

  首先, 前端將用戶名和密碼以json的形式請求/login接口, LoginController將會尋找@RequestMapping注解中value為login的方法, 并將請求轉發到該方法, 之后login會調用對應service方法, 將獲取到的數據傳入service中。

  在service中, 首先判斷查找的用戶是否存在, 如果不存在則直接拋出自定義異常OBJECT_FIND_NULL, 如果存在則通過generateToken方法生成token, token使用md5加密。

  然后創建一個UserElement類對象用來進行用戶登錄認證, 這個類保存了用戶名 (學號/工號) userNumber、生成的token和該用戶的角色role (學生、教師、管理員) , 將這個類的信息封裝好之后, 和token一起存入redis緩存以模擬session, 該緩存對象不僅要用來驗證用戶是否登錄還可以獲得當前用戶的信息。所以使用token機制代替session的策略是這樣的, 將用戶名作為鍵, token作為值保存為一個數據, 用來校驗是否登錄, 把token作為鍵, UserElement作為值保存為一個數據, 用于當用戶發送請求的時候根據token獲取UserElement, 然后根據UserElement中的userNumber獲取當前用戶的信息。另外, 在redis中還可以通過設置緩存過期時間來實現自動登錄。

  最后將service將token返回給controller, 然后controller將該對象返回給頁面, 前端通過js將token保存在cookie中, 對于需要驗證的請求 (除了登錄和swagger測試用以外的接口) , 在每個請求的請求頭里加入controller-token, 給后臺傳入token進行身份認證, 每次身份認證都會刷新token有效期。每個controller繼承BaseController, 其中一個根據token獲取當前用戶的方法, 所有的路由都要通過權限驗證才能完成訪問, 至此, 用戶的登錄權限認證基本完成。

  3. 學生端口

  學生端的課程模塊的功能主要包括修改個人信息、學生選課、查詢和觀看教學視頻、下載課件、下載和提交作業等功能。

  學生在完成登錄以后會進入系統首頁, 首頁中會有一些推薦課程的輪播以及精品課程的展示, 如圖3所示。

  圖3 系統首頁圖
圖3 系統首頁圖

  學生在點開課程導航欄以后可以根據課程id, 課程名, 所屬學院等查詢課程列表, 并點擊查看課程詳情, 如圖4所示。

  圖4 課程查詢頁面
圖4 課程查詢頁面

  課程詳情頁如圖5所示, 點擊立即參加即可完成選課, 已經完成選課的課程可以在我的課程頁面查詢到, 同時也可以通過申請課程按鈕在彈出框中進行選課, 如圖6所示。

  圖5 課程詳情頁面
圖5 課程詳情頁面

  圖6 我的課程頁面
圖6 我的課程頁面

  學生在完成選課之后, 通過點擊課程下的視頻進行視頻學習。

  另外, 學生能夠在課程作業的列表里查詢到老師布置的作業, 在作業截止日期之前, 通過上傳頁面提交到靜態資源服務器儲存。

  4. 論壇實現

  論壇可以根據響應課程分成不同的板塊, 教師可以選擇不同的主題查看內容。教師要進入系統必須先在登錄界面進行登錄, 驗證用戶名和密碼成功后進入系統, 然后可以進行發布帖子、回復帖子等相關操作。本系統中設計的論壇能夠為師生提供一個交流對話的平臺, 促進師生共同學習、共同進步。

  圖7 論壇實現界面
圖7 論壇實現界面

  5. 網站國際化

  對于軟件方向來說, 系統的國際化是指在開發系統時使網站不再局限于某一國家的某一地區, 使網站的語言隨著地點的變化可以進行切換以適應當地需求。當系統在不同國家不同地區使用的時候, 系統不必進行任何重構, 因為它在開發時其功能就已經可以適應不同地區的運行需求, 不必再開發一套系統, 大大降低了開發的成本。開發這樣的系統的過程, 就稱為國際化。“國際化”的本質把所有用于界面顯示的字符串全部提取出來, 做成語言文件、每種語言一份文件, 運行的時候按照需要的語言訪問對應的語言文件獲取字符串來顯示。

  圖8 國際化界面
圖8 國際化界面

  三、結束語

  綜上所述, 留學生在線學習系統完全能夠為留學生和任課老師提供一個綜合性教學平臺, 實現留學生和教師可以在任何時間、任何地點參與教學活動, 留學生觀看課程視頻既可以鞏固課堂所學, 也能彌補語言類學習的不足, 國際化的學習系統讓他們能夠更快更好地接受知識。而系統后臺也為學校統一管理留學生教學提供了方便快捷的渠道, 為管理留學生信息提供了支持, 有利于學校對留學生學習的教學計劃安排。

  參考文獻

  [1] 中華人民共和國教育部.國家中長期教育改革和發展規劃綱要 (2010-2020年) [DB/OL].http://old.moe.gov.cn/publicfiles/business/htmlfiles/moe/info_list/201407/xxgk_171904.html
  [2] 中華人民共和國教育部.留學中國計劃[DB/OL].http://www.gov.cn/zwgk/2010-09/28/content_1711971.html
  [3]文雯, 陳麗, 白羽, 等.北京地區來華留學生就讀經驗和滿意度的國際比較研究[J].北京社會科學, 2013 (2)
  [4]郭秀晶.北京高校留學生教育發展的限制性因素調查報告[J].中國高教研究, 2008 (7) :48-50.
  [5]謝永飛, 劉衍軍.高校來華留學生的教育滿意度測評——以江西省為例[J].現代教育管理, 2010 (6) :57-59.
  [6]王永秀.來華留學生教學質量的問題與對策[J].現代教育論叢, 2013 (3) :73-77.
  [7]彭霞, 朱萍.MVC模式高校科研管理平臺構建方案[J].計算機技術與發展, 2013 (4) :249-253.
  [8]仝茵.基于ASP.NETMVC模式的軟件開發架構的研究與探討[J].中國電子科學研究院學報, 2016 (6) :599-605.
  [9]司飆.MVC模式下的考試系統建模研究[J].計算機科學, 2013 (6A) :403-406.
  [10]任廣震, 侯進, 王獻.MVC模式在B/S結構政務系統的應用研究[J].計算機應用與軟件, 2014 (8) :54-58.

聯系我們
范文范例
網站地圖 | 網站介紹 | 聯系我們 | 服務承諾| 服務報價| 論文要求 | 期刊發表 | 服務流程
重庆麻将的玩法 四川快乐12开奖一定牛 高频彩登录 最火真钱棋盘捕鱼直播 彩38彩票苹果 浙江十一选五守号推荐 斯诺克在线直播 极速时时彩开奖记录 我做家务还得赚钱 黑龙江36选7周即开奖结果 湖南幸运赛车破解版