艾小芹
(陜西職業技術學院陜西西安710038)
基于Android的英語學習系統設計與實現
艾小芹
(陜西職業技術學院陜西西安710038)
為了能讓用戶在便攜設備下隨時隨地的進行英語的學習,本文提出了一種基于Android的英語學習系統。本文首先討論了移動終端的發展趨勢和Android的優勢所在,然后闡述了Android的系統平臺特點和Android的開發方式、通信和數據庫的建立,在此基礎上分析了基于Android的英語學習系統的需求分析和總體設計。針對需求分析對該系統進行了模塊化的設計,給出了用戶管理、在線考試、在線查詞等關鍵模塊的具體設計和實現的方式,實踐表明,基于Android的英語學習系統能有效的促進用戶的學習。
Android;英語學習系統;分析與設計;模塊化
隨著移動技術和智能手機的發展和普及,在21世紀的今天,移動終端已經具備了與Web系統一樣的功能,能夠實現在PC平臺上進行的大多數的操作,并且擁有自己獨有的特點。移動終端比傳統的互聯網有更廣泛的自由性,能夠隨時隨地在線,由于設備的便攜性,便于我們隨身攜帶,現在移動終端正在慢慢改變我們的生活和學習的習慣[1]。從整體上看,移動設備具有軟硬件發展的最新的特征:1)開放性,移動設備提供了足夠的軟件和硬件接口對外開放,豐富了整個軟件和硬件的市場。2)可擴充性,移動設備可以構建或者替換新的硬件模塊來實現不同的功能。3)統一標準,現在的移動設備都支持無線網絡的重要標準,有利于設備的普及,加快行業的發展。移動平臺不僅具有硬件上面的優勢,在操作系統上面也是發展迅速,從最開始的UNIX被提出應用于移動操作市場,到今天的Android、IOS、WINDOWS等的激烈競爭,移動端的操作系統僅僅幾年就發展成一個成熟的行業。在移動操作系統中,發展最快最為矚目的就是谷歌推出的Android操作系統,一方面是因為它相比于PALM和Symbian等具有友好的用戶界面和眾多的APP,另一方面則是因為作為開源系統它本身更容易被手機廠商采用以推出各個價位的移動終端,相比于價格高高在上的僅授權給蘋果自己硬件使用的IOS,Android完全占據了中端和低端的市場,更具有廣泛的用戶群[2]。因此本文在移動終端提出的英語學習系統的設計和實現基于Android開發。
1.1Android平臺系統特點
Android一詞本來指機器人,是一款基于Linux內核的移動平臺操作系統,由開放手機聯盟推出。Android系統由四部分組成,最上層是應用層,直接面對用戶;第二層是開發者可調用的用語界面顯示的組件;第三層是中間層,用以屏蔽底層的操作系統;第四層是Linux操作系統的內核。Android具有完整的API和開源性。基于Android的移動終端具有開放性、應用程序無界限、平等性、網絡無障礙、并行運行等五個方面的特點。1)開放性,Android的開放性是谷歌建立的移動電話軟件平臺標準化的結果,平臺的相對開放讓Android占據了龍頭的地位。2)應用程序無界限,Android移動終端既可以訪問本地的內容,也可以訪問物聯網中的資源,同時自己也可以提供資源給其他的對等的移動終端[3]。3)平等性,對于基于Android操作系統的移動終端來說,所有的應用程序都是平等的,不管是系統自帶還是用戶后來安裝的APP。4)網絡無障礙,Android操作系統提供了豐富的網絡訪問API。5)并行運行,Android可以同時讓多個程序在后臺運行,由操作系統管理這些程序的先后順序[4]。
1.2Android的開發
Android是一個開放的系統,根據程序人員開發功能的不同,可以分為移植開發移動電話系統、Android系統開發和Android應用程序開發3個方向。移植開發移動電話系統又叫Android移植開發,圖1是Android移植開發的架構。

圖1Android移植開發的架構
Android的系統開發是為了使系統能滿足某一個功能時提供系統調用的接口而進行的開發,Android的系統開發一般分為5個步驟:增加C或者C++本地庫、定義Java層所需要的系統API、將所需要的代碼封裝成JNI、把JNI和Java類結合起來、提供應用程序所需要的Java類[5]。
Android的應用開發是Android的開發中最重要的一環,也是開發最多的一項,由于應用處于整個Android系統的最上層,所有Android的應用開發既可以對某個特定的硬件系統進行開發,也可以在Linux或者WINDOWS下基于某個模擬器進行開發,圖2是Android應用程序開發的結構圖[6]。
1.3Android的網絡通信與數據庫
Android在網絡通信方面非常優秀,既可以使用自帶的瀏覽器來訪問網頁,也可以通過集成的電子郵件程序來收取郵件。Android系統提供了Android網絡接口、Apache接口和標準的Java接口等3種網絡接口。此外,還提供了Http Client接口、socket接口、WiFi接收、URL接口等眾多的網絡連接技術,基于Android的網絡編程非常方便[7]。
Android的數據庫技術提供了4種存儲技術,分別是Shared Preferences、Files、SQLite以及Network,相比于其他系統,擁有更豐富的存儲技術,應用開發者可以根據應用程序自身的特點,選擇合適的存儲技術保存數據[8]。

圖2Android應用程序開發的結構圖
2.1需求分析
需求分析一般包括3個方面:功能性需求、非功能性需求和其他必要的約束。功能性需求是一個硬性的標準,即滿足客戶提出的合理要求,完成系統功能;非功能性是系統分析師在進行需求分析時必須要考慮的,比如系統的可靠性、穩定性、可拓展性的需求;其他的一些必要的約束包括法律的約束、行業的約束等必要的要求。由于基于Android的英語學習系統采用C/S架構比較合理,所以該軟件有多個功能模塊,可以按照前臺和后臺來進行劃分[9]。同時在客戶端,充分運用Android系統的UI界面,在服務器端,使用Tomcat搭建服務器,數據庫采用MySQL。本項目分為前臺和后臺兩部門,前臺部分包括用戶注冊、用戶登錄、在線考試、在線查詞、在線翻譯、視頻學習等模塊。后臺系統包括相關資料管理、用戶管理、系統管理等模塊[10]。
2.2總體設計
系統的總體設計主要給出系統的總體結構圖、系統的技術架構圖、系統的前臺和后臺流程圖以及數據字典等內容。
系統的總體結構圖給出了整個設計的完整流程,圖4是本系統的總體結構圖。
系統的技術構架圖給出了整個設計的技術構架,由于基于Android的英語學習系統采用MVC分層模式,將模型、試圖、控制器各層單獨設計實現,各層之間也有聯系,這樣的設計便于代碼的重用和維護,具有良好的可讀性、可重用性、可維護性、和可拓展性。在視圖層,采用Android提供的UI界面進行設計,在控制層采用Servlet技術,訪問數據庫采用JDBC驅動方式[11]。圖4是基于Android的英語學習系統的技術構架圖。
系統的主要業務流程圖主要從用戶和管理員的區分上去考慮。普通用戶通過前臺登錄基于基于Android的英語學習系統操作系統給予的功能,管理員通過后臺登錄對資源進行整合和管理[12]。

圖3 軟件需求的組成

圖4 基于Android的英語學習系統的技術構架圖
數據字典是對系統涉及到的實體進行文字描述而構建的,包括用戶信息字典、管理員信息字典、模塊分類字典、資料分類字典等各種數據庫信息。
3.1用戶管理的設計與實現
用戶管理主要包括普通用戶或者會員用戶的注冊、登錄、修改個人信息、修改密碼、管理員登錄、管理員查詢、管理員修改用戶等功能。根據前臺流程圖和用戶的用例圖,可以得到用戶進入系統的順序圖[13]。同樣的,管理員進入系統的過程可以用管理員管理順序圖來表示,圖5是管理員管理順序圖。

圖5 管理員管理順序圖
用戶管理的實現涉及到的部分是在數據庫中建立相關的數據表,以及用戶的注冊和登錄界面的設計,包括系統的主界面、用戶管理模塊的構成、數據庫的設計等多項內容。系統登錄界面的設計涉及到的元素包括用戶名、密碼的輸入、登錄注冊、尋密等幾個按鈕的設計。登錄界面在系統上采用垂直線性布局,用戶名輸入框、密碼輸入框等組合采用橫向線性布局。圖6是注冊界面的效果圖。
3.2在線考試的設計與實現
在線考試系統是本系統的重要模塊,英語等級考試和GRE、托福、雅思等專業考試在考前的鞏固和練習可以使用本模塊完成,用戶登錄后,可以選擇相應的模塊學習。在線考試模塊涉及到的子模塊比較多,但大多數都是數據的調用和判別,順序圖和數據庫的設計比較簡單,不在單獨列述。在線考試需要涉及到聽力模塊的設計與實現,需要涉及到音樂播放器的調用和實現,音樂播放器的4個功能正在播放、暫停、回復播放、已停止需要以調用的形式插入負責音樂播放器的代碼。圖7是普通選擇題的設計效果圖。

圖6 注冊界面的效果圖

圖7 普通選擇題的設計效果圖
3.3在線查詞的設計與實現
在線查詞系統提供了單詞查詢和新詞保存的功能,當用戶進入在線查詞模塊界面以后,在輸入框輸入需要查詢的單詞,然后確定,系統會將所有的查詢結果顯示在頁面的下端,如果單機保存按鈕,系統會把本次所查的單詞保存在系統內建立的生詞本中,在線查詞設計到生詞本數據庫的建立、網絡查詞和網絡查詞保存到本地字典等三個子模塊。此外,若用戶所查單詞不存在,則生成提示錯誤的顯示界面和相近的備用單詞以便于用戶比較找出錯誤的原因。圖8是在線查詞界面效果圖。

圖8 在線查詞界面效果圖
移動終端的普及推動著英語學習向隨時化和便攜化發展,在此基礎上本文基于Android設計了英語學習系統,本文討論了Android的平臺系統特點、網絡通信和數據庫的建立,在分析Android的基礎上隊基于Android的英語學習系統的設計進行了需求分析和總體設計的方向。然后給出了系統和軟件的設計和實現,重點給出了用戶管理、在線考試、在線查詞等3個重要模塊的設計和實現的方式,理論和實現表明,基于Android的英語學習系統能做到用戶隨時隨地對當前的英語水平進行測試并學習新內容,對提高普通用戶特別是在校學生的英語能力具有很大的幫助。
[1][美]Douglas E.Comer.用TCP/IP進行網際互聯(第一卷):原理、協議與結構[M].4版.北京:電子工業出版社,2010,1-12.
[2]Walker Royce.軟件項目管理一個統一的框架[M].北京:機械工業出版社,2008.
[3]韓超,梁泉.Android系統原理及開發要點詳解[M].北京:電子工業出版社,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進行網際互聯,第三卷:客戶一服務器編程與應用[M],北京:電子工業出版社,2007.
[6]劉佳,王軍峰,徐越群.第三代移動通信3G技術解析[J].石家莊鐵路職業技術學報,2010(3):65-67.
[7]工業和信息化部電信研究院通信信息研究所新技術新業務部.全球3G終端與設備市場發展[J].世界電信,2010(9):49-54.
[8]劉桂蘭,付漢紅.基于3G技術的移動學習應用探討[J].教育傳播與技術,2010.
[9]陳賾,秦貴和.ARM9嵌入式技術及Linux高級實踐教程[M].北京:北京航空航天大學出版社,2005.
[10]IzszekA.著,金芝譯.需求分析與系統設計[M].北京:機械工業出版社,2003.
[11]匡錦瑜,鄧昆,黃榮懷.利用時空混沌同步進行數字加密[J].通信物理學報,2011,23(12):56-58.
[12]邵維忠,楊芙清.面向對象的系統設計[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—),女,陜西米脂人,碩士,助教。研究方向:英語教育。