艾小芹
(陜西職業(yè)技術學院陜西西安710038)
基于Android的英語學習系統(tǒng)設計與實現(xiàn)
艾小芹
(陜西職業(yè)技術學院陜西西安710038)
為了能讓用戶在便攜設備下隨時隨地的進行英語的學習,本文提出了一種基于Android的英語學習系統(tǒng)。本文首先討論了移動終端的發(fā)展趨勢和Android的優(yōu)勢所在,然后闡述了Android的系統(tǒng)平臺特點和Android的開發(fā)方式、通信和數(shù)據(jù)庫的建立,在此基礎上分析了基于Android的英語學習系統(tǒng)的需求分析和總體設計。針對需求分析對該系統(tǒng)進行了模塊化的設計,給出了用戶管理、在線考試、在線查詞等關鍵模塊的具體設計和實現(xiàn)的方式,實踐表明,基于Android的英語學習系統(tǒng)能有效的促進用戶的學習。
Android;英語學習系統(tǒng);分析與設計;模塊化
隨著移動技術和智能手機的發(fā)展和普及,在21世紀的今天,移動終端已經(jīng)具備了與Web系統(tǒng)一樣的功能,能夠實現(xiàn)在PC平臺上進行的大多數(shù)的操作,并且擁有自己獨有的特點。移動終端比傳統(tǒng)的互聯(lián)網(wǎng)有更廣泛的自由性,能夠隨時隨地在線,由于設備的便攜性,便于我們隨身攜帶,現(xiàn)在移動終端正在慢慢改變我們的生活和學習的習慣[1]。從整體上看,移動設備具有軟硬件發(fā)展的最新的特征:1)開放性,移動設備提供了足夠的軟件和硬件接口對外開放,豐富了整個軟件和硬件的市場。2)可擴充性,移動設備可以構建或者替換新的硬件模塊來實現(xiàn)不同的功能。3)統(tǒng)一標準,現(xiàn)在的移動設備都支持無線網(wǎng)絡的重要標準,有利于設備的普及,加快行業(yè)的發(fā)展。移動平臺不僅具有硬件上面的優(yōu)勢,在操作系統(tǒng)上面也是發(fā)展迅速,從最開始的UNIX被提出應用于移動操作市場,到今天的Android、IOS、WINDOWS等的激烈競爭,移動端的操作系統(tǒng)僅僅幾年就發(fā)展成一個成熟的行業(yè)。在移動操作系統(tǒng)中,發(fā)展最快最為矚目的就是谷歌推出的Android操作系統(tǒng),一方面是因為它相比于PALM和Symbian等具有友好的用戶界面和眾多的APP,另一方面則是因為作為開源系統(tǒng)它本身更容易被手機廠商采用以推出各個價位的移動終端,相比于價格高高在上的僅授權給蘋果自己硬件使用的IOS,Android完全占據(jù)了中端和低端的市場,更具有廣泛的用戶群[2]。因此本文在移動終端提出的英語學習系統(tǒng)的設計和實現(xiàn)基于Android開發(fā)。
1.1Android平臺系統(tǒng)特點
Android一詞本來指機器人,是一款基于Linux內核的移動平臺操作系統(tǒng),由開放手機聯(lián)盟推出。Android系統(tǒng)由四部分組成,最上層是應用層,直接面對用戶;第二層是開發(fā)者可調用的用語界面顯示的組件;第三層是中間層,用以屏蔽底層的操作系統(tǒng);第四層是Linux操作系統(tǒng)的內核。Android具有完整的API和開源性?;贏ndroid的移動終端具有開放性、應用程序無界限、平等性、網(wǎng)絡無障礙、并行運行等五個方面的特點。1)開放性,Android的開放性是谷歌建立的移動電話軟件平臺標準化的結果,平臺的相對開放讓Android占據(jù)了龍頭的地位。2)應用程序無界限,Android移動終端既可以訪問本地的內容,也可以訪問物聯(lián)網(wǎng)中的資源,同時自己也可以提供資源給其他的對等的移動終端[3]。3)平等性,對于基于Android操作系統(tǒng)的移動終端來說,所有的應用程序都是平等的,不管是系統(tǒng)自帶還是用戶后來安裝的APP。4)網(wǎng)絡無障礙,Android操作系統(tǒng)提供了豐富的網(wǎng)絡訪問API。5)并行運行,Android可以同時讓多個程序在后臺運行,由操作系統(tǒng)管理這些程序的先后順序[4]。
1.2Android的開發(fā)
Android是一個開放的系統(tǒng),根據(jù)程序人員開發(fā)功能的不同,可以分為移植開發(fā)移動電話系統(tǒng)、Android系統(tǒng)開發(fā)和Android應用程序開發(fā)3個方向。移植開發(fā)移動電話系統(tǒng)又叫Android移植開發(fā),圖1是Android移植開發(fā)的架構。
圖1Android移植開發(fā)的架構
Android的系統(tǒng)開發(fā)是為了使系統(tǒng)能滿足某一個功能時提供系統(tǒng)調用的接口而進行的開發(fā),Android的系統(tǒng)開發(fā)一般分為5個步驟:增加C或者C++本地庫、定義Java層所需要的系統(tǒng)API、將所需要的代碼封裝成JNI、把JNI和Java類結合起來、提供應用程序所需要的Java類[5]。
Android的應用開發(fā)是Android的開發(fā)中最重要的一環(huán),也是開發(fā)最多的一項,由于應用處于整個Android系統(tǒng)的最上層,所有Android的應用開發(fā)既可以對某個特定的硬件系統(tǒng)進行開發(fā),也可以在Linux或者WINDOWS下基于某個模擬器進行開發(fā),圖2是Android應用程序開發(fā)的結構圖[6]。
1.3Android的網(wǎng)絡通信與數(shù)據(jù)庫
Android在網(wǎng)絡通信方面非常優(yōu)秀,既可以使用自帶的瀏覽器來訪問網(wǎng)頁,也可以通過集成的電子郵件程序來收取郵件。Android系統(tǒng)提供了Android網(wǎng)絡接口、Apache接口和標準的Java接口等3種網(wǎng)絡接口。此外,還提供了Http Client接口、socket接口、WiFi接收、URL接口等眾多的網(wǎng)絡連接技術,基于Android的網(wǎng)絡編程非常方便[7]。
Android的數(shù)據(jù)庫技術提供了4種存儲技術,分別是Shared Preferences、Files、SQLite以及Network,相比于其他系統(tǒng),擁有更豐富的存儲技術,應用開發(fā)者可以根據(jù)應用程序自身的特點,選擇合適的存儲技術保存數(shù)據(jù)[8]。
圖2Android應用程序開發(fā)的結構圖
2.1需求分析
需求分析一般包括3個方面:功能性需求、非功能性需求和其他必要的約束。功能性需求是一個硬性的標準,即滿足客戶提出的合理要求,完成系統(tǒng)功能;非功能性是系統(tǒng)分析師在進行需求分析時必須要考慮的,比如系統(tǒng)的可靠性、穩(wěn)定性、可拓展性的需求;其他的一些必要的約束包括法律的約束、行業(yè)的約束等必要的要求。由于基于Android的英語學習系統(tǒng)采用C/S架構比較合理,所以該軟件有多個功能模塊,可以按照前臺和后臺來進行劃分[9]。同時在客戶端,充分運用Android系統(tǒng)的UI界面,在服務器端,使用Tomcat搭建服務器,數(shù)據(jù)庫采用MySQL。本項目分為前臺和后臺兩部門,前臺部分包括用戶注冊、用戶登錄、在線考試、在線查詞、在線翻譯、視頻學習等模塊。后臺系統(tǒng)包括相關資料管理、用戶管理、系統(tǒng)管理等模塊[10]。
2.2總體設計
系統(tǒng)的總體設計主要給出系統(tǒng)的總體結構圖、系統(tǒng)的技術架構圖、系統(tǒng)的前臺和后臺流程圖以及數(shù)據(jù)字典等內容。
系統(tǒng)的總體結構圖給出了整個設計的完整流程,圖4是本系統(tǒng)的總體結構圖。
系統(tǒng)的技術構架圖給出了整個設計的技術構架,由于基于Android的英語學習系統(tǒng)采用MVC分層模式,將模型、試圖、控制器各層單獨設計實現(xiàn),各層之間也有聯(lián)系,這樣的設計便于代碼的重用和維護,具有良好的可讀性、可重用性、可維護性、和可拓展性。在視圖層,采用Android提供的UI界面進行設計,在控制層采用Servlet技術,訪問數(shù)據(jù)庫采用JDBC驅動方式[11]。圖4是基于Android的英語學習系統(tǒng)的技術構架圖。
系統(tǒng)的主要業(yè)務流程圖主要從用戶和管理員的區(qū)分上去考慮。普通用戶通過前臺登錄基于基于Android的英語學習系統(tǒng)操作系統(tǒng)給予的功能,管理員通過后臺登錄對資源進行整合和管理[12]。
圖3 軟件需求的組成
圖4 基于Android的英語學習系統(tǒng)的技術構架圖
數(shù)據(jù)字典是對系統(tǒng)涉及到的實體進行文字描述而構建的,包括用戶信息字典、管理員信息字典、模塊分類字典、資料分類字典等各種數(shù)據(jù)庫信息。
3.1用戶管理的設計與實現(xiàn)
用戶管理主要包括普通用戶或者會員用戶的注冊、登錄、修改個人信息、修改密碼、管理員登錄、管理員查詢、管理員修改用戶等功能。根據(jù)前臺流程圖和用戶的用例圖,可以得到用戶進入系統(tǒng)的順序圖[13]。同樣的,管理員進入系統(tǒng)的過程可以用管理員管理順序圖來表示,圖5是管理員管理順序圖。
圖5 管理員管理順序圖
用戶管理的實現(xiàn)涉及到的部分是在數(shù)據(jù)庫中建立相關的數(shù)據(jù)表,以及用戶的注冊和登錄界面的設計,包括系統(tǒng)的主界面、用戶管理模塊的構成、數(shù)據(jù)庫的設計等多項內容。系統(tǒng)登錄界面的設計涉及到的元素包括用戶名、密碼的輸入、登錄注冊、尋密等幾個按鈕的設計。登錄界面在系統(tǒng)上采用垂直線性布局,用戶名輸入框、密碼輸入框等組合采用橫向線性布局。圖6是注冊界面的效果圖。
3.2在線考試的設計與實現(xiàn)
在線考試系統(tǒng)是本系統(tǒng)的重要模塊,英語等級考試和GRE、托福、雅思等專業(yè)考試在考前的鞏固和練習可以使用本模塊完成,用戶登錄后,可以選擇相應的模塊學習。在線考試模塊涉及到的子模塊比較多,但大多數(shù)都是數(shù)據(jù)的調用和判別,順序圖和數(shù)據(jù)庫的設計比較簡單,不在單獨列述。在線考試需要涉及到聽力模塊的設計與實現(xiàn),需要涉及到音樂播放器的調用和實現(xiàn),音樂播放器的4個功能正在播放、暫停、回復播放、已停止需要以調用的形式插入負責音樂播放器的代碼。圖7是普通選擇題的設計效果圖。
圖6 注冊界面的效果圖
圖7 普通選擇題的設計效果圖
3.3在線查詞的設計與實現(xiàn)
在線查詞系統(tǒng)提供了單詞查詢和新詞保存的功能,當用戶進入在線查詞模塊界面以后,在輸入框輸入需要查詢的單詞,然后確定,系統(tǒng)會將所有的查詢結果顯示在頁面的下端,如果單機保存按鈕,系統(tǒng)會把本次所查的單詞保存在系統(tǒng)內建立的生詞本中,在線查詞設計到生詞本數(shù)據(jù)庫的建立、網(wǎng)絡查詞和網(wǎng)絡查詞保存到本地字典等三個子模塊。此外,若用戶所查單詞不存在,則生成提示錯誤的顯示界面和相近的備用單詞以便于用戶比較找出錯誤的原因。圖8是在線查詞界面效果圖。
圖8 在線查詞界面效果圖
移動終端的普及推動著英語學習向隨時化和便攜化發(fā)展,在此基礎上本文基于Android設計了英語學習系統(tǒng),本文討論了Android的平臺系統(tǒng)特點、網(wǎng)絡通信和數(shù)據(jù)庫的建立,在分析Android的基礎上隊基于Android的英語學習系統(tǒng)的設計進行了需求分析和總體設計的方向。然后給出了系統(tǒng)和軟件的設計和實現(xiàn),重點給出了用戶管理、在線考試、在線查詞等3個重要模塊的設計和實現(xiàn)的方式,理論和實現(xiàn)表明,基于Android的英語學習系統(tǒng)能做到用戶隨時隨地對當前的英語水平進行測試并學習新內容,對提高普通用戶特別是在校學生的英語能力具有很大的幫助。
[1][美]Douglas E.Comer.用TCP/IP進行網(wǎng)際互聯(lián)(第一卷):原理、協(xié)議與結構[M].4版.北京:電子工業(yè)出版社,2010,1-12.
[2]Walker Royce.軟件項目管理一個統(tǒng)一的框架[M].北京:機械工業(yè)出版社,2008.
[3]韓超,梁泉.Android系統(tǒng)原理及開發(fā)要點詳解[M].北京:電子工業(yè)出版社,2010.
[4]lemmon J.NTIA Report 02-394:Wireless Link Bit Error Model[R].National Telecommunication and Inform ation Administration,ITS,2009,
[5][美]Douglas E.Comer,用TCP/IP進行網(wǎng)際互聯(lián),第三卷:客戶一服務器編程與應用[M],北京:電子工業(yè)出版社,2007.
[6]劉佳,王軍峰,徐越群.第三代移動通信3G技術解析[J].石家莊鐵路職業(yè)技術學報,2010(3):65-67.
[7]工業(yè)和信息化部電信研究院通信信息研究所新技術新業(yè)務部.全球3G終端與設備市場發(fā)展[J].世界電信,2010(9):49-54.
[8]劉桂蘭,付漢紅.基于3G技術的移動學習應用探討[J].教育傳播與技術,2010.
[9]陳賾,秦貴和.ARM9嵌入式技術及Linux高級實踐教程[M].北京:北京航空航天大學出版社,2005.
[10]IzszekA.著,金芝譯.需求分析與系統(tǒng)設計[M].北京:機械工業(yè)出版社,2003.
[11]匡錦瑜,鄧昆,黃榮懷.利用時空混沌同步進行數(shù)字加密[J].通信物理學報,2011,23(12):56-58.
[12]邵維忠,楊芙清.面向對象的系統(tǒng)設計[M].北京:清華大學出版社,2003.
[13]Rubini A,Corbet J.Linux設備驅動程序(第2版)[M].北京:中國電力出版社,2004.
Design and implementation of English learning system based on Android
AI Xiao-qin
(Shaanxi Vocational and Technical College,Xi'an 710038,China)
In order to allow users to learn English in a portable device anytime and anywhere,this paper presents an English learning system based on Android.This paper first discusses the development trend of mobile terminals and the advantages of Android,and then describes the characteristics of Android system platform and Android development mode,communication and the establishment of the database,based on the analysis of the Android based on the demand analysis and the overall design of English learning system.According to the requirement analysis of the system,the design and implementation of the key modules such as user management,online examination,online search terms are given.The practice shows that the Android based English learning system can effectively promote the learning of users.
Android;English learning system;analysis and design;modularization
TM933.4
A
1674-6236(2016)17-0073-04
2015-12-09稿件編號:201512099
艾小芹(1987—),女,陜西米脂人,碩士,助教。研究方向:英語教育。