常丹妮+郭銘+高耳+郭勇+童亞拉(通訊)
(1武漢睿升學(xué)校高三(四)班 湖北 武漢 430022; 2湖北工業(yè)大學(xué)理學(xué)院 湖北 武漢 430068)
摘 要:目前團(tuán)購(gòu)網(wǎng)站的海量信息,時(shí)常讓消費(fèi)者苦惱于如何選擇?;诖耍拒浖趇OS開(kāi)發(fā)了一款團(tuán)購(gòu)APP,消費(fèi)者可獲得良好的客戶體驗(yàn)。本軟件充分考量APP的界面、用戶按鈕功能、商品呈列及交易詳情,并添加了地圖定位模塊,提供商品地點(diǎn)的實(shí)時(shí)定位;添加搜索功能模塊,用戶可隨時(shí)查詢并購(gòu)買產(chǎn)品。調(diào)試運(yùn)行的結(jié)果表明,該系統(tǒng)運(yùn)行正常,人機(jī)界面交互性較好。
關(guān)鍵詞:iOS;團(tuán)購(gòu)APP;地圖定位;用戶體驗(yàn)
基金項(xiàng)目:湖北省教育廳人文社科重點(diǎn)項(xiàng)目(14D022);湖北工業(yè)大學(xué)校大學(xué)生創(chuàng)新創(chuàng)業(yè)項(xiàng)目
網(wǎng)絡(luò)團(tuán)購(gòu)便于消費(fèi)者找到適合產(chǎn)品,方便快捷,價(jià)格低廉。國(guó)內(nèi)出現(xiàn)了許多優(yōu)秀團(tuán)購(gòu)產(chǎn)品,如淘寶、京東,美團(tuán)、大眾點(diǎn)評(píng)等。隨著APP時(shí)代的來(lái)臨,商家紛紛從PC端轉(zhuǎn)移到手機(jī)移動(dòng)客戶端。在此背景下,本文研究基于iOS的團(tuán)購(gòu)APP,其目的是設(shè)計(jì)實(shí)現(xiàn)一款客戶體驗(yàn)良好的購(gòu)物軟件。
1 開(kāi)發(fā)平臺(tái)以及相關(guān)技術(shù)
1.1 Mac OS平臺(tái)
Mac OS X是基于UNIX系統(tǒng)的、采用“面向?qū)ο蟛僮飨到y(tǒng)”的操作系統(tǒng)。它采用C、C++、Objective-C、Swift編程,且為閉源編碼。OS X的特點(diǎn)是設(shè)計(jì)簡(jiǎn)單直觀高效、安全易用、高度兼容、功能強(qiáng)大、設(shè)計(jì)新穎。不僅穩(wěn)定性強(qiáng),還支持互聯(lián)網(wǎng)標(biāo)準(zhǔn)。本文設(shè)計(jì)基于Mac OS平臺(tái)開(kāi)發(fā),運(yùn)用平臺(tái)下的Xcode開(kāi)發(fā)工具,在cocoa Touch框架上利用MVC設(shè)計(jì)模式實(shí)現(xiàn)本款A(yù)PP[1]。
1.2 Cocoa Touch框架結(jié)構(gòu)
Cocoa Touch是一款由蘋果公司提供的軟件開(kāi)發(fā)API, 用于開(kāi)發(fā) iPhone\iPod\iPad軟件[2],也是應(yīng)用程序快速開(kāi)發(fā)的一個(gè)類庫(kù),此庫(kù)支持開(kāi)發(fā)人員使用用戶界面元素構(gòu)建圖像化事件驅(qū)動(dòng)的應(yīng)用程序[3]。其功能是用 Objective-C語(yǔ)言實(shí)現(xiàn)的,作為C超集,可將C、C++ 融入Cocoa Touch應(yīng)用程序中。除 UIKit 之外,包含創(chuàng)建iOS應(yīng)用程序的所有框架,從 3D 圖形、專業(yè)音頻到網(wǎng)絡(luò),甚至提供特殊設(shè)備訪問(wèn) API 以控制攝像機(jī)或從 GPS 硬件獲取地理位置[4]。
1.3運(yùn)行環(huán)境
Xcode是本文所用開(kāi)發(fā)工具:運(yùn)行于Mac操作系統(tǒng)下,是蘋果公司向開(kāi)發(fā)人員提供的集成開(kāi)發(fā)環(huán)境(非開(kāi)源),用來(lái)開(kāi)發(fā)Mac OS X和iOS的應(yīng)用程序。在開(kāi)發(fā)過(guò)程中,項(xiàng)目運(yùn)行在Xcode的iPhone模擬器上,編譯運(yùn)行,測(cè)試各功能模塊,如同在真機(jī)上運(yùn)行一樣[5]。
2 團(tuán)購(gòu)APP的設(shè)計(jì)與實(shí)現(xiàn)
2.1 團(tuán)購(gòu)APP的設(shè)計(jì)思路
本APP的設(shè)計(jì)思路是:在完成需求分析后,依據(jù)MVC設(shè)計(jì)模式,在第三方庫(kù)的支持下,規(guī)劃UI,完成圖標(biāo)及啟動(dòng)圖片、導(dǎo)航欄的設(shè)置,設(shè)計(jì)商品分類、城市分類下拉菜單,封裝并實(shí)現(xiàn)一個(gè)通用下拉二級(jí)菜單;完成網(wǎng)絡(luò)數(shù)據(jù)的處理,運(yùn)用MVC設(shè)計(jì)模式,通過(guò)視圖控制器控制UI與數(shù)據(jù)模型間的交互,將團(tuán)購(gòu)數(shù)據(jù)顯示到界面上,最后通過(guò)自定義分欄控制器實(shí)現(xiàn)供iPad APP分欄控制器,通過(guò)左側(cè)分欄界面實(shí)現(xiàn)部分功能。
2.2 團(tuán)購(gòu)APP的設(shè)計(jì)目標(biāo)
要求界面外觀時(shí)尚,滿足消費(fèi)者酷炫操作體驗(yàn),操作流暢舒適;軟件功能上,進(jìn)一步對(duì)傳統(tǒng)團(tuán)購(gòu)APP拓展,商品涵蓋面廣泛,添加地圖定位功能,用戶指定區(qū)域及商品可在地圖上指示位置分布;軟件操作上,用戶無(wú)需驗(yàn)證,便于忘記賬號(hào)密碼時(shí)不影響交易。
2.3 團(tuán)購(gòu)APP的功能模塊設(shè)計(jì)與實(shí)現(xiàn)
本APP的功能模塊主要包括主界面、導(dǎo)航欄、商品的分類、切換城市、商品排序、地圖、搜索欄等功能模塊,鑒于文章篇幅,僅闡述商品分類功能模塊。
開(kāi)發(fā)時(shí),創(chuàng)建一個(gè)帶xib文件的CatagoryViewController,并添加兩個(gè)左右平齊的tableView,分別為主、子tableView。通過(guò)AutoLayout添加約束條件讓tableView填滿xib文件的View視圖,且大小相等、居中對(duì)齊。在Catagory類文件中引入IB連線導(dǎo)入tableView,并定義一個(gè)Catagory類的數(shù)組,運(yùn)用懶加載的方法以減小內(nèi)存開(kāi)銷。設(shè)計(jì)tableView內(nèi)容時(shí),引入核心協(xié)議tableViewDataSource和tableViewDelegate以及實(shí)現(xiàn)的方法:tableView的節(jié)數(shù)、每節(jié)的行數(shù)及每行的內(nèi)容。這里,tableView只需一節(jié),根據(jù)plist文件的模型數(shù)據(jù)的類數(shù)通過(guò)Cell的重用機(jī)制完成數(shù)據(jù)分類的加載。實(shí)現(xiàn)每一行內(nèi)容編輯時(shí),需在每行左側(cè)添加背景圖,完成對(duì)其右邊分類描述。通過(guò)導(dǎo)入在Model層創(chuàng)建的Catagory類數(shù)據(jù),完成每項(xiàng)數(shù)據(jù)對(duì)每行Cell對(duì)應(yīng)text的內(nèi)容編寫。
若要實(shí)現(xiàn)用戶點(diǎn)擊左側(cè)主tableView上某一項(xiàng)分類,界面自動(dòng)彈出右側(cè)子tableView,顯示某一分類的所有二級(jí)子分類,首先判斷左側(cè)主分類是否有二級(jí)子分類,若沒(méi)有,主界面自動(dòng)刷新用戶所要查詢的商品種類;若有,界面自動(dòng)刷新目標(biāo)商品。調(diào)用tableView協(xié)議,選中某一行的函數(shù)方法——didSelectRowAtIndexPath方法即可。效果如下。
結(jié)束語(yǔ)
本文研究了團(tuán)購(gòu)APP的界面設(shè)計(jì)與美化、用戶按鈕的功能設(shè)計(jì)、主界面商品的呈列以及商品交易詳情,并添加地圖定位模塊,提供商品地點(diǎn)的實(shí)時(shí)定位;同時(shí)添加搜索功能模塊,上線后效果良好。但也存在一定局限性,如數(shù)據(jù)來(lái)源于網(wǎng)絡(luò),是基于DP網(wǎng)的SDK,通過(guò)熟悉其API,設(shè)計(jì)請(qǐng)求各項(xiàng)參數(shù),完成對(duì)目標(biāo)參數(shù)信息的加載。當(dāng)SDK的數(shù)據(jù)參數(shù)和請(qǐng)求項(xiàng)有所改變時(shí),APP必須對(duì)其更新和維護(hù),增了工作量,這是今后需改進(jìn)的地方。
參考文獻(xiàn)
[1] [美]Stephen G. Kochan,Objective-C 2.0程序設(shè)計(jì)[M],原書第二版,機(jī)械工業(yè)出版,2012.
[2] [美]David Mark,精通iOS開(kāi)發(fā),iOS6開(kāi)發(fā)進(jìn)階與實(shí)戰(zhàn)[M],人民郵電出版社,2012.
[3] [美]Klehr.Objective-C 2 Mac and iOS development of practice guidelines[M].威利出版社,2012.
[4] [美]Carlo Chung,Apple mania:iphone open the always-onage,威利出版社,2012.
[5] 馮沖,界面中的注意力設(shè)計(jì)[M],北京交通大學(xué),2012.