클린 코드 팁: 멘탈 매핑 피하기

2966 단어 cleancode
모든 이름은 의미 있고 명확해야 합니다. 이름이 명확하지 않으면 다른 개발자(또는 미래의 자신)가 의미하는 바를 잘못 해석할 수 있습니다.

약어가 명백하거나 일반적인 경우가 아니면 이름을 약어로 표시하기 위해 정신적 매핑을 사용하지 마십시오.

이름은 정신적 매핑을 기반으로 해서는 안 되며, 컨텍스트가 없는 경우에는 더욱 그렇습니다.

나쁜 정신 매핑



이 나쁜 예를 들면 다음과 같습니다.

public void RenderWOSpace()


WOSpace란 무엇입니까? 문맥이 없으면 독자는 그 의미를 이해하지 못할 것입니다. 좋아요, 어떤 사람들은 WO를 without의 약어로 사용합니다.

따라서 더 나은 이름은 물론 다음과 같습니다.

public void RenderWithoutSpace()


허용되는 매핑



일부 약어는 매우 명백하며 사용하기에 전혀 문제가 없습니다.

예를 들어 km는 km와 같은 표준 약어입니다.

public int DistanceInKm()


예를 들어 루프에서 사용되는 변수:

for (int i = 0; i <; 100; i++){}


또는 람다:

int[] collection = new int[] { 2, 3, 5, 8 };
collection.Where(c => c < 5);


그것은 모두 범위에 따라 다릅니다. 범위가 좁을수록 의미 없는(오해하지 마세요!) 변수가 될 수 있습니다.

엣지 케이스



경우에 따라 일반적인(거의 분명한) 약어가 여러 의미를 가질 수 있습니다. DB는 무엇을 의미합니까? 데이터 베이스? 데시벨? 그것은 모두 문맥에 달려 있습니다!

따라서 a_dbConnection는 분명히 데이터베이스를 나타냅니다. 그러나 adefaultDb는 기본 데시벨 값입니까 아니면 기본 데이터베이스입니까?

결론



늘 그렇듯이 명확성은 좋은 코드의 핵심입니다. 클래스, 모듈 또는 변수의 이름은 모든 사람에게 명확하고 분명해야 합니다.

그래서 항상 use meaningful names !

즐거운 코딩하세요!

🐧

이 기사는 Code4IT에서 가져온 것입니다.

좋은 웹페이지 즐겨찾기