공통 코드리뷰 안내사항

  1. 코드리뷰 요청 전 불필요한 코드는 모두 제거해주세요.
  2. prettier를 통해 코드 포맷팅을 자동화하세요.
  3. 자신이 작성하고 있는 코드 스타일이 안티패턴일까 고민이 된다면 eslint를 도입하는 것 또한 추천합니다.
  4. 매직넘버(https://en.wikipedia.org/wiki/Magic_number_(programming))는 상수화 해서 어떤 의미인지 꼭 나타내주세요
if(text.length === 20) { ... } // 그래서 이 20이 뭔데?
  1. 문자열 형태로 비교하는 것도 오타에 의해 충분히 버그를 유발할 수 있는 요소입니다. 상수화 시켜서 사용해주세요!
case 'offical': // official 아닌가?
case 'trade':
   ... 

그 외..

  1. 디스트럭처링은 언제할까? 반복되는 코드는 언제 변수에 할당할까?

이건 저의 개인적인 규칙인데요. (제 맘대로 정했단 뜻입니다.)

const obj = {
  a: {
    b: {
      c: 10
    },
    arr: [1, 2, 3]
  },
  other: 20,
};

function A() {
  if(obj.a.b.c === 10) {
    return 10;
  } else if(obj.a.arr.length === 3) {
    return obj.a.arr.length;
  }
}

function A() {
  if(obj.a.b.c === 10 && obj.a.arr.length === 3) {
    return 1;
  } else if(obj.a.arr.length !== 3) {
    return 2;
  }
  return 3;  
}

-> 요렇게

function A() {
  const { b, arr } = obj.a;
  const arrLength = arr.length;

  if(b.c === 10 && arrLength === 3) {
    return true;
  } else if(arrLength !== 3) {
    return 
  }
  return 3;
}
  1. 불필요하게 할당하지 말라면서 왜 또 할당하라는 걸까?
const 내재산 = 1;
const 자가유무 = false;
const 아파트가격 = 12;
const 신용대출 = 3;
const 담보대출 = 2;

if(자가유무 === false && 내재산 + 신용대출 + 담보대출 >= 아파트가격) { ... } // 조건이 복잡하다.

-> 이럴땐

const 집을살수있나 = 자가유무 === false && 내재산 + 신용대출 + 담보대출 >= 아파트가격;
if(집을살수있나) { ... }
  1. $ prefix의 관한 개인적인 생각..