#002 - 깨끗한 코드 - 이름
5988 단어 codequalityproductivity
이름
당신의 의도를 밝히십시오
Intent : Nawaya in Arabic
좋은 이름을 가진 변수는 코드를 읽는 데 도움이 됩니다.
int d; // elapsed time in days
예전에는 문서가 좋았지만 지금은 변수 이름을 자신의 주석으로 지정하는 것이 좋습니다.
int elapsedTimeInDays;
코드가 다음과 같은 경우
int mpd = (n/2)+3
이렇게 쓰는게 낫다
int middle = n/2;
int days = 3;
int middlePlusDays = middle + days;
이것이 우리에게 더 많은 CPU 주기를 요구할 것이라는 오래된 사고방식이 있습니다. 그러나 우리는 이제 중요한 것이 코드 유지 관리라는 사실을 알게 된 새로운 세상에 살고 있습니다.
const int ID_NONE = 0; // constant ID for NONE
const int ID_FIRST = 0;// constant ID for FIRST
const int ID_SECOND = 0;// constant ID for SECOND
const int ID_BOTH = 0;// constant ID for BOTH
변수 이름과 주석을 보세요. 이 코드에서 무엇을 이해하셨나요?
실제로 이름이나 댓글은 독자인 나에게 아무 의미가 없습니다.
당신은 나에게 코드 읽기가 부끄러운 일이라고 말할 것입니다. 나는 바쁘고 게으르다. 당신의 나쁜 코드를 쓸 시간이 없습니다.
잘못된 정보를 피하십시오
int tuesday = 1;
이 표현을 보세요 무슨 뜻이라고 생각하세요? 내가 필요한 것은 오늘이 화요일인지 확인하는 것입니다.
이렇게 쓰면 좋지않나요?
int isTuesday = 1;
이것은 잘못된 정보입니다. 이것이 부울이라는 것을 이해하지 못할 수 있는 변수를 제공합니다.
발음 가능한 이름
string BMW;
이걸 어떻게 발음해야 하나요?
이것을 어떻게 이해해야 할까요? bmw 자동차를 의미합니까? boomwww처럼 읽어야 할까요?
이게 더 좋지 않아?
string BestMatchingWord;
이름은 타인과의 소통을 위한 도구이므로 전달하고자 하는 내용을 잘 표현해야 합니다.
인코딩을 피하십시오
그것들은 헝가리 표기법입니다. 예전에는 변수의 유형이 무엇인지 알기 위해 유용했습니다. 그러나 이제 우리의 IDE는 변수 위에 마우스를 가져가면 변수의 유형이 무엇인지 알 수 있으며 컴파일러, 단위 테스트는 모든 유형 오류로부터 우리를 보호합니다.
품사
함수는
getTotal() , divide()
와 같은 메서드여야 합니다.구조체는 다음과 같은 형용사여야 합니다
struct COLORS = {...}
.부울은
isUpper() , isLower()
와 같이 설명적이어야 합니다.귀하의 calsses는
class Account
가 아닌 class DATA , class INFO , class MANAGER
와 같아야합니다.범위 길이 규칙
for (TestResult tr : configIssues) {
Element element = createElement(d , tr);
rootElement.appendChild(element);
}
tr
는 선언된 국자가 작고 그의 선언 직후에 사용되었기 때문에 훌륭한 이름입니다.그러나 좋지 않은 것은
d
동일한 방어 범위에서 선언되지 않았다는 것입니다.d
는 Document 클래스의 인스턴스이므로 doc 또는 document라고 부르는 것이 좋습니다.따라서 작은 범위에서는 짧은 이름이 더 좋지만 큰 범위에서는 더 큰 이름이 더 좋으므로 크기가 중요합니다 :)
함수의 경우 클래스 외부의 다른 많은 위치에서 호출될 공용 함수는 작은 이름을 가져야 합니다. 왜요? 클래스에 이름이 있음 예
File.Open()
Calline 상상File.openFileAndThrowIfNotFound()
비공개 함수는 로컬에서 호출되기 때문에 길어야 합니다.
Reference
이 문제에 관하여(#002 - 깨끗한 코드 - 이름), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/elkhatibomar/002-clean-code-names-5akk텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)