收藏本站
博为峰Android开发培训Banner
您所在的位置:博为峰教育首页 > 资料精选 > 学习资料 > 【学习资料】浅议那些Android中的性能优化

【学习资料】浅议那些Android中的性能优化

   发布时间:2016年02月21日 17:55分    来源:博为峰教育网采编    关键词:Android性能优化       | 上一篇 | 下一篇 |


 

      网络

 

       现在有很多现成HTTP框架供我们使用,我们几乎只用写配置就可以搞定一个url请求,但是这里有很多需要服务端配合的,比如:json数据格式,WebP代替jpg,支持断点续传,多个请求合并成一个,尽量不做重定向,服务器缓存以及负载均衡等。

 

       对客户端本身,除了上述的实现,我们还需要合理的缓存,控制最大请求并发量,及时取消已失效的请求,过滤重复请求,timeout时间设置,请求优先级设置等。优化可不是一个人的事,实现一个功能简单,但是想优化重构,那是很不容易的事。需要多方面的预判与联调。合理的假设与实践是优化最重要的手段。

 

       说完这些具体的点,我们再来说说一些常识,或者称之为代码规范。

 

       ●你要知道for loop中不要声明临时变量,不到万不得已不要在里面写try catch;

       ●明白垃圾回收机制,避免频繁GC,内存泄漏,OOM (有机会专门说);

       ●合理使用数据类型,比如StringBuilder代替String,(笔试题最常见的是str+="str"中有几个对象) ,少用枚举enum,少用父类声明(List,Map);

       ●如果你有频繁的new线程,那最好通过线程池去execute它们,减少线程创建开销。

       ●你要知道单例的好处,并正确的使用它;

       ●多用常量,少用显式的"action_key",并维护一个常量类,别重复声明这些常量。 如果可以,至少要弄懂设计模式中的策略模式,组合模式,装饰模式,工厂模式,观察者模式,这些能帮助你合理的解耦,即使需求频繁变更,你也不用害怕牵一发而动全身。需求变更不可怕,可怕的是没有在写代码之前做合理的设计。

 

       当然还有很多很多,Stay所说的也只是一个大的轮廓,还是需要自己不断的尝试。会开发写代码跟会做产品的区别还是蛮大的,仅仅是态度就能刷死80%的码农了。当你碰到一些需要优化的地方,耐心的去分析,时间的累积会让你成为真正的工程师。

 

       另外优化也没有绝对的完美,每一次优化都是基于当前的环境来做的,要明白沟通是最好的优化,不盲从,不随便,三思而后行。Android上如何做性能优化的?大概写三年代码就能差不多知道了。