자바 작명소

포모·2020년 12월 5일
0

Clean Code

목록 보기
3/6
post-custom-banner

✍ 변수명 네이밍 규칙


좋은 변수명 짓기

  • 의도를 분명히 밝혀 이름을 지어야합니다.

    • 따로 주석이 필요하다면 의도가 분명하지 않다는 의미.
    • 이름은 구체적이어야합니다.
    • 모호하거나 하나 이상의 목적으로 사용될 수 있는 이름 (X)
  • 협업을 염두해서 짓기

    • 숫자와 같은 상수들은 모호한 의미를 줄 수 있기 때문에 변수에 이름을 붙여서 의미를 표현
  • 맥락을 고려해서 짓기

    • 이름이 지나치게 짧은 경우 변수의 용도를 알기 어렵습니다.
    • 의미가 불분명한 짧은 이름 < 의미있는 맥락이 긴 이름
  • boolean 변수의 네이밍

    • done, error, found, success, ok 와 같은 성공함을 의미하는 구체적 이름이 있다면 다른 이름을 사용하는 것이 좋습니다.

    • 참이나 거짓의 의미를 함축하는 boolean 변수의 이름을 사용합니다.
      (ex. statusOK, sourceFileAvailabble, sourceFileFound)

    • not 보다는 is 를 붙인 변수명을 짓습니다. 그러나 접두어가 없는 이름이 읽고 이해하는데 더 쉬운 경우도 있습니다.

  • 메소드가 여러번 호출된 한눈에 보기 힘든 코드

    • 변수에 일부 함수를 호출한 결과값을 담아서 길이를 줄여줍니다.
  • 변수 이름에 자료형이 들어가는 경우

    • 다른 자료형을 써야하는 경우가 오면 결국 변수 이름을 변경해야합니다.

✍ 메서드 네이밍 규칙

메서드 네이밍 시 고려해야할 사항

  1. 왜 존재해야하는가?
  2. 무슨 작업을 하는가?
  3. 어떻게 사용하는가?

메서드 명명 규칙

  • lowerCamelCase로 작성하기

    • 첫번째 단어는 소문자, 이어지는 단어의 첫글자는 대문자로 작성한다.
    • 메서드명은 기본적으로 동사로 시작하기
    • 다른 타입으로 전환하는 메서드나 빌더 패턴을 구현한 클래스으 ㅣ메서드에는 전치사를 쓸 수 있다. (ex. toString)

메서드 이름으로 자주 사용되는 동사

  1. get/set

    객체의 데이터에 마음대로 접근할 수 있다면 메소드를 통해 만들어진 데이터는 의미가 없게 됩니다.
    되도록이면 상태 데이터를 가지는 객체에서 데이터를 get하지 말고 객체에 메시지를 보내는 것을 추천합니다.

  2. init : 데이터를 초기화하는 메서드

  3. is/has/can

    위의 3개는 boolean 값을 리턴합니다.

    • is : 맞는지 틀린지 판단하는 메서드명
    • has : 데이터가 있는지 없는지 확인하는 메서드명
    • can : 할 수 있는지 없는지 확인하는 메서드명
  4. create : 새로운 객체를 만든 후 리턴해주는 메서드명

    팩터리 메서드 패턴 블로그에서 많이 보인다고 합니다.

  5. find : 데이터를 찾는 메서드명

  6. to : 해당 객체를 다른 형태의 객체로 변환해주는 메서드명


🛴 마무리

자바 네이밍 규칙에 대한 쉬운 설명이 있어 자주 보는 글들을 정리해보았는데요,
더 궁금하신 분들은 👉[Java Code Convetion]👈 를 참고해주세요 🥳🥳🥳


참고

post-custom-banner

0개의 댓글