Android开发中10种填坑秘籍

原创
移动开发
鉴于开发者在Android开发中遇到的各种坑,51CTO网+资深开发者(51CTO开发者QQ交流群号370892523)根据他们开发过程中填过的坑给出一些建议。希望可以帮助初学者少走弯路。

【51CTO.com原创稿件】Android开发过程常见的坑有三类:开发工具选取、技术文档、列表页加载

[[184546]]

Android开发

开发工具选取

1、开发中遇到的坑,说一个IDE的选择,我建议,使用你擅长的IDE,很多时候,面对大家都说好的IDE,盲目的跟风,结果把很多时间浪费在折腾IDE上了。(北京-阳阳-安卓)

2、Eclipse 和Android Studio对比,HTML和原生对比,MVC、MVP、MVVM对比。技术选型影响的成本对比、性能对比等等。适合自己,擅长的工具,这个对于新人一开始很难判断的,很多人也都有过把每一个IDE都玩个遍,最后才固定下来。IDE说到底是为提高开发效率,方便维护代码的工具,如果一个工具能实现你目前开发能力所需要的,那就够了。不需要极度追求完美,有强大复杂功能的,有也很少用,多此一举,甚至为此花不少时间去学配置。(广州-益达-大数据)

3、AS确实方便不少,HTML和原生还是根据自己公司的业务需求来。(重庆-zee-终端)

4、Android开发代码规范优美很重要,特别是可读性和可拓展性,APP是频繁更新的产品,如果前期开发不考虑这个,后期维护和升级成本会远远大于开发成本,甚至成了一次性的东西。个人用文本编辑器的时间,比用IDE来的多。固定一个,用久了,快捷键也慢慢记住了。(广州-狄钦dQ-PHP)

5、高手记事本都可以写出优雅的代码出来,但即便给新手再强大的工具都未必写的好。重视基础,做你擅长,其余外包,常见搭配Sublime Text+Vim(成都-恩威-云计算)

6、开发用过Eclipse和Android Studio,这两种工具的切换最不习惯的是快捷键。现在基本固定是AS了,只有很少时候需要用到Eclipse,但那快捷键用起真是捉急。(重庆-小包-Android)

更新文档,特别是做好需求分析

7、项目伊始的话,尽量多写文档。类文档,协议接口,接口负责人, 需求文档,需求负责人。(深圳-sky-c++开发)

8、没有文档就不好处理,尤其是代码乱的情况下。很多代码写完了,在里面注视一个此处逻辑有问题。虽然有文档和设计图,但都是最老版本,后续改的可能与老版本的文档不一样。但究竟是哪里不一样却没有更新标注。最后,只能通过代码来看业务要实现的功能。所以实时更新文档,记录每一处变更很重要。(成都-哈韩浪子-JAVA)

9、Android开发要写好文档,特别是做好需求分析。引导客户了解他们需要什么系统。可以通过设计原型让客户了解需求。做好前期的系统规划,把握开发流程。不断迭代,不断与客户交流,完成系统。按照计划执行,按流程走。否则会死的很惨,心有体会。(合肥-飞哥-Java)

列表页加载

10、Android开发中讲一个坑,列表页加载。开始用 Image-Loader时, 大量的图片 card,真心是慢。首先,WeakRefence弱引用,效果不好, 时不时的OOM。于是反复对比了几个框架,重新确定了Glide库。效果好多了,但还是有OOM的事情出现,debug整个加载流程,发现原图本来就大,传输和Decoder花费的时间占比最大。so解决数据源的问题, 图片存储采用云存储,当时在七牛和阿里云中间选择了七牛。并把图像处理的功能交给云服务。最终,该页面的OOM降低到了 0.01% 以下。同时应用中的OOM也降低到了 0.3% 以下。这算是 OOM的一种填坑方法吧。

还有一个,在两年前的一个Android项目中,采用了UDP来上传日志,发现有的时候可以上传成功,有的时候不行,百思不解,逻辑刷了三遍没问题。在反复制造测试数据的过程中发现,上传周期内如果数据量大于一定数值就会出现该现象,对UDP的数据包限制问题,加一个循环判断,问题解决。(北京-曹洪伟-半吊子全栈工匠)

欢迎加入51CTO开发者QQ交流群 370892523学习。

51CTO开发者QQ交流群 370892523

【51CTO原创稿件,合作站点转载请注明原文作者和出处为51CTO.com】

责任编辑:何星 来源: 51CTO
相关推荐

2020-11-03 08:36:08

Hadoop

2020-10-29 10:22:44

中台

2024-06-04 22:20:02

2021-11-18 08:55:49

共享CPU内存

2021-03-31 08:33:17

SysTick定时器SysTick定时器

2023-06-12 07:00:40

Rust进度任务

2022-06-01 21:23:12

ELKLogstash底层

2016-10-19 19:03:18

javascriptes6React Nativ

2017-11-28 14:15:38

开发者故事

2011-02-22 14:07:52

2018-12-18 14:13:30

SDKAndroid开发

2016-12-28 13:19:08

Android开发坑和小技巧

2021-04-16 08:11:24

js前端JavaScript

2015-04-13 17:39:11

移动IM开发

2011-04-15 10:19:52

错误web开发web

2021-07-05 22:32:33

数据仓库团队

2011-04-06 16:49:48

AndroidAndroid Mar

2018-02-27 16:01:24

2020-09-28 16:51:11

Netty驱动网络

2018-11-22 16:20:07

RedisMySQL数据库
点赞
收藏

51CTO技术栈公众号