博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android应用程序稳定性一点想法
阅读量:2260 次
发布时间:2019-05-09

本文共 500 字,大约阅读时间需要 1 分钟。

这几天公司的app项目提交测试了,测试小伙伴反应了很多的问题,一边修改bug一边仔细想其中为什么会造成这么问题,大致可以分为以下几类:

1 需求不清楚,导致一些功能没有实现或错误。这里有很重要的一点,整体需求不清楚,会对自己定义某些类和对象时候造成影响,影响代码的优雅和程序的健壮性。一句话,开始写代码知道自己要干嘛,这很重要。

2 逻辑错误,在开始写代码前,和有开发经验的上司聊聊怎么实现,怎么避免代码冗余,怎么避免多线程导致问题等。有个例子:用Fragment栈做返回,调用方法destoryView()和crateView()恢复界面,由于刚开始没有考虑,在oncreate()方法中适配数据,导致后边返回逻辑出错,虐心!

3 空指针异常 这是很常见的导致程序奔溃的异常,写前用伪代码(听了公司大神分享)预演一次逻辑,并在需要使用对象的时候,做一次非空判断,这是个很好的习惯。

4 数组越界访问异常,这个问题的产生和空指针问题基本差不多,逻辑不清楚,也有些地方考虑的不够周全。用伪代码预演可以很好的避免。

5 debug 这个模式是调试的神器,以后在项目中可以多多使用。

漫漫长路,大家一起加油奋斗

你可能感兴趣的文章
ubuntu sudo apt-get update 失败 解决方法
查看>>
xxx is not in the sudoers file.This incident will be reported.的解决方法
查看>>
Host ‘XXX‘ is not allowed to connect to this MySQL server 解决方案/如何开启MySQL的远程帐号
查看>>
MySQL Replication 主从复制全方位解决方案
查看>>
解决微信二次分享失败--后面被加上from=singlemessage&isappinstalled=0的解决方案
查看>>
mysql启动错误1067进程意外终止的解决方法
查看>>
finished with exit code -1073740791 (0xC0000409)解决方案
查看>>
解决teamviewer试用期到期的方法
查看>>
解决PKIX:unable to find valid certification path to requested target 的问题
查看>>
【vue】使用localStorage解决vuex在页面刷新后数据被清除的问题
查看>>
NullPointerException异常的原因及java异常??
查看>>
SQLyog连接MySQL时出现的2058错误解决方法
查看>>
解决端口被占用问题
查看>>
问题解决——AttributeError: module ‘tensorflow‘ has no attribute ‘placeholder‘
查看>>
解决UnicodeEncodeError: ‘ascii‘ codec can‘t encode characters in position 问题(转)
查看>>
linux下搭建redis并解决无法连接redis的问题
查看>>
jquery动态添加元素无法触发绑定事件的解决方案。
查看>>
php提示Notice: Undefined index解决方法
查看>>
使用Redis分布式锁处理并发,解决超卖问题
查看>>
idea 中解决maven 包冲突的问题(maven helper)
查看>>