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