avoid_print: 프로덕션 코드에서 print 호출을 피하세요
avoid_print: 프로덕션 코드에서 print 호출을 피하세요
avoid_print는 프로덕션 코드에서 print 호출을 쓰지 말라고 알려주는 린트(lint) 규칙이에요. 디버깅 출력을 더 적절한 방식으로 처리하도록 이끌어줘요.
출처: avoid_print
본문
상세 설명
프로덕션 코드에서는 print 호출을 피하세요. 프로덕션 코드라면 로깅(logging) 프레임워크 사용을 고려해 보세요. Flutter를 사용한다면 debugPrint를 쓰거나, kDebugMode 검사로 print 호출을 감쌀 수 있어요.
BAD:
void f(int x) {
print('debug: $x');
...
}
GOOD:
void f(int x) {
debugPrint('debug: $x');
...
}
GOOD:
void f(int x) {
log('log: $x');
...
}
GOOD:
void f(int x) {
if (kDebugMode) {
print('debug: $x');
}
...
}
활성화하기
avoid_print 규칙을 활성화하려면 analysis_options.yaml 파일의 linter > rules 아래에 avoid_print를 추가해요.
linter:
rules:
- avoid_print
대신 YAML map 문법으로 린터 규칙을 설정한다면, linter > rules 아래에 avoid_print: true를 추가해요.
linter:
rules:
avoid_print: true
참고로 이 규칙은 Dart 2.5에서 추가됐고, 자동 수정(fix)이 제공돼요. Flutter 프로젝트에서 특히 자주 볼 수 있어요.