Package.json 설정을 활용한 JavaScript 프로젝트의 리팩토링 지침 설정하기

리팩토링은 코드의 가독성, 유지보수성, 확장성을 향상시키기 위해 코드를 개선하는 작업입니다. JavaScript 프로젝트에서 리팩토링을 진행할 때는 Package.json 파일을 활용하여 리팩토링 지침을 설정할 수 있습니다. 이 글에서는 Package.json 설정을 통해 JavaScript 프로젝트의 리팩토링을 지원하는 방법에 대해 알아보겠습니다.

1. ESLint 설정 추가하기

ESLint는 JavaScript 코드의 문제점을 찾아주고, 일관된 코딩 스타일을 유지할 수 있도록 도와주는 도구입니다. Package.json 파일에서 "eslintConfig" 속성을 추가하여 ESLint 설정을 지정할 수 있습니다.

{
  "eslintConfig": {
    "extends": "eslint:recommended",
    "rules": {
      "no-unused-vars": "error",
      "no-console": "off"
    }
  }
}

위 예시에서는 ESLint의 기본 설정을 활용하고, "no-unused-vars""no-console" rule을 추가하여 사용하지 않는 변수와 콘솔 사용을 감지하도록 설정하였습니다.

2. Prettier 설정 추가하기

Prettier는 코드의 포맷팅을 자동으로 처리해주는 도구입니다. Package.json 파일에서 "prettier" 속성을 추가하여 Prettier 설정을 지정할 수 있습니다.

{
  "prettier": {
    "singleQuote": true,
    "trailingComma": "es5"
  }
}

위 예시에서는 작은따옴표를 사용하는 "singleQuote" 옵션과 ES5에서도 마지막 쉼표를 허용하는 "trailingComma" 옵션을 설정하였습니다.

3. Husky와 lint-staged 설정 추가하기

Husky와 lint-staged를 함께 사용하면, Git 커밋 전에 코드에 대한 검사를 자동으로 수행할 수 있습니다. Package.json 파일에서 "husky""lint-staged" 속성을 추가하여 Husky와 lint-staged 설정을 지정할 수 있습니다.

{
  "husky": {
    "hooks": {
      "pre-commit": "lint-staged"
    }
  },
  "lint-staged": {
    "*.js": [
      "eslint --fix",
      "prettier --write"
    ]
  }
}

위 예시에서는 "pre-commit" hook을 설정하여 커밋 전에 lint-staged를 실행하도록 하였고, lint-staged에는 JavaScript 파일에 대해 ESLint와 Prettier를 순서대로 실행하도록 설정하였습니다. 이를 통해 Git 커밋 시 코드의 일관성과 품질을 관리할 수 있습니다.

4. 참고 자료

위의 설정을 참고하여 JavaScript 프로젝트에서 Package.json을 활용한 리팩토링 지침을 설정해보세요!

#JavaScript #리팩토링