蔡海杰++崔忠偉++劉卓
摘要:采用objective-c語言,SQLite數(shù)據(jù)庫開發(fā)一款運(yùn)行在iOS移動平臺的手機(jī)APP。為貴州師范學(xué)院的新生提供一個入學(xué)報到信息的獲取平臺。
關(guān)鍵詞:iOS;校園APP;信息發(fā)布
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2016)11-0046-02
隨著信息化時代的不斷進(jìn)步以及智能手機(jī)的不斷發(fā)展,現(xiàn)在絕大多數(shù)的高校學(xué)生與老師都已使用智能手機(jī),人們逐漸習(xí)慣了使用APP客戶端上網(wǎng)的方式。而iphone手機(jī)在中的發(fā)展趨勢日趨上升,iphone手機(jī)保密性很強(qiáng),很多東西都不對外開放,因此在國內(nèi)的iphone手機(jī)占有很高的比例。高效新生入學(xué)報到手機(jī)APP就是針對iphone手機(jī)而開發(fā)的一款手機(jī)應(yīng)用,日趨擴(kuò)大的市場也使得應(yīng)用于iphone手機(jī)的APP開發(fā)日趨緊迫,可以說高校建立專屬的APP是大勢所趨。
1 手機(jī)APP校園客戶端開發(fā)的意義
隨著科技的發(fā)展技術(shù)的進(jìn)步,手機(jī)的功能也出現(xiàn)了翻天覆地的變化,由原來只是打電話發(fā)短信的基本功能,轉(zhuǎn)變?yōu)楝F(xiàn)在的全功能智能手機(jī),人們對手機(jī)的要求也越來越高。iphone手機(jī)的性能優(yōu)越已經(jīng)不言而喻,不用就釋放也使得iphone手機(jī)避免了安卓手機(jī)卡機(jī)現(xiàn)象,然而iphone手機(jī)并不對外開源,是的其核心技術(shù)只被蘋果公司壟斷,關(guān)于iphone手機(jī)的手機(jī)應(yīng)用也是少之又少,畢竟開發(fā)者有限。因此iphone手機(jī)的APP開發(fā)也是迫切的,“高校新生入學(xué)報到系統(tǒng)”就是針對此情況而開發(fā),為我校新生解決入學(xué)報到的難處。
2 相關(guān)技術(shù)
2.1 Objective-c簡介
Objective-C是非?!皩?shí)際”的語言。它使用一個用C寫成、很強(qiáng)大的運(yùn)行庫,只會令應(yīng)用程序的占得內(nèi)存增加很小。OC寫成的程序通常不會比其源代碼大很多。而其函數(shù)庫(通常附在軟件發(fā)行本)亦和Smalltalk系統(tǒng)要使用極大的內(nèi)存來開啟一個窗口的情況相反。
2.2 SQLite
SQLite是一個輕量級、跨平臺的關(guān)系型數(shù)據(jù)庫。既然號稱關(guān)系型數(shù)據(jù)庫,支持SQL92標(biāo)準(zhǔn)中常用的事務(wù)(比如視圖、事務(wù)、觸發(fā)器等)就是理所當(dāng)然的了。SQLite和C/S模式的數(shù)據(jù)庫軟件不同,它是進(jìn)程內(nèi)的數(shù)據(jù)庫引擎,因此不存在數(shù)據(jù)庫的客戶端和服務(wù)器。使用SQLite一般只需要帶上它的一個動態(tài) 庫,就可以享受它的全部功能。
3 系統(tǒng)平臺設(shè)計
平臺總體架構(gòu)如圖1所示。
學(xué)校簡介:
本模塊的主要功能是讓尚未入學(xué)的新生可以更早地了解到學(xué)校的一些資料,向他們提供一些本學(xué)校的一些具體情況、各個學(xué)院的不同情況以及他們的專業(yè)的一些具體。
入學(xué)指南:
本模塊的主要功能是向新生傳遞入學(xué)是所需的一些注意事項(xiàng),整合了他們?nèi)雽W(xué)是所需的材料、步驟以及可以求助的電話或地點(diǎn)等。
校園新聞:
本模塊的主要功能分為管理員和用戶,管理員可以發(fā)布最新的校園新聞,以及對以前的新聞的修改或刪除。用戶的則只能查看管理員發(fā)布的校園新聞。
社團(tuán)生活:
本模塊的主要功能是向新生介紹本校所有的社團(tuán)資料,以及每個社團(tuán)的活動,不僅可以提高社團(tuán)的人員數(shù),而已有利提高社團(tuán)的質(zhì)量。
日常交流:
本模塊的主要功能是提供給新生和學(xué)長的交流平臺,在上面學(xué)弟可以向?qū)W長請教問題,學(xué)長可以向?qū)W弟傳授經(jīng)驗(yàn)。
4 系統(tǒng)實(shí)現(xiàn)
“高校新生入學(xué)報到”手機(jī)APP由移動終端以及后臺的服務(wù)器組成。移動終端基于iOS平臺,使用SQLite數(shù)據(jù)庫存儲從服務(wù)器端接收的數(shù)據(jù),并根據(jù)顯示在手機(jī)APP界面上面。服務(wù)器端的主要功能為通過移動終端發(fā)送的不同請求,返回不同的數(shù)據(jù),實(shí)現(xiàn)對移動終端的數(shù)據(jù)的更新。移動終端和服務(wù)器端的數(shù)據(jù)交互是通過json數(shù)據(jù),通過對json數(shù)據(jù)的解析和寫入對數(shù)據(jù)進(jìn)行交互。
4.1 iOS客戶端實(shí)現(xiàn)
iOS移動終端的數(shù)據(jù)是通過查詢數(shù)據(jù)庫,將得到的數(shù)據(jù)存入在相應(yīng)Model模型中,實(shí)現(xiàn)MVC的模式開發(fā)。然后在相應(yīng)需要數(shù)據(jù)顯示的View界面從建立好的Model模型中取出相應(yīng)的數(shù)據(jù)進(jìn)行綁定,即可對View界面上數(shù)據(jù)的跟新。
主要代碼:
+ (NSArray *)news
{
// 得到結(jié)果集
FMResultSet *set = [_db executeQuery:@"SELECT * FROM t_news;"];
// 不斷往下取數(shù)據(jù)
NSMutableArray *news = [NSMutableArray array];
while (set.next) {
// 獲得當(dāng)前所指向的數(shù)據(jù)
HMNew*new= [[HMShop alloc] init];
new.title= [set stringForColumn:@"title"];
new.message= [set doubleForColumn:@"message"];
[news addObject:new];
}
return news;
}
4.2服務(wù)器端實(shí)現(xiàn)
服務(wù)器的主要功能是根據(jù)移動終端的不同請求對服務(wù)器端的數(shù)據(jù)庫更、刪、查、改然后返回不同json數(shù)據(jù)。為了提高開發(fā)的效率,避免重復(fù)多余的代碼,減低維護(hù)的成本。在服務(wù)端設(shè)計了公共類,分別為對數(shù)據(jù)庫進(jìn)行操作的SqlHelper類以及對json數(shù)據(jù)進(jìn)行操作的JsonHelper類。
4.3 各個模塊實(shí)現(xiàn)
在移動終端中,每個類都分為一個.m和一個.h文件。其中.m文件是對這個的聲明,即這個類擁有的那些公共方法、成員變量以及使用這個類需要遵守那些協(xié)議等。在.h文件中則是對.m中方法的實(shí)現(xiàn),以及一些不對外公開的私有方法,私有的成員變量等。在本系統(tǒng)中采用MVC的模式為每個功能模塊都建立一個View類,一個Model類以及一個Control類。這樣便于對每個模塊功能的管理。
5 結(jié)束語
“高校新生入學(xué)報到”手機(jī)APP實(shí)現(xiàn)了新生入學(xué)報到手續(xù)繁雜的問題,將新生關(guān)注的問題全部裝在手機(jī)上,解決了傳統(tǒng)電腦攜帶的不方便導(dǎo)致信息的傳遞的不及時。加快了我校信息化建設(shè)的步伐,對教師、學(xué)生和管理員帶來了許多好處,也能夠?yàn)楦嗟氖謾C(jī)APP校園客戶端提供設(shè)計參照。
參考文獻(xiàn):
[1] 李旭紅. 長江大學(xué)“掌上校園”APP系統(tǒng)研發(fā)與運(yùn)營研究[J]. 科技創(chuàng)新, 2014(9): 35-37.
[2] 劉宏磊, 李一鳴. 掌上迎新系統(tǒng)的設(shè)計與實(shí)現(xiàn)研究[J]. 中國教育信息化, 2012(3): 57-60.
[3] 李珊娜. 移動校園手機(jī)客戶端的設(shè)計與應(yīng)用[J]. 計算機(jī)與運(yùn)用, 2014, 23(9): 33-35.
[4] 田蕊. 基于手持終端的圖書館 APP 移動服務(wù)研究[J]. 圖書館建設(shè), 2012(7): 36-40.
[5] 孫凈字, 李澈, 張震, 等. 高校校園APP發(fā)展現(xiàn)狀初探[J]. 數(shù)字與出版, 2014(6): 84-85.
[6] 陳兆良, 王千祥,梅宏, 等,面向?qū)ο箢I(lǐng)域設(shè)計中的變化性處理[J]. 電子學(xué)報, 2001(11): 1486-1490.
[7] 華建祥. 基于Android平臺的校園信息查詢系統(tǒng)客戶端設(shè)計與實(shí)現(xiàn)[J]. 軟件導(dǎo)刊, 2014, 3(3): 101-103.