코드 냄새 145 - 단락 해킹
TL;DR: Don't use Boolean comparison for side effect functions.
문제
솔루션
문맥
똑똑한 프로그래머는 이러한 개선에 대한 강력한 증거가 없는 경우에도 해킹되고 모호한 코드를 작성하는 것을 좋아합니다.
성급한 최적화는 항상 가독성을 떨어뜨립니다.
샘플 코드
잘못된
userIsValid() && logUserIn();
// this expression is short circuit
// Does not value second statament
// Unless the first one is true
functionDefinedOrNot && functionDefinedOrNot();
// in some languages undefined works as a false
// If functionDefinedOrNot is not defined does
// not raise an erron and neither runs
오른쪽
if (userIsValid()) {
logUserIn();
}
if(typeof functionDefinedOrNot == 'function') {
functionDefinedOrNot();
}
// Checking for a type is another code smell
발각
[X] 반자동
함수가 불순한지 확인하고 단락을 IF로 변경할 수 있습니다.
일부 실제 린터는 이 문제에 대해 경고합니다.
태그
잘못된
userIsValid() && logUserIn();
// this expression is short circuit
// Does not value second statament
// Unless the first one is true
functionDefinedOrNot && functionDefinedOrNot();
// in some languages undefined works as a false
// If functionDefinedOrNot is not defined does
// not raise an erron and neither runs
오른쪽
if (userIsValid()) {
logUserIn();
}
if(typeof functionDefinedOrNot == 'function') {
functionDefinedOrNot();
}
// Checking for a type is another code smell
발각
[X] 반자동
함수가 불순한지 확인하고 단락을 IF로 변경할 수 있습니다.
일부 실제 린터는 이 문제에 대해 경고합니다.
태그
결론
똑똑해 보이려고 하지 마세요.
우리는 더 이상 50대가 아닙니다.
팀 개발자가 되십시오.
처지
코드 냄새 140 - 단락 평가
Maxi Contieri ・ 6월 13일 ・ 2분 읽기
#webdev
#javascript
#beginners
#programming
코드 냄새 06 - 너무 영리한 프로그래머
Maxi Contieri ・ 2020년 10월 25일 ・ 2분 읽기
#codenewbie
#tutorial
#beginners
코드 냄새 149 - 선택적 연결
Maxi Contieri ・ 7월 16일 ・ 2분 읽기
#javascript
#webdev
#beginners
#programming
학점
Unsplash에 있는 Michael Dziedzic의 사진
A computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are, in short, a perfect match.
빌 브라이슨
소프트웨어 엔지니어링 좋은 인용구
Maxi Contieri ・ 12월 28일 '20 ・ 13분 읽기
#codenewbie
#programming
#quotes
#software
이 기사는 CodeSmell 시리즈의 일부입니다.
코드에서 냄새 나는 부분을 찾는 방법
Maxi Contieri ・ 2021년 5월 21일 ・ 7분 읽기
#codenewbie
#tutorial
#codequality
#beginners
Reference
이 문제에 관하여(코드 냄새 145 - 단락 해킹), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/mcsee/code-smell-145-short-circuit-hack-4l4p
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
코드 냄새 140 - 단락 평가
Maxi Contieri ・ 6월 13일 ・ 2분 읽기
코드 냄새 06 - 너무 영리한 프로그래머
Maxi Contieri ・ 2020년 10월 25일 ・ 2분 읽기
코드 냄새 149 - 선택적 연결
Maxi Contieri ・ 7월 16일 ・ 2분 읽기
학점
Unsplash에 있는 Michael Dziedzic의 사진
A computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are, in short, a perfect match.
빌 브라이슨
소프트웨어 엔지니어링 좋은 인용구
Maxi Contieri ・ 12월 28일 '20 ・ 13분 읽기
#codenewbie
#programming
#quotes
#software
이 기사는 CodeSmell 시리즈의 일부입니다.
코드에서 냄새 나는 부분을 찾는 방법
Maxi Contieri ・ 2021년 5월 21일 ・ 7분 읽기
#codenewbie
#tutorial
#codequality
#beginners
Reference
이 문제에 관하여(코드 냄새 145 - 단락 해킹), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/mcsee/code-smell-145-short-circuit-hack-4l4p
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
A computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are, in short, a perfect match.
소프트웨어 엔지니어링 좋은 인용구
Maxi Contieri ・ 12월 28일 '20 ・ 13분 읽기
코드에서 냄새 나는 부분을 찾는 방법
Maxi Contieri ・ 2021년 5월 21일 ・ 7분 읽기
Reference
이 문제에 관하여(코드 냄새 145 - 단락 해킹), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/mcsee/code-smell-145-short-circuit-hack-4l4p텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)