eslint/max-lines-per-function Pedantic
어떤 기능을 하는가
함수 내 코드 줄 수의 최대치를 강제합니다. 이 규칙은 함수가 지정된 줄 수를 초과하지 않도록 보장하여, 유지보수 및 이해가 더 쉬운 작고 집중적인 함수를 촉진합니다.
왜 좋지 않은가
일부 사람들은 큰 함수를 코드 결함(코드 냄새)으로 간주합니다. 큰 함수는 많은 작업을 수행하며, 어떤 일이 일어나고 있는지 추적하기 어렵게 만들 수 있습니다. 많은 코딩 스타일 가이드에서는 함수가 포함할 수 있는 줄 수에 한도를 두라고 규정합니다. 이 규칙은 그러한 스타일을 강제하는 데 도움이 됩니다.
예시
특정 최대 값으로 설정했을 때 잘못된 코드 예시:
js
/* { "eslint/max-lines-per-function": ["error", 2] } */
function foo() {
const x = 0;
}
/* { "eslint/max-lines-per-function": ["error", 4] } */
function foo() {
// 주석 다음에 빈 줄
const x = 0;
}특정 최대 값으로 설정했을 때 올바른 코드 예시:
js
/* { "eslint/max-lines-per-function": ["error", 3] } */
function foo() {
const x = 0;
}
/* { "eslint/max-lines-per-function": ["error", 5] } */
function foo() {
// 주석 다음에 빈 줄
const x = 0;
}구성
이 규칙은 다음과 같은 속성을 갖는 구성 객체를 수용합니다.
IIFEs
type: boolean
기본값: false
IIFEs 옵션은 즉시 실행 함수 표현식(IIFEs)이 줄 수 계산에 포함되는지를 제어합니다. 기본적으로 IIFEs는 고려되지 않지만, true로 설정되면 함수의 줄 수 계산에 포함됩니다.
max
type: integer
기본값: 50
함수 내에서 허용되는 최대 줄 수.
skipBlankLines
type: boolean
기본값: false
공백만으로 이루어진 줄을 건너뜁니다.
skipComments
type: boolean
기본값: false
주석만 포함된 줄을 건너뜁니다.
사용 방법
이 규칙을 구성 파일이나 명령줄 인터페이스에서 활성화하려면 다음을 사용할 수 있습니다:
json
{
"rules": {
"max-lines-per-function": "error"
}
}bash
oxlint --deny max-lines-per-function