謝建華 蘇嚴
摘要:在大多數(shù)高校,查詢課程信息和考試信息必須通過校園網(wǎng)登錄到教務系統(tǒng)進行查詢,在空間上對用戶需求進行了束縛,另外,實驗信息無法在教務系統(tǒng)上查詢到,為此設計一款基于服務大學生的咯咚課表小程序,只要登錄到小程序綁定或輸入班級即可獲得信息,可以提供用戶對實驗信息進行編輯的功能,顯示課程信息時,一并將用戶的實驗信息進行顯示,除此外,該小程序還可以提供考試信息查詢與顯示。利用PHP技術實現(xiàn)課程或考試信息的上傳與管理,前臺通過基于微信小程序平臺進行信息查看和數(shù)據(jù)分享,前后臺通過JSON數(shù)據(jù)交互。經(jīng)過測試表明,該系統(tǒng)可以有效地滿足基于服務大學生的對于課表信息等的查詢并顯示的需求。
關鍵詞:服務學生;課表;PHP;小程序;JSON數(shù)據(jù)
中圖分類號:TP311? ? ? 文獻標識碼:A? ? ? 文章編號:1009-3044(2019)02-0068-03
服務大學生是為大學生提供更多更好更方便的服務,服務需要從時間或空間上減少傳統(tǒng)方式對大學生的束縛,提供大學生一個跨時間空間的課表查詢方式,是服務大學生的行動落實。傳統(tǒng)的查詢課表,在登錄學校內網(wǎng)后才能夠獲取整個學期的課表和考試信息,但卻不能夠編輯實驗信息,所以在時間和空間上給大學生一定的束縛。而咯咚課表小程序旨在為在校大學生提供一個方便查詢課表并編輯,編輯保存實驗信息以及查詢考試信息的平臺,旨在為在校大學生提供更方便快捷的服務。支持用戶不再受時間空間限制的即可查閱到對應的信息。該小程序為用戶提供了解課程信息,考試信息,實驗信息的渠道,針對在校大學生,咯咚課表小程序可以作為一個方便的工具方便用戶了解自己想要的關于課表的信息。該小程序具有一定的實用價值,其針對面較廣泛,不僅僅是傳統(tǒng)意義上的課表,使用的用戶對象為高校大學生,通過為用戶提供課程信息,方便用戶獲取課程信息來為用戶做出更好的安排提供保障。
1 系統(tǒng)功能結構的設計
1.1服務端系統(tǒng)功能
如圖1所示后臺具有如下功能:
1)建立課程信息及考試信息表格上傳界面;
2)能夠進行上傳的數(shù)據(jù)進行審核和操作數(shù)據(jù)的處理,一定時期后可以將過期信息刪除;
3)平臺可以授權上傳者,禁止權限等。
1.2手機端的主要功能介紹
如圖2所示手機端具有如下功能:
1)用戶在登錄小程序后選擇自己的班級進行綁定,綁定后即可看到該班級當前周的課程信息或查看別班課程信息;用戶可以編輯自己的課程信息,添加實驗課程到小程序即可將實驗信息進行顯示;
2)用戶可以查看自己的班級的考試信息,并支持用戶對自己的考試信息進行修改或刪除;
3)在用戶個人模塊可以對已綁定的學校班級進行修改或者分享自己的課表給同學,即數(shù)據(jù)共享。
2系統(tǒng)實現(xiàn)的關鍵技術
2.1 表格數(shù)據(jù)過濾處理
由于基于服務大學生的咯咚課表小程序是對接在校學生課表信息的,所以課程和考試信息的來源是教務處Excel表格,當有幾千數(shù)據(jù)的表格傳到后臺時,后臺必須過濾掉一些不重要的信息并且拆分或組合原有的信息將其作為不同的數(shù)據(jù)或屬性存入數(shù)據(jù)庫,為前后臺數(shù)據(jù)交互奠定基礎。例如將表格中某一單元格的信息通過字符串處理技術將其拆分為幾條數(shù)據(jù),對應著數(shù)據(jù)庫中的幾條記錄,最大化的使存儲在數(shù)據(jù)庫中的信息達到最好的可操作性,從而保證了前后數(shù)據(jù)交互的可靠性。具體如圖3所示。
2.2 數(shù)據(jù)的準確性
數(shù)據(jù)的準確性一方面即呈現(xiàn)的數(shù)據(jù)是可以準確到個人的,在前期,依靠的是用戶綁定班級之后呈現(xiàn)該班級的課程信息,當后期用戶自己編輯實驗信息進行存儲時,必須保證用戶編輯的實驗信息精確到用戶本身,即操作課表時,以用戶為單位,每個用戶對應的課表在操作之后都是不一樣的,系統(tǒng)應該要能夠有相應的機制,將用戶編輯后的信息存儲并顯示。另外一方面,系統(tǒng)支持用戶在已綁定班級情況下進入首頁后查看到其他班級的信息,所以此時數(shù)據(jù)的準確性即體現(xiàn)在能夠查看該班級的課程信息,系統(tǒng)支持用戶按周次進行查看,所以前后傳遞數(shù)據(jù)以及數(shù)據(jù)處理之后的呈現(xiàn),都為數(shù)據(jù)的準確性,這樣,系統(tǒng)可以給用戶以最好的用戶體驗。具體如圖4所示:
2.3 用戶緩存獲取數(shù)據(jù)縮短響應時間
對于基于服務大學生的咯咚課表小程序而言,當用戶提出訪問請求,系統(tǒng)要立馬做出響應返回數(shù)據(jù),這樣用戶的體驗會很好。為了縮短響應時間要進行一些性能優(yōu)化。當用戶有瀏覽的歷史記錄,并且手機的緩存沒有被清理,若再次訪問,則直接從本地緩存中獲取數(shù)據(jù),減少響應時間,若沒有則從最近的服務器獲取對應的數(shù)據(jù),沒有再從后臺獲取,避免了什么數(shù)據(jù)都是原始數(shù)據(jù)后臺進行獲得,從緩存中加載數(shù)據(jù)能使響應時間大大縮短。具體如圖5所示:
3系統(tǒng)界面設計
基于服務大學生的咯咚課表小程序:是一款跨時間空間為學生提供課程信息和考試信息的小程序,并且可以實現(xiàn)用戶操作已有的課程或考試數(shù)據(jù),生成專屬課表,使得用戶隨時能查看到自己的課程或考試信息。
1)資源模塊:資源模塊是為了使得用戶能夠很輕松地獲取到信息,資源模塊下有查看班級課程信息,考試信息,實驗信息以及按班級或按周次進行課程查詢。
2)修改模塊:修改模塊主要為生成用戶專屬課表,當用戶操作實驗信息存儲時,能夠響應用戶的修改并將數(shù)據(jù)庫中的數(shù)據(jù)同步更新。
3)個人模塊:主要加載用戶所綁定的班級以及分享推薦,以供用戶進行修改綁定和分享課表給他人。
4小結
本系統(tǒng)經(jīng)過測試,各個功能模塊運行都很穩(wěn)定。小程序能夠方便地建立在微信平臺上,并且有微信用戶作為基礎,省去傳統(tǒng)的注冊登錄的麻煩,最簡潔的將用戶所需要信息呈現(xiàn),使在校大學生能夠輕松獲取并修改已有的課程或傲視信息,實驗信息的加入,更是將大學生從記憶眾多實驗課當中解放,只需要編輯保存,就可以生成專屬課表,再也無需為查閱課程而煩惱。此小程序掙脫了傳統(tǒng)方式下獲取課程信息的束縛,使每一份課程信息更有效的傳遞給用戶。
參考文獻:
[1] 高洪濤.從零開始學習微信小程序開發(fā)[M].北京.電子工業(yè)出版社,2017:1-288
[2] 嚴蔚敏,吳偉民.數(shù)據(jù)結構(C語言版)[M]. 北京:清華大學出版社,2008:94-128.
[3] 王珊,薩師煊.數(shù)據(jù)庫系統(tǒng)概論[M].5版.北京:高等教育出版社,2014:130-185.
[4] Anany Levitin.算法設計與分析基礎[M]. 潘彥,譯.3版.北京:清華大學出版社 ,2015.
[5] Matt Zandstra.深入PHP面向對象、模式與實踐[M].北京:人民郵電出版社,2011:80-120.
[6] Gilmore Jason W.PHP 與 MySQL 程序設計[M].4版. 北京:人民郵電出版社,2011:1-189