根据团队开发经验,不断完善中
哪些地方容易出bug
条件覆盖不全
- if else 条件只覆盖了if ,else里没有处理
- 条件执行,提前return掉,后续的其他处理被忽略
- 复制粘贴:复制粘贴是最容易出错的,表现在 if else 条件语句里面,最后个else if 的
tvClassBehaviorContent
没被赋值
Paste_Image.png
逻辑混乱
- 复杂判断:一个if判断语句里面涵盖了多种判断条件
- 多头领导:比如一个Activity的View控制,除了activity本身,又开放给了子fragment
- 异步操作,状态同步:子页面A异步操作结果,需要对父的UI做修改,而此时用户切换到了子页面B,子页面A的UI操作,会出现在子页面B上。
- 异步操作,线程同步:
举个rxJavasubscribeOn(Schedulers.newThread())
的例子,异步方法没执行完就返回了,此时数据是空的
private List<Person> getPeopleList() {
final List<Person> peopleList = new ArrayList<>();
Observable.from(MOCK_LIST()).filter(new Func1<Person, Boolean>() {
@Override
public Boolean call(Person m_class) {
return m_class.getAge() > 50;
}
}).toList().subscribeOn(Schedulers.newThread()).subscribe(new Action1<List<Person>>() {
@Override
public void call(List<Person> classes) {
peopleList.addAll(classes);
}
});
return peopleList;
}
网友评论