반응형
1. 의도가 분명하게 이름을 지으라
- 변수나 함수, 클래스 이름은 다음 질문에 답할 수 있어야 한다.
- 존재 이유는? / 수행 기능은? / 사용 방법은?
- 즉 magin number와 같은 그래서 왜 status가 3이면 안 되는데? 같은 의문을 낳으면 안 된다.
- 그릇된 정보를 담으면 안 된다.
- 여러 계정을 그룹으로 묶을 때 List로 담는게 아닌데 accountList로 변수명을 선언해선 안 된다.
- 그리고 억지로 단어를 약어로 줄여 헷갈리게 해서도 안 된다.
- 의미 있게 구분하라
- function parameter들을 input1, input2 이런 식으로 선언해선 안 된다.
- 개념은 구분하지 않은채 이름만 달리한 경우도 없어야 한다.
- ProductInfo, ProductData로 변수를 다르게 선언한 경우
- getActiveAccount, getActiveAccounts, getActiveAccountInfo 이렇게 함수를 구분하는 것도 차이를 알기 힘들기 때문에 지양하라
- 발음하기 쉬운 이름을 사용하라
- 기억해야하는 변수는 사용하지 마라
- 통상적으로 사용하는 forloop에서의 i, j, k까지는 용인되지만 그 외의 소문자 l이라든가 혹은 a, b 그리고 a,b 가 이미 사용중이니 c로 변수를 선언하는 이런 일은 없어야 한다.
- 클래스는 명사나 명사구로 메서드는 동사나 동사구로 하는 것이 적절하다.
- method의 경우 javabean 표준에 따라 접근자, 변경자, 조건자는 get, set, is를 앞에 붙인다.
- 기발한 이름은 피하라
- 한 개념에 하나의 단어만 사용하라
- 똑같은 메서드를 클래스마다 get, fertch, retrieve로 다르게 부르면 통일이 절대 안 된다. 합치자
- 하지만 동시에 한 단어를 2가지 의미에 사용하지 마라
- 기존 List에 element을 추가하는 method로 add~~를 사용하다가 새로 아예 List를 생성해서 추가하는 method를 구현하고 자하는데 일관성을 위해 add로 하면 이것은 헷갈릴 수 있기 때문에 insert나 append라는 새로운 단어로 구분 지어 줘야 한다.
반응형
'개발 일반' 카테고리의 다른 글
잊을 때쯤 한번 다시 읽어봐야할 Clean code에 관하여 (주석) (0) | 2021.03.15 |
---|---|
잊을 때쯤 한번 다시 읽어봐야할 Clean code에 관하여 (함수) (0) | 2021.03.15 |
잊을 때쯤 한번 다시 읽어봐야할 Clean code에 관하여 (들어가며) (0) | 2021.03.15 |
muuri로 Drag&Drop 만들기 (0) | 2021.01.27 |
왜 함수형을 써야하는가? (0) | 2020.12.12 |