Community

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

← Go back
TIL DAY 3
#clean_code
2년 전
517


TIL (Today I Learned)

  • 2022.02.20

오늘 읽은 범위

  • 2장 의미 있는 이름

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

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

  • 그릇된 정보를 피하라


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


    서로 흡사한 이름을 사용하지 않도록 주의한다.
    유사한 개념은 유사한 표기법을 사용한다.

  • 의미 있게 구분하라


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

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

  • 검색하기 쉬운 이름을 사용하라
    이름 길이는 범위 크기에 비례해야 한다.
    변수와 상수를 코드 여러 곳에서 사용한다면 검색하기 쉬운 이름이 바람직하다.

  • 인코딩을 피하라
    헝가리안 표기법, 멤버 변수 접두어 등은 하지 말아야 한다.

  • 자신의 기억력을 자랑하지 마라
    독자가 코드를 읽으면서 변수 이름을 자신이 아는 이름으로 변환해야 한다면 그 변수 이름은 바람직하지 못하다.

  • 클래스 이름과 객체 이름은 명사나 명사구가 적합하다

  • 메서드 이름은 동사구가 적합하다

  • 기발한 이름은 피하라
    의도를 분명하고 솔직하게 표현하라

  • 한 개념에 한 단어를 사용하라
    추상적인 개념 하나에 단어 하나를 선택해 이를 고수한다.

  • 말장난을 하지 마라
    한 단어를 두 가지 목적으로 사용하지 마라. 다른 개념에 같은 단어를 사용한다면 그것은 말장난에 불과하다.

  • 해법 영역에서 가져온 이름을 사용하라
    모든 이름을 문제 영역에서 가져오는 정책은 현명하지 못하다.
    기술 개념에는 기술 이름이 가장 적합한 선택이다.

  • 문제 영역에서 가져온 이름을 사용하라
    적절한 '프로그래밍 용어'가 없다면 문제 영역에서 이름을 가져온다.
    문제 영역 개념과 관련이 깊은 코드라면 문제 영역에서 이름을 가져와야 한다.

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

  • 불필요한 맥락을 없애라
    의미가 분명한 경우 일반적으로 짧은 이름이 긴 이름보다 좋다.

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

  • 이름 짓는 게 가장 기초적이면서도 가장 많은 정보를 줄 수 있는 만큼 잘 지켜야한다.

  • 이 규칙 하나로 내 코드를 읽는 게 더 쉬워졌다.

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

  • NULL