02_01네이밍 컨벤션, 이유를 알고 쓰자.

hyewon ji·2023년 7월 15일
0

개발자의 글쓰기

목록 보기
2/2

다른 개발자가 봤을 때 한 번에 무슨 뜻인지, 무슨 기능을 하는지 알아낼 수 있는 이름이어야 한다. 그러면서도 아주 간결해야 한다.

네이밍 방법

1. 이름 짓기는 창조가 아니라 조합

  • 무에서 유를 창조하는것이 아니다.
  • 라이브러리 사용처럼 기존 방식이나 이름을 차용해 새로운 이름을 짓는 경우가 많다.
    - 정해진 원칙으로 적절한 단어를 선택해 조합하는 과정이다.

2. 영어 표기법으로 이름 짓기

  1. 중요하거나 크거나 특정한 것을 가리키거나 제목에 해당하는 명사는 모두 첫 글자를 대문자로 쓴다.
  2. 그런 명사들이 이어질때는 첫 글자를 모두 대문자로 쓴다.
  3. 명사나 관사가 아닌 동사, 형용사 등은 소문자를 쓴다.

이런 규칙으로 파스칼 표기법과 카멜 표기법이 만들어 졌다.

3. 클래스, 인터페이스 이름은 파스칼 표기법(PascalCase)

  • 클래스가 프로그래밍에서 가장 주요하고 높은 위치에 있음
  • 고유명사처럼 특정되고 명사로 되어있다.
interfcae Menu
class CoffeeMenu implements Menu

4. 함수, 변수는 카멜 표기법 (camelCase)

  • 함수는 주로 동작을 시키는 명령어 개념으로, 첫단어가 주로 동사이다.
  • 변수는 형용사로 시작하는 경우도 많다.
  • 영어 표기법은 명사가 아닌 경우는 소문자로 시작한다.

5. 상수는 모두 대문자로 작성 (CONST_NAMING)

  • 상수는 값이 변하면 안된다는것을 강조하며
  • 가독성을 높일 수 있다.

6. 패키지, 모듈은 소문자로 작성 (packagemodule)

  • 패키지와 모듈은 클래스나 함수보다 너 높은 위치이나, 소문자로만 쓴다.
  • 우리가 인식하고 구별하는것은 그 아래인 클래스나 함수이지, 패키지 모듈이 아니기 때문이다.
  • 또한 클래스나 함수와 이름을 혼동하지 않기 위한 이유도 있다.
kr.co.wikibook.android.developerwriting
import developerwriting

7. CSS의 BEM(Block, Element, Modifier) 표기법

  • 대상__요소--상태의 형태로 나타낸다. (.form__button--disabed)
  • 대상의 요소나 부분을 의미할때는 언더스코어 두 개(__)
  • 대상이나 요소의 상태의 속성을 의미할때는 하이픈 두 개(--)

가장 중요한건 가독성과 소통!

  • 가장 핵심은 위의 7가지 규칙이 아닌, 가독성과 소통이 잘되느냐이다!
  • 같은 맥락에서 컨벤션을 지킬때, 가독성과 소통을 다 잡을 수가 있다.🤙🏻

0개의 댓글