Community

개발자 99% 커뮤니티에서 수다 떨어요!

← Go back
Assignment #3 Clean Code 2장 의미있는 이름
#clean_code
2년 전
809


TIL (Today I Learned)

// 2022.02.20

오늘 읽은 범위

2장 의미있는 이름

책에서 기억하고 싶은 내용을 써보세요.

의도를 분명히 밝혀라

좋은 이름을 지으려면 시간이 걸리지만 좋은 이름으로 절약하는 시간이 훨씬 많다.

따로 주석이 필요하다면 의도를 분명히 드러내지 못했다는 말이다.

그릇된 정보를 피하라

ex) 여러 계정을 그룹으로 묶을 때, 실제 List가 아니람련 accountList라 명명하지 않는다.

의미있게 구분하라

컴파일러를 통과할지라도 연속된 숫자를 덧붙이거나 불용어를 추가하는 방식은 적절하지 못하다.

ex) moneyAmount는 money와 구분이 안된다.

customerInfo는 customer와 구분이 안된다.

발음하기 쉬운 이름을 사용하라

검색하기 쉬운 이름을 사용하라

  • 클래스 이름, 객체이름 : 명사나 명사구가 적합하다.

    ex) Customer, WikiPage, Account

  • 메서드 이름: 동사나 동사구가 적합하다.

    ex) postPayment, deletePage ,save

한 개념에 한 단어를 사용하라!

추상적인 개념 하나에 단어 하나를 선택해 고수한다. 예를 들어 똑같은 메서드를 클래스마다 fetch, retrieve, get으로 제각각 부르면 혼란스럽다.

의미있는 맥락을 추가하라

스스로 의미가 분명한 이름이 없지 않다. 하지만 대다수 이름은 그렇지 못하다. 그래서 클래스, 함수, 이름 공간에 넣어 맥락을 부여한다. 모든 방법이 실패하면 마지막 수단으로 접두어를 붙인다.

오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요

  • 코드를 짜면서 항상 변수 이름은 뭘로 할까 고민하다가 그 고민하는 시간이 아까운 거 같아 대충 짓고 넘어갔던 적이 많은 것 같다. 하지만 이게 오히려 나중에 발목을 잡는 다는 습관이라는 걸 이제 알았다. 이젠 벗어나야지..

궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.