코드 냄새 160 - 잘못된 ID = 9999
TL;DR: Don't couple real IDs with invalid ones. In fact: Avoid IDs.
문제
솔루션
문맥
컴퓨팅 초기에는 데이터 유형이 엄격했습니다.
그런 다음 우리는 발명했습니다.
그런 다음 다형성 특수 값을 사용하여 성장하고 특수 시나리오를 모델링합니다.
샘플 코드
잘못된
#include "stdio.h"
#include "stdlib.h"
#include "stdbool.h"
#define INVALID_VALUE 999
int main(void)
{
int id = get_value();
if (id==INVALID_VALUE)
{
return EXIT_FAILURE;
// id is a flag and also a valid domain value
}
return id;
}
int get_value()
{
// something bad happened
return INVALID_VALUE;
}
// returns EXIT_FAILURE (1)
오른쪽
#include "stdio.h"
#include "stdlib.h"
#include "stdbool.h"
// No INVALID_VALUE defined
int main(void)
{
int id;
id = get_value();
if (!id)
{
return EXIT_FAILURE;
// Sadly, C Programming Language has no exceptions
}
return id;
}
get_value()
{
// something bad happened
return false;
}
// returns EXIT_FAILURE (1)
발각
[X] 반자동
코드에서 특수 상수와 특수 값을 확인할 수 있습니다.
태그
잘못된
#include "stdio.h"
#include "stdlib.h"
#include "stdbool.h"
#define INVALID_VALUE 999
int main(void)
{
int id = get_value();
if (id==INVALID_VALUE)
{
return EXIT_FAILURE;
// id is a flag and also a valid domain value
}
return id;
}
int get_value()
{
// something bad happened
return INVALID_VALUE;
}
// returns EXIT_FAILURE (1)
오른쪽
#include "stdio.h"
#include "stdlib.h"
#include "stdbool.h"
// No INVALID_VALUE defined
int main(void)
{
int id;
id = get_value();
if (!id)
{
return EXIT_FAILURE;
// Sadly, C Programming Language has no exceptions
}
return id;
}
get_value()
{
// something bad happened
return false;
}
// returns EXIT_FAILURE (1)
발각
[X] 반자동
코드에서 특수 상수와 특수 값을 확인할 수 있습니다.
태그
결론
외부 식별자와 관련된 숫자를 사용해야 합니다.
외부 식별자가 없으면 숫자가 아닙니다.
처지
코드 냄새 120 - 순차 ID
Maxi Contieri ・ 3월 10일 ・ 2분 읽기
코드 냄새 12 - Null
Maxi Contieri ・ 2020년 10월 31일 ・ 2분 읽기
#codenewbie
#tutorial
#oop
더 많은 정보
Null: 10억 달러의 실수
Maxi Contieri ・ 11월 18 '20 ・ 6분 읽기
#codenewbie
#tutorial
#programming
#webdev
Y2K22 - 우리를 부끄럽게 만든 실수
Maxi Contieri ・ 1월 13일 ・ 3분 읽기
부인 성명
코드 냄새는 그냥 내 .
학점
사진 제공: Markus Spiske on Unsplash
Bugs lurk in corners and congregate at boundaries.
보리스 베이저
소프트웨어 엔지니어링 좋은 인용구
Maxi Contieri ・ 12월 28일 '20 ・ 13분 읽기
#codenewbie
#programming
#quotes
#software
이 기사는 CodeSmell 시리즈의 일부입니다.
코드에서 냄새 나는 부분을 찾는 방법
Maxi Contieri ・ 2021년 5월 21일 ・ 7분 읽기
#codenewbie
#tutorial
#codequality
#beginners
Reference
이 문제에 관하여(코드 냄새 160 - 잘못된 ID = 9999), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/mcsee/code-smell-160-invalid-id-9999-1b70
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
코드 냄새 120 - 순차 ID
Maxi Contieri ・ 3월 10일 ・ 2분 읽기
코드 냄새 12 - Null
Maxi Contieri ・ 2020년 10월 31일 ・ 2분 읽기
#codenewbie
#tutorial
#oop
더 많은 정보
Null: 10억 달러의 실수
Maxi Contieri ・ 11월 18 '20 ・ 6분 읽기
#codenewbie
#tutorial
#programming
#webdev
Y2K22 - 우리를 부끄럽게 만든 실수
Maxi Contieri ・ 1월 13일 ・ 3분 읽기
부인 성명
코드 냄새는 그냥 내 .
학점
사진 제공: Markus Spiske on Unsplash
Bugs lurk in corners and congregate at boundaries.
보리스 베이저
소프트웨어 엔지니어링 좋은 인용구
Maxi Contieri ・ 12월 28일 '20 ・ 13분 읽기
#codenewbie
#programming
#quotes
#software
이 기사는 CodeSmell 시리즈의 일부입니다.
코드에서 냄새 나는 부분을 찾는 방법
Maxi Contieri ・ 2021년 5월 21일 ・ 7분 읽기
#codenewbie
#tutorial
#codequality
#beginners
Reference
이 문제에 관하여(코드 냄새 160 - 잘못된 ID = 9999), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/mcsee/code-smell-160-invalid-id-9999-1b70
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Null: 10억 달러의 실수
Maxi Contieri ・ 11월 18 '20 ・ 6분 읽기
#codenewbie
#tutorial
#programming
#webdev
Y2K22 - 우리를 부끄럽게 만든 실수
Maxi Contieri ・ 1월 13일 ・ 3분 읽기
코드 냄새는 그냥 내 .
학점
사진 제공: Markus Spiske on Unsplash
Bugs lurk in corners and congregate at boundaries.
보리스 베이저
소프트웨어 엔지니어링 좋은 인용구
Maxi Contieri ・ 12월 28일 '20 ・ 13분 읽기
#codenewbie
#programming
#quotes
#software
이 기사는 CodeSmell 시리즈의 일부입니다.
코드에서 냄새 나는 부분을 찾는 방법
Maxi Contieri ・ 2021년 5월 21일 ・ 7분 읽기
#codenewbie
#tutorial
#codequality
#beginners
Reference
이 문제에 관하여(코드 냄새 160 - 잘못된 ID = 9999), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/mcsee/code-smell-160-invalid-id-9999-1b70
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Bugs lurk in corners and congregate at boundaries.
소프트웨어 엔지니어링 좋은 인용구
Maxi Contieri ・ 12월 28일 '20 ・ 13분 읽기
#codenewbie
#programming
#quotes
#software
코드에서 냄새 나는 부분을 찾는 방법
Maxi Contieri ・ 2021년 5월 21일 ・ 7분 읽기
#codenewbie
#tutorial
#codequality
#beginners
Reference
이 문제에 관하여(코드 냄새 160 - 잘못된 ID = 9999), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/mcsee/code-smell-160-invalid-id-9999-1b70텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)