2020. 11. 3. 20:36

프로그래머는 코드에 그릇된 단서를 남겨서는 안 된다


그릇된 단서는 코드 의미를 흐린다


나름대로 널리 쓰이는 의미가 있는 단어를 다른 의미로 사용해도 안 된다


여러 계정을 그룹으로 묶을 때, 실제 List가 아니라면 accountLIst라 명명하지 않는다


프로그래머에게 List는 특수한 의미다


계정을 담는 컨테이너가 실제 List가 아니라면 프로그래머에게 그릇된 정보를 제공하는 셈이다


그러므로 accountGroup, bunchOfAccounts, 아니면 단순히 Accounts라 명명한다


서로 흡사한 이름을 사용하지 않도록 주의한다


한 모듈에서 XYZControllerForEfficientHandlingOfStrings라는 이름을 사용하고, 


조금 떨어진 모듈에서 XYZControllerForEfficientStorageOfStrings 라는 이름을 사용한다면? 


차이를 알아챘는가?


두 단어는 겁나게 비슷하다


유사한 개념은 유사한 표기법을 사용한다


이것도 정보다


일관성이 떨어지는 표기법은 그릇된 정보다


십중팔구 개발자는 이름만 보고 객체를 선택한다