Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

6个规则去净化你的代码 #79

Open
reng99 opened this issue Nov 20, 2020 · 0 comments
Open

6个规则去净化你的代码 #79

reng99 opened this issue Nov 20, 2020 · 0 comments
Labels
advice 建议 blog a single blog

Comments

@reng99
Copy link
Owner

reng99 commented Nov 20, 2020

banner

可读性代码就是可维护性代码!

1、注重命名

为一个事件命名是很困难的。虽然困难但是非常有必要。

想象以下,将两个数组合并成一个数组,并生成一个唯一值的数组。那么你会怎么命名它呢?我们也许会这样命名?

function mergeNumberListIntoUniqueList(listOne, listTwo) {
  return [...new Set([...listOne, ...listTwo])]
}

上面的命名并不糟糕,但是还不是很友好。你可以将一个功能函数拆分为两个功能函数,这样命名更友好和函数复用性更好。

function mergeLists(listOne, listTwo) {
  return [...listOne, ...listTwo]
}

function createUniqueList(list) {
  return [...new Set(list)]
}

2、IF语句简化

假设我们有下面的代码:

if(value === 'duck' || value === 'dog' || value === 'cat') {
  // ...
}

我们可以这样解决:

const options = ['duck', 'dog', 'cat'];
if (options.includes(value)) {
  // ...
}

将乱七八糟的条件判断放到一个变量中存储,比看臃肿的表达式要好很多。

3、及早返回

有下面的代码:

function handleEvent(event) {
  if (event) {
    const target = event.target;
    if (target) {
      // Your awesome piece of code that uses target
    }
  }
}

及早返回使得我们的代码更加易读:

function handleEvent(event) {
  if (!event || !event.target) {
    return;
  }
  // Your awesome piece of code that uses target
}

4、解构赋值

javascript中,我们可以对objectsarrays进行解构赋值。

例如:

// object 解构赋值
const numbers = {one: 1, two: 2};
const {one, two} = numbers;
console.log(one); // 1
console.log(two); // 2

// array 解构赋值
const numbers = [1, 2, 3, 4, 5];
const [one, two] = numbers;
console.log(one); // 1
console.log(two); // 2

5、童子军规则

童子军有一条规则:永远保持离开时的露营比你发现它时更整洁。如果你在地面上发现了脏东西,那么无论是否是你留下的,你都要将它清理干净。你要有意地为下一组露营者改善环境。

我们编写代码也是这样子,如果你在代码中发现了脏代码,那么你可以尝试去修改它,即使是一个没有被引用到的变量名。

6、代码风格

在你的团队中使用一种代码风格,比如限定代码缩进的规范是两空格呢还是四空格;使用单引号呢还是双引号呢;使用同类的一种框架呢,还是流行两种解决方案的框架呢...这样团队中人员接手项目的成本就会降低,开发人员的心里减少排斥感~

参考:https://dev.to/joachimzeelmaekers/clean-up-your-code-by-applying-these-7-rules-35ee。更多内容可以戳jimmy blogs

@reng99 reng99 added blog a single blog advice 建议 labels Nov 20, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
advice 建议 blog a single blog
Projects
None yet
Development

No branches or pull requests

1 participant