高敏
【摘要】? ? 在網絡時代發(fā)展計算機教育勢在必行。而網站作為信息傳播的載體,其應用開發(fā)不可或缺。本網站系統(tǒng)基于Python語言,該系統(tǒng)支持用戶和管理員進行一系列與計算機等級考試相關的操作,基本滿足了系統(tǒng)的設計要求。
【關鍵詞】? ? Python? ? web開發(fā)? ? 查詢系統(tǒng)
一、引言
1.1課題背景
在科研剛開始時,發(fā)展是相對比較慢的,后來人們發(fā)明了計算機這種工具,與此同時互聯(lián)網的快速發(fā)展也為整個科技行業(yè)增添了一份助力?;ヂ?lián)網最初只是將幾臺計算機進行連接,搭建一個通訊網絡,進行簡單的信息傳送。到今天互聯(lián)網應用已涉及各個方面,將一切都放于網絡上也是未來的發(fā)展方向,同時現(xiàn)在很多年輕人的工作與生活也與網絡息息相關。 對于計算機領域的開發(fā)語言Python,它的誕生歷史比Web還要早,具有上百種Web開發(fā)框架,有很多成熟的模板技術,因為簡單易學的特點,使得開發(fā)效率很高,非常適合用來做Web開發(fā)[1]。
1.2課題研究意義
在計算機應用方面,比較常用的是信息查詢和管理。而對于計算機等級考試報名狀態(tài)的查詢系統(tǒng)來說,查詢的對象包括考生注冊、報名和成績等,其功能則包括管理員對考生個人信息和成績的導入導出操作。但這些信息是會發(fā)生改變的,所以將計算機應用于完成考試信息查詢和管理的方面,是適應社會發(fā)展需求以及助力信息的查詢管理不斷科科學規(guī)范的必要條件[2]。然而一般信息的查詢管理工作既繁雜又不允許出錯,所以引入計算機技術來進行查詢管理工作,不僅能夠保證信息存儲查詢的正確率,免除人工失誤,并且還可以利用計算機對信息進行處理。
本次設計實現(xiàn)的計算機等級考試查詢系統(tǒng)能夠為想要進行計算機等級考試的用戶提供簡單的報名操作以及快捷的成績查詢。而管理員在進行登錄授權后可以使用計算機管理已注冊和已報名計算機等級考試的用戶信息,另外在用戶無法進行報名相關操作或者無法自助查詢成績時,管理員能幫助用戶獲取所需信息,這些都能夠為提高信息管理的效率提供很大助力。因此,只有建立起高效的信息查詢管理系統(tǒng),才能真正讓信息傳遞高效率。
二、系統(tǒng)簡介
2.1系統(tǒng)架構
本次查詢系統(tǒng)是基于B/S結構。B/S結構相對于C/S結構來說,需要進行系統(tǒng)維護的工作量大大減少。由于B/S結構的應用,系統(tǒng)只需運行在擁有瀏覽器的客戶端就可以,在客戶端運行系統(tǒng)就像在設備上瀏覽網頁一樣,這對現(xiàn)在越來越多的移動端用戶來說會更合適,能提高用戶體驗,得到最大限度的便捷與舒適感。B/S結構對平臺的依賴性小,可以在多個不同的操作系統(tǒng)上運行[3]。
2.2功能模塊
根據(jù)需求分析確定了系統(tǒng)要實現(xiàn)的功能,以及對應的開發(fā)平臺。主要包括用戶對計算機等級考試的一般性需求。具體而言,該計算機等級考試查詢系統(tǒng)的就是要實現(xiàn)注冊,登錄,報名,成績查詢等功能。用戶功能模塊有用戶注冊模塊、登陸模塊、考試報名模塊、成績查詢模塊以及打印服務模塊,管理員模塊包括成績查詢模塊、成績導入、導出模塊等。另外為了帶給用戶更好的體驗,將系統(tǒng)封裝成web app,供用戶能在手機端使用,使的服務便攜化。
以用戶模塊為例,除了簡單的注冊登陸操作外的考試報名模塊和打印服務模塊??荚噲竺K:選擇科目進行報名。如果已報名,則報考相同科目會提示重復報名,如報考的各科目時間沖突,則同樣提示時間沖突,不予報考;打印服務模塊:本系統(tǒng)提供準考證和成績證書打印服務。當用戶報考繳費成功,可在考前一周內,登錄系統(tǒng)進行準考證下載打印,若未報考繳費或者未在規(guī)定時間段內要求下載打印,則拒絕提供該服務;當用戶獲取到合格成績后,可以選擇證書下載打印服務,若沒有報考或者成績不合格,則沒有證書打印資格。
三、相關技術及可行性分析
3.1關鍵技術
1. 開發(fā)語言
Python具有豐富且強大的庫,它最大的優(yōu)點就是能夠讓新手很順利的從python學習過渡到實踐。因為它能將用其他語言制作的各種模塊進行聯(lián)結,所以這對于學習過一些如Java,C等計算機語言,卻是Python新手來說是一個低門檻低成本的學習。Python編程應用最常見的一種情形就是,先使用Python快速地生成原型,然后用更合適的語言對其中有要求的部分進行改寫,而后封裝,非常適合做一些簡單的短時間的小程序系統(tǒng)開發(fā)。
2. 開發(fā)平臺
(1)windows+pycharm(python開發(fā)工具)
在進行該系統(tǒng)的開發(fā)時,選擇的開發(fā)工具是一種Python語言編譯器--PyCharm。它除了支持django框架外,還支持Flask框架、GAE以及Web2Py等模式,Pycharm在編寫過程中,會對格式類型錯誤給出提示與可靠的解決方案,這樣可以進行快速高效的修改,大大縮短工期;另外在刪除一些變量文件后,整個程序中的相關代碼也會做出相應的變化,這是自動的,但這一點是優(yōu)點也是缺點[4]。本次采用的Django是一個基于MVC構造的框架,其主要組成是模型(Model)、模板(Template)和視圖(Views),稱為 MTV模式[5]。但是在Django中,控制器在其中的作用并不大,更多的是template。
(2)android+Android studio(app開發(fā)工具)
本系統(tǒng)是基于Python的信息查詢管理系統(tǒng),屬于Web網站開發(fā),在完成系統(tǒng)后需要將web網站封裝成web app,在安卓手機上使用。所以在app開發(fā)工具中選用了Android studio。它是一款功能很強大的app開發(fā)平臺,其中也有很多工程開發(fā)需要的安裝包,如sdk。該軟件在第一次使用時需要注意相關配置,并且需要在成功安裝jdk的基礎上進行使用。
2. 開發(fā)平臺
本次關于數(shù)據(jù)使用的是django框架自帶的sqlite3數(shù)據(jù)庫組件,整個編程過程中,幾乎沒有SQL語句,大大減少了用在數(shù)據(jù)庫的學習與使用上的時間與精力。要載入sqlite3數(shù)據(jù)庫,可以通過cmd命令先后輸入創(chuàng)建數(shù)據(jù)庫,啟動數(shù)據(jù)庫等命令也可以在Python開發(fā)軟件pycharm中通過命令進行同步數(shù)據(jù)庫[7]。
3.2系統(tǒng)可行性分析
1. 經濟可行性
本系統(tǒng)屬于web開發(fā),一切所需資源都能在網絡上獲取。如使用的開發(fā)平臺,django框架,還有部分應用工具。除去人力輸出,成本基本不計。網絡化的資源管理大大提高了信息查詢的效率,使之為社會創(chuàng)造了更大價值。信息利用率的提高,全面提升了信息服務的管理能力,從而適應信息時代的網絡化管理要求。
2. 技術可行性
本次使用的開發(fā)語言python與開發(fā)平臺pycharm和android stdio穩(wěn)定高效,各項技術成熟。能夠支持系統(tǒng)開發(fā),實現(xiàn)需求分析中提及的功能并且允許用戶或者管理員進行跨平臺使用。
3. 結構可行性
本次設計的基于Python的信息查詢管理系統(tǒng)采用了B/S結構(Browser/Server瀏覽器/服務器結構),是隨著時間的推移,Internet技術的不斷發(fā)展,C/S結構的基礎上進行一些改動和完善后得到的一種結構?;赑ython的信息查詢管理系統(tǒng)是當前處在最前衛(wèi)的信息查詢管理系統(tǒng),系統(tǒng)結構設置合理,在企業(yè)單位工作中所能用到的功能,都以在系統(tǒng)結構中展示,并且該系統(tǒng)結構簡單明了,方便操作[6]。
4. 操作可行性
基于Windows的圖形用戶界面,也就是大家熟悉的網站界面,不需要對數(shù)據(jù)庫進行深入的了解就可以進行使用。而在使用過程中,用戶只需操作鼠標就可以完成相應的計算機等級考試信息查詢的相關操作,還有一小部分的數(shù)據(jù)輸入是由后臺管理員完成的。對于初次使用此系統(tǒng)的用戶來說,不必經過復雜的學習就可以掌握本系統(tǒng)的操作流程。
三、 結語
總的來說,基于Python的信息查詢系統(tǒng)會具有一個非常好的前景,隨著系統(tǒng)發(fā)展平臺的延伸,系統(tǒng)的使用會更加的廣泛。另外該系統(tǒng)還可以進行一些改進,比如說使用其他數(shù)據(jù)庫進行搭建,具有更強大的功能。本系統(tǒng)還可以發(fā)展跨平臺的使用,如開發(fā)基于CS架構的手機客戶端,從而使得系統(tǒng)的使用更加的方便。除此之外,系統(tǒng)還有一些需要深入研究解決的問題,比如證書直郵地址的自動獲取。在查詢到成績獲得證書資格后,能夠立即彈出提示框進行地址填寫,并同步給快遞公司。
參? 考? 文? 獻
[1] 董偉明. Python Web開發(fā)實戰(zhàn)[M]. 北京:電子工業(yè)出版社,2016
[2] 曾浩. 基于Python的Web開發(fā)框架研究[J]. 廣西輕工業(yè). 2011(08)
[3] 徐宜生.Android群英傳[M].北京: 電子工業(yè)出版社,2017
[4] Luciano,Ramalho.Fluent Python[M].南京:東南大學出版社,2017
[5] 郭霖.第一行代碼 Android[M].北京:人民郵電出版社, 2016
[6] 高洪波.HTML+CSS網站開發(fā)兵書[M].北京:電子工業(yè)出版社,20013
[7] 李勇.王文強. Python Web開發(fā)學習實錄[M].北京:清華大學出版社,2011