[Clean Code] 2-1 Class 와 Method 이름

2021. 8. 18. 14:53·IT/Clean Code
반응형

Class 이름

Class와 Object의 이름은 명사가 적합하다.

[Good] Customer, WikiPage, Account, AddressParser
[Bad] Manager, Processor, Data, Info

Method 이름

Method와 Function의 이름은 동사가 적합하다.

[Good] postPayment, deletePage, save

javabean 표준에 따라서
Accessor(접근자), Mutator(변경자), Predictate(조건자)는 앞에
get, set, is 를 붙인다.

이름을 혼용하지마라

여러 Class에 add() 함수의 역할과 Paramerter와 Return 이 동일하다면 계속 사용해도 되지만 기존과 다른 성격을 지닌다면 insert() 나 append()등의 이름을 사용해라.

#

의미있는 맥락을 추가해라

name, street, houseNumber, city, state 보다는
addr 이라는 접두사를 사용해서
addrName, addrStreet, addrHouseNumber, addrCity, addrState 변경해서 사용하면 의미가 명확해진다.

#

이름의 길이는 상관없다

한 가지의 역할만 하는 함수가 작고 짧은 좋은 이름을 가진 다면 좋겠지만,
이름이 길어져도 상관없다. 짧고 무슨 역할을 하는지 모르겠을 이름보다 길고 무슨 역할인지 명확한 이름이 더 좋다.

728x90
반응형
저작자표시 비영리 (새창열림)
'IT/Clean Code' 카테고리의 다른 글
  • [Clean Code] 3-2 Functions
  • [Clean Code] 3-1 Parameter
  • [Clean Code] 2-2 Method
  • [Clean Code] 0. 앞 부분...
상쾌한기분
상쾌한기분
  • 상쾌한기분
    상쾌한기분
    상쾌한기분
  • 전체
    오늘
    어제
    • 분류 전체보기 (250)
      • Python (44)
        • Python (26)
        • Django (6)
        • Flask (4)
        • Open Source (6)
      • Kotlin & Java (5)
        • Spring (2)
        • 프로젝트 (1)
      • Go (11)
      • Database (24)
        • MySQL (21)
        • Redis (3)
      • Infrastructure (2)
        • CDC (4)
        • Kafka (5)
        • Prometheus (2)
        • Fluentd (11)
        • Docker (1)
        • Airflow (2)
        • VPN (2)
      • IT (25)
        • AI (9)
        • Langchain (8)
        • Web (18)
        • Git (8)
        • 리팩토링 (9)
        • Micro Service Architecture (8)
        • Clean Code (16)
        • Design Pattern (0)
        • 수학 (1)
        • 알고리즘 (14)
      • OS (14)
        • Centos (10)
        • Ubuntu (3)
        • Mac (1)
      • Search Engine (2)
        • ElasticSearch (1)
        • Lucene Solr (1)
      • PHP (2)
        • Laravel (1)
        • Codeigniter (1)
  • 블로그 메뉴

    • Github 방문
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    performance
    MYSQL
    ollama
    Langchain
    Golang
    python
    docker
    prompt
    Kafka
    파이썬
    CDC
    LLM
    go
    백준
    http
    fluentd
    git
    티스토리챌린지
    Redis
    오블완
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
상쾌한기분
[Clean Code] 2-1 Class 와 Method 이름
상단으로

티스토리툴바