如何写出更具可读性的代码

各位同学,请看下面的代码:
        public String login2() {
        if (param_user.getUsername().equals("ADMIN")) {
            User db_user = userDao.findByUserName(param_user.getUsername());
            if (db_user != null) {
                boolean login_result = db_user.login(param_user);
                if (login_result) {
                    session.setAttribute("userid", param_user.getUsername());
                    return LOGIN_SUCC;
                } else {
                    return PASSWORD_ERROR;
                }
            } else {
                return USER_NOT_EXIST;
            }
        } else {
            return NOT_ALLOW_LOGIN;
        }

    }

这是一个标准的login流程,现在在工作中也看到好多人这样写。是的,这段代码并没有什么问题,但是缩进的层次太多了,如果每个if,else里面需要进行很多操作的话,那会使看代码的人头晕目眩,如果使用一下代码:
 
      public String login1() {
        if (!param_user.getUsername().equals("ADMIN"))
            return NOT_ALLOW_LOGIN;

        User db_user = userDao.findByUserName(param_user.getUsername());
        if (db_user == null)
            return USER_NOT_EXIST;

        boolean login_result = db_user.login(param_user);

        if (!login_result)
            return PASSWORD_ERROR;

        session.setAttribute("userid", param_user.getUsername());
        return LOGIN_SUCC;
     }


效果和第一段代码一样,但是代码的缩进少了很多,增加了代码的可读性。

猜你喜欢

转载自codeone.iteye.com/blog/1186018
今日推荐