Re: [问题] android 开发 java 的效能考量

楼主: pupuliao (pupu)   2016-08-10 01:29:59
※ 引述《cyclone350 (老子我最神)》之铭言:
: 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 的普通循环会有效能问题?
: 请问是我少考虑什么东西吗? 麻烦有经验的人帮忙回答一下,谢谢
我没用APP 实做过但是我碰过这种实作方式的API.....
说实话....这种结构很糟.....很糟....
这明明是一个>=3维以上的资料结构,你硬要用二维来存
浪费RAM空间就算了
我要使用的的时候 还必须要重新结构化.....
另外 如果需求只是显示部分商品,但每当我拿到资料要做筛选时
还必须要跑一次完整的资料建构?......
麻烦用json 丢个三微阵列给我
还有 用你之前SQL 的举例
你给的资料就是没有index 的DB 资讯.....不管要啥资料 都要O(n)的时间复杂度...
最近碰到一个状况是 捞 飞机航般机票资讯
我明明只要一笔特定航班,我却要建构五六百笔航班资讯.....玩我阿..
:
作者: cha122977 (CHA)   2016-08-11 02:54:00
只要一笔…不能开那种带SQLite条件的API吗?
作者: Jichang (C.C.Lemon)   2016-08-11 13:05:00
如果你是手机用户 你会希望手机一直查?还是手机里面算?
作者: KeySabre (KeySabreur)   2016-08-14 22:03:00
tradeoff

Links booklink

Contact Us: admin [ a t ] ucptt.com