프로그래밍 공부
작성일
2024. 1. 17. 16:57
작성자
WDmil
728x90

3.4 네이밍

컴파일러는 몇 가지 네이밍 원칙을 가지고 있다. 이름이 숫자로 시작할 수는 없다.

 

밑줄이 두개로 된 이름이나(예:my__name)  밑줄로 시작하는 이름(예:_Name)도 사용해서는 안된다.

 

이런 이름들은 컴파일러가 자체적으로 사용하거나 표준 라이브러리 에서 사용하기 위해 예약되어있다.

 

이런 경우를 제외하면 이름은 순전히 나 자신과 내가 작성한 모듈을 이용할 동료 프로그래머를 돕기 위해 존재한다.

 

이러한 재경에 비추어 보았을 때 아무런 의미가 없거나 엉뚱한 오해를 불러일으키는 이름을 사용하는 경우가 너무나 많다는 데 안타까움을 금할 수 없다.

 

3.4.1 좋은 이름의 선택

변수, 메서드, 함수, 클래스는 그것의 목적을 정확히 설명해줄 수 있는 이름을 가지는 것이 가장 좋다.

 

부가적으로 타입이나 특정 사용법과 같은 정보가 이름에 암시되어 있을 수도 있다.

 

좋은 이름인지 확인해보는 가장 확실한 방법은 이름의 작성자가 아닌 다른 프로그래머에게 보였을 때 의도된 대로 이해하는지 시험해보는 것이다.

 

좋은 네이밍에 어떤 일반적인 법칙이 있는 것은 아니다.

현재 내가 속한 조직에서 가이드하고 있는 네이밍 원칙이 있다면 그것을 따르는 것이 가장 좋다.

 

하지만, 부적절한 네이밍은 분명히 구분할 수 있다.

좋은 이름 나쁜 이름
sourceName, destinationName
두 객체를 구분해주고 있다.
thing1, thing2
너무 일반적이다.
gSetting
전역 변수임을 암시해준다.
globalUserSpeicficSettingsAndPreferences
너무 길다.
calculateMarigoldOffset()
단순하고 정확하다.
doAction()
너무 일반적이고 모호하다.

 

728x90