高效CodeReview的建议

根据团队开发经验,不断完善中

哪些地方容易出bug

条件覆盖不全

  1. if else 条件只覆盖了if ,else里没有处理
  2. 条件执行,提前return掉,后续的其他处理被忽略
  3. 复制粘贴:复制粘贴是最容易出错的,表现在 if else 条件语句里面,最后个else if 的tvClassBehaviorContent没被赋值
    高效CodeReview的建议_第1张图片
    Paste_Image.png

逻辑混乱

  1. 复杂判断:一个if判断语句里面涵盖了多种判断条件
  2. 多头领导:比如一个Activity的View控制,除了activity本身,又开放给了子fragment
  3. 异步操作,状态同步:子页面A异步操作结果,需要对父的UI做修改,而此时用户切换到了子页面B,子页面A的UI操作,会出现在子页面B上。
  4. 异步操作,线程同步:
    举个rxJavasubscribeOn(Schedulers.newThread())的例子,异步方法没执行完就返回了,此时数据是空的
private List getPeopleList() {
        final List peopleList = new ArrayList<>();

        Observable.from(MOCK_LIST()).filter(new Func1() {
            @Override
            public Boolean call(Person m_class) {
                return m_class.getAge() > 50;
            }

        }).toList().subscribeOn(Schedulers.newThread()).subscribe(new Action1>() {
            @Override
            public void call(List classes) {
                peopleList.addAll(classes);
            }
        });
        return peopleList;
    }

你可能感兴趣的:(高效CodeReview的建议)