摘 要:隨著智能手機(jī)的普及,安卓操作系統(tǒng)在手機(jī)中廣泛使用,移動(dòng)學(xué)習(xí)在數(shù)字化學(xué)習(xí)的基礎(chǔ)上通過有效結(jié)合移動(dòng)計(jì)算技術(shù),使學(xué)習(xí)者可以在任何時(shí)間任何地點(diǎn)獲取自己想要的知識(shí)信息,實(shí)現(xiàn)真正意義上的自主學(xué)習(xí)。本文主要分析基于android系統(tǒng)如何設(shè)計(jì)與開發(fā)移動(dòng)學(xué)習(xí)系統(tǒng)。
關(guān)鍵詞:安卓操作系統(tǒng);智能手機(jī);移動(dòng)學(xué)習(xí)
中圖分類號(hào):TP311.1
1 Android UI組件設(shè)計(jì)
用戶界面是系統(tǒng)和用戶之間進(jìn)行信息交換的媒介,實(shí)現(xiàn)信息內(nèi)部的形式與人類可以接受形式之間的轉(zhuǎn)換[1]。Android是基于Linux的軟件平臺(tái)和操作系統(tǒng),采用了軟件堆層的架構(gòu),主要分為四部分,如圖1所示。Linux Kernel Android基于Linux 2.6提供核心系統(tǒng)服務(wù)有:安全、內(nèi)存管理、進(jìn)程管理、網(wǎng)絡(luò)堆棧、驅(qū)動(dòng)模式等。Linux Kernel也作為硬件和軟件之間的抽象層,它隱藏具體硬件細(xì)節(jié)而為上層提供統(tǒng)一的服務(wù)。Android Runtime包含一個(gè)核心庫(kù)的集合,提供了大部分在Java編程語言核心類庫(kù)中的可用功能[2]。
2 Android數(shù)據(jù)存儲(chǔ)與訪問
Android平臺(tái)提供多種數(shù)據(jù)存儲(chǔ)方法,包括易于使用的SharePreferences以及輕量級(jí)的SQLite數(shù)據(jù)庫(kù)。本系統(tǒng)使用嵌入式關(guān)系型SQLite數(shù)據(jù)庫(kù)。SQLlite數(shù)據(jù)庫(kù)的優(yōu)勢(shì)在于其嵌入到使用它的應(yīng)用程序中。這樣不僅提高了運(yùn)行效率,而且屏蔽了數(shù)據(jù)庫(kù)使用和管理的復(fù)雜性,程序僅需要進(jìn)行最基本的數(shù)據(jù)操作,其他操作可以交給進(jìn)程內(nèi)部的數(shù)據(jù)庫(kù)引擎完成。同時(shí)因?yàn)榭蛻舳撕头?wù)器在同一進(jìn)程空間運(yùn)行,不需要進(jìn)行網(wǎng)絡(luò)配置和管理,因此減少了網(wǎng)絡(luò)調(diào)用所造成的額外開銷,簡(jiǎn)化的數(shù)據(jù)庫(kù)的管理過程,使應(yīng)用程序更加易于部署和使用。
默認(rèn)情況下,所有數(shù)據(jù)庫(kù)都是私有的,僅允許創(chuàng)建數(shù)據(jù)庫(kù)的應(yīng)用程序訪問,如果需要共享數(shù)據(jù)庫(kù)則可以使用ContentProvider。雖然應(yīng)用程序完全可以在代碼中動(dòng)態(tài)建立SQLite數(shù)據(jù)庫(kù),但通過命令行手工建立和管理數(shù)據(jù)庫(kù)仍然是非常重要的內(nèi)容,對(duì)于調(diào)用具有數(shù)據(jù)庫(kù)的應(yīng)用程序非常有用。
3 移動(dòng)學(xué)習(xí)系統(tǒng)功能模塊
系統(tǒng)的設(shè)計(jì)是在軟件開發(fā)生命周期中重要的一個(gè)階段,我們雖然不能保證好的系統(tǒng)必定產(chǎn)生設(shè)計(jì)必定產(chǎn)生好的軟件系統(tǒng),但是一個(gè)差的系統(tǒng)設(shè)計(jì)必定會(huì)產(chǎn)生一個(gè)差的軟件系統(tǒng)。本系統(tǒng)在設(shè)計(jì)中遵循以下幾個(gè)原則:(1)合適性。當(dāng)代大學(xué)生更多的移動(dòng)學(xué)習(xí)終端還是手機(jī),因?yàn)槭謾C(jī)存在著界面小、鍵盤小的一些缺點(diǎn),所以系統(tǒng)的功能操作界面盡量簡(jiǎn)單明了,免去一切不必要的操作。(2)結(jié)構(gòu)穩(wěn)定性。體系結(jié)構(gòu)是系統(tǒng)設(shè)計(jì)的第一要素,如果體系結(jié)構(gòu)經(jīng)常變動(dòng),那么建筑在體系結(jié)構(gòu)之上的用戶界面、數(shù)據(jù)庫(kù)、模塊也會(huì)經(jīng)常跟著變動(dòng),所以只有在體系結(jié)構(gòu)在一定時(shí)間內(nèi)保持穩(wěn)定不變,才能順利的開展后續(xù)工作。移動(dòng)學(xué)習(xí)系統(tǒng)主要功能模塊包括理論知識(shí)、實(shí)訓(xùn)視頻、專業(yè)英語、課后練習(xí)四個(gè)部分。
3.1 理論知識(shí)模塊設(shè)計(jì)。理論知識(shí)模塊主要是講授課程的理論知識(shí)部分,因?yàn)楸疽苿?dòng)學(xué)習(xí)系統(tǒng)強(qiáng)調(diào)的是學(xué)生的自主學(xué)習(xí),因此,在此部分的設(shè)計(jì)采用flash動(dòng)畫與actionscript2.0語言來實(shí)現(xiàn),如圖2所示:
3.2 實(shí)訓(xùn)視頻模塊設(shè)計(jì)。實(shí)訓(xùn)視頻模塊的設(shè)計(jì)主要是通過錄制學(xué)生實(shí)訓(xùn)場(chǎng)景使學(xué)生盡快進(jìn)入實(shí)訓(xùn)角色,通過最直接的視頻教學(xué)是同學(xué)有直接的感官認(rèn)識(shí)。視頻采用flv視頻格式,是被眾多新一代視頻分享網(wǎng)站所采用,是目前增長(zhǎng)最快、最為廣泛的視頻傳播格式。是在sorenson公司的壓縮算法的基礎(chǔ)上開發(fā)出來的。模塊如圖3所示:
3.3 專業(yè)英語模塊。本模塊采用flash動(dòng)畫設(shè)計(jì)方法,來繪制各種專業(yè)設(shè)備,通過語音與文字的介紹,是同學(xué)學(xué)會(huì)設(shè)備的發(fā)音與拼寫,如圖4所示:
3.4 課后練習(xí)模塊設(shè)計(jì)。正如課本一般,本系統(tǒng)在自主學(xué)習(xí)的最后階段提供了自我練習(xí)的功能,學(xué)生可以通過自我測(cè)驗(yàn)來檢測(cè)前面的學(xué)習(xí)效果,并且可以實(shí)時(shí)的查看個(gè)人是否回答正確。
具體設(shè)計(jì)如下圖所示。
4 結(jié)束語
通過開發(fā)基于Android移動(dòng)學(xué)習(xí)系統(tǒng),學(xué)習(xí)者通過移動(dòng)終端登錄移動(dòng)學(xué)習(xí)系統(tǒng),能夠自主定制學(xué)習(xí)計(jì)劃,合理安排自己的課余時(shí)間,選擇合適的學(xué)習(xí)資源,針對(duì)課堂學(xué)習(xí)存在的問題進(jìn)行鞏固強(qiáng)化。有利于促進(jìn)學(xué)生的自學(xué)能力。而通過在Android平臺(tái)上的開發(fā),使java、SQLite、flash、actionscript2.0等設(shè)計(jì)工具又一次得到了最大限度的利用,為今后的Android市場(chǎng)提供了良好范例。
參考文獻(xiàn):
[1]向守超,姚駿平.Android程序設(shè)計(jì)實(shí)用教程[M].北京:電子工業(yè)出版社,2012.
[2]夏幫貴.基于Android平臺(tái)的移動(dòng)學(xué)習(xí)系統(tǒng)[J].西華大學(xué)學(xué)報(bào),2011(09):82-84.
作者簡(jiǎn)介:董彧先(1981-),男,碩士研究生,講師,主要研究領(lǐng)域?yàn)榫W(wǎng)絡(luò)安全、嵌入式系統(tǒng)設(shè)計(jì)。
作者單位:天津鐵道職業(yè)技術(shù)學(xué)院鐵道電信系,天津 300240