十个气死技术leader的小技巧

162 阅读3分钟

1.众所周知:达成同样的功能所用的代码越少工程师越强,所以我们的变量名命越短越好。

Good 👍🏻

const a = 'xiaoli';
const b = 12;

Bad 👎🏻

const userName = 'xiaoli';
const userAge = 12;

2.众所周知:前端页面请求的静态资源越少速度越快,所以我们的代码要尽量写在一个文件里,文件行数越长越好。

Good 👍🏻

many-lines.png

Bad 👎🏻

less-lines.png

3.众所周知:机器是二元判断的,只知道是或否,所以写代码时候只用if语句是机器最好理解的。

Good 👍🏻

if(res.status === '200') {
     // do something
} else if(res.status === '404') {
     // do something
} else if(res.status === '500') {
     // do something
} else {
    // do something
}

Bad 👎🏻

// bad one
switch (res.status) {
    case '200':
        // do something
        break;
    case '404':
        // do something
        break;
    case '500':
        // do something
        break;
    default:
        // do something
}
// bad two
const statusMap = {
    '200': ok,
    '404': notFound,
    '500': error
};
statusMap[status]();

4.众所周知:客户是不会打开控制台的,所以程序员一定要尽情的在线上打log。

Good 👍🏻

const work = dataSource => {
    console.log(dataSource);
    setDataSource(dataSource);
};

Bad 👎🏻

const work = dataSource => {
    setDataSource(dataSource);
};

5.众所周知:开发是一个玄学的过程,这次没用到的代码下次没准就用到了,所以无用的代码一定不能删除,最多注释掉。

Good 👍🏻

// const initConfig = {};
const defaultConfig = {};
run(defaultConfig);

Bad 👎🏻

const defaultConfig = {};
run(defaultConfig);

6.众所周知:如果代码有问题,别人会联系文件的注释里author,所以一定要记得把author写成你的leader,毕竟为伙伴尽力这种事,值得赞扬。

Good 👍🏻

/**
 * @file XXX组件
 * @author 你的leader(你leader的邮箱)
 * @date 你写下这段代码的日期
 */

Bad 👎🏻

/**
 * @file XXX组件
 * @author 你自己(你自己的邮箱)
 * @date 你写下这段代码的日期
 */

7.众所周知:一个人一生最多写八千万行代码,谁先写完谁先走,所以像readme这种东西,能不写就不写。

Good 👍🏻

without-readme.png

Bad 👎🏻 readme.png

8.众所周知:看不懂的代码才是好代码,所以常量魔数什么的直接写就行了。

Good 👍🏻

post(url, {type: 1});

Bad 👎🏻

const PAYING_USER_TYPE = 1;
post(url, {type: PAYING_USER_TYPE});

9.众所周知:如果你的样式没生效,一定是优先级不够高,just use important!

Good 👍🏻

.content {
  margin-top:20px !important;
}

Bad 👎🏻

.container {
  .content {
    margin-top:20px;
  }
}

10.众所周知:页面都报错了还有啥课处理的,所以try catch的catch分支根本不需要处理。

Good 👍🏻

try {
  // do something
} catch(error) {

}

Bad 👎🏻

try {
  // do something
} catch(error) {
  // 提醒用户报错
  setErrorMessage(error.message)
  // 打进错误日志
  logError(error)
}

重要提示!

好吧我摊牌了,上面都是我瞎编的,以上的十条原则请伙伴们务必要以相反的角度来理解所有观点,这样就能避免写出垃圾代码。

当然,以上十条烂代码原则还只是浅尝辄止,如果伙伴们发现有一些难以忍受的烂代码习惯,请评论,这样也好让我出个《气leader2》😂😂😂

(不会吧不会吧,不会真的有人用上面的[good]里的代码写代码吧,那你可真棒,请找HR领取大礼包~)

real.jpg