首先這些純粹是個人觀點,在學習之后的,自己的一些筆記。如果有錯誤,請指正。
客戶端項目開發(fā)流程:
a.產(chǎn)品經(jīng)理做需求調(diào)研,確定產(chǎn)品需求,編寫需求文檔
b.產(chǎn)品人員完成產(chǎn)品原型
c.產(chǎn)品經(jīng)理召開會議(產(chǎn)品、UI、開發(fā)、測試、服務器)
d.設計人員根據(jù)原型設計出一系列UI界面
e.服務器與客戶端成員一起制定接口文檔
f.項目經(jīng)理制定項目開發(fā)進度,分配任務,預算開發(fā)周期
g.移動客戶端開發(fā)人員根據(jù)UI界面和需求文檔開始編寫代碼,開發(fā)模塊上的功能
h.開發(fā)者提交給測試人員
i.測試部分測試完畢,提交給產(chǎn)品經(jīng)理,驗收產(chǎn)品
j.提交到AppStore上
主要是上面10大步驟,下面對某些步驟的詳細解說:
1.需求確定? (產(chǎn)品經(jīng)理)
(1)需求確定:通過各種方式確定客戶端的功能與性能
(2)方式:頭腦風暴、會議、咨詢
(3)功能:電影查詢、放映時間查詢、票價
本階段是項目開發(fā)的最重要階段,通常需求文檔和原型會在本階段中進行
2.界面設計(UI美工)
(1)客戶端最重要的部分是界面設計
(2)顏色、style
(3)設計APP的具體的“模擬”界面:能夠從頭走到尾;方便進行需求的確定;方便程序員的開發(fā)
3.用戶交互(產(chǎn)品經(jīng)理、用戶交互體驗師)
(1)易用
(2)簡約化
(3)避免輸入
(4)信息扁平化
(5)增強交互
4.架構分析與設計
(1)MVC
(2)緩存策略
(3)可拓展性
(4)是否預留廣告位
5.業(yè)務邏輯分析
(1)根據(jù)需求分析業(yè)務邏輯
(2)哪些人會用這個客戶端
(3)他們會使用該客戶端做什么
(4)通常他們使用該客戶端的步驟是什么
(5)會有哪些核心類支撐本客戶端的運行
本階段與需求密切相關
6.業(yè)務邏輯設計
(1)根據(jù)需求分析來確定具體的類
(2)確定類的屬性
(3)確定類的接口(方法)
(4)確定類之間的關系
(5)確定用戶操作流程在設計上的反應
7.與服務器的交互方式(服務器規(guī)定)
(1)http:優(yōu)點:對開發(fā)人員要求不高,開發(fā)效率不高,容錯性好
缺點:傳輸數(shù)據(jù)包大,速度慢,安全性稍差
(2)socket:(對服務器壓力大)
優(yōu)點:傳輸數(shù)據(jù)小,速度快,安全性高,適用于客戶端與服務器實時交互數(shù)據(jù)
缺點:對開發(fā)人員要求高,開發(fā)成本高
8.數(shù)據(jù)交換方式
(1)json(大部分用比較簡潔)
(2)xml:標簽? ? 格式統(tǒng)一
8.接口定義(定接口:客戶端&開發(fā)人員)