[問題] android 開發 java 的效能考量

作者: cyclone350 (老子我最神)   2016-08-09 23:25:52
HI,
我完全沒有開發 android app 的經驗
在開發上我是提供 API,讓 APP 呼叫並且處理
但是 APP 在開發上跟我說的效能問題實在很難說服我
我下面會舉一些例子,希望有在開發 APP 的人或是有相關實際經驗的人
能跟我講 APP 的考量點
# 例子1
server 會提供一個商品列表,包含商品名稱、商品價錢、推薦順序
```
[
{name: "product1", price: 20, recommandOrder: "1evel1"},
{name: "product2", price: 30, recommandOrder: "1evel1"},
{name: "product3", price: 40, recommandOrder: "1evel1"},
{name: "product4", price: 30, recommandOrder: "1evel2"},
{name: "product5", price: 20, recommandOrder: "1evel3"},
{name: "product6", price: 30, recommandOrder: "1evel3"}
]
```
從這邊可以看出來
第一個 level1 的商品是 product1
第一個 level2 的商品是 product4
第一個 level3 的商品是 product5
實際上我們每一次回傳的商品數量約 50~300 個
問題來了,app 團隊告知他們無法這樣計算,因為會有效能議題
但是… 為什麼一個普通的單次或兩次迴圈,
而且數量只有 300 的情況下會有效能議題
app 團隊回應因為要建立物件對應 (hashMap),所以會有效能議題
這實在是有點難說服我,因為依照我對手機的了解,可以跑 3D 遊戲
可以玩跑跑薑餅人,可以玩動作卡牌遊戲
究竟是為什麼一個沒有 IO 的普通迴圈會有效能問題?
請問是我少考慮甚麼東西嗎? 麻煩有經驗的人幫忙回答一下,謝謝
作者: james732 (好人超)   2016-08-09 23:31:00
我覺得你應該考慮自己學一下Android app你懷疑團隊跟你說的,那你就會相信網友說的話嗎?XD
作者: pupuliao (pupu)   2016-08-09 23:35:00
以前寫過一點 當時最難處理的是RAM的問題不過API開發已經有特定對口,還是在規格上雙方好好討論我最近就有串接合作廠商API..都讓我想把對方砍了狀況二 如果是所有資訊要在一個頁面中顯示 那要求合理阿
作者: now99 (陳在天)   2016-08-10 00:01:00
從Ui角度來想,這全部資料要一次顯示?使用者一次需要看那麼多資料?
作者: pupuliao (pupu)   2016-08-10 00:14:00
看你的回應應該是 你們雙方溝通有問題吧...
作者: MIM23 (HAWK)   2016-08-10 00:33:00
兩邊都開發的我來指點迷津,1.麻煩傳簡單明瞭的資料來,不想在處理過一次。2.不要用網頁的思維來看APP,移動裝置同一個主題的資料能一次請求全回來最好
作者: lucky1lk (賭到沒錢的人)   2016-08-10 07:56:00
搜尋複雜度是 O(n) XDDDDD
作者: ctrlbreak   2016-08-14 12:47:00
第一個問題, 我比較想知道對方覺得怎麼做比較好?
作者: KeySabre (KeySabreur)   2016-08-14 21:23:00
可能是覺得product list可以先用level分開來吧

Links booklink

Contact Us: admin [ a t ] ucptt.com