[Developer] 초보 개발자

변수 함수 이름을 쉽게 지어보자.

OnceBH 2022. 4. 16. 02:23
반응형

변수 함수 이름을 쉽게 지어보자.

 

안녕하세요!

개발을 하다 보면 필연적으로 만나게 되는 것이 바로 변수와 함수의 이름을 지어주는 번거로움?

혹은 어려움일것입니다. 이러한 어려움을 해소하기 위해서 변수를 작성하는 방법은 여러 가지 들이 있습니다.

또한 언어에따라서 달라지기도 합니다. 오늘은 제가 주로 사용하는 방법을 간단하게 말씀드리려 합니다.

 

  1. 변수의 이름
  2. 함수의 이름
  3. 주석
  4. 마치며

 

 

1. 변수의 이름

 

아마 대부분 개발을하고 피드백을 받으면 한 번씩은 변수의 이름이 부정확 혹은 애매모호하다는 말을 들어보셨을지 모르겠습니다.

사실 정말 쉽게 마음먹자면, 변수 이름이 애매모호하면 어떻냐. 누가 봐도 코드를 보면 변수의 사용방법을 알고 이해할 수 있는데.

라는 마음을 가질 수 있습니다. 저 역시 그랬습니다. 하지만 이는 혼자서 개발할때의 한하며 또한 혼자서 개발을 하더라도

이러한 습관은 반드시 버리셔야합니다. 개발자는 개발만 하는 것이 아닌 소통, 유지보수도 해야 하기 때문입니다.

 

예전에는 변수의 이름을 가능한 짧게 지었습니다. 예를 들면 i, y, z와 같이 말입니다.

이는 옛날 메모리의 문제로 인해서 그런 것이며 지금은 그렇게까지 걱정할 이유가 없습니다.

변수는 먼저 이름이 쉬워야 합니다. 누가 봐도 알 수 있는 그런 특정된 단어를 사용하는 것이 좋습니다.

하지만 그러다 보면 필연적으로 변수의 이름이 길어질 수 있습니다. 그럼에도 불구하고 길게 짓는 편이

훨씬 좋습니다. 예를 들어보겠습니다.

// 좋은 예시
const valueFromSomething = 10;

// 좋지 못한 예시
const valFrSome = 10;

// 좋은 예시
const currentTotalValue = "something";

// 좋지 못한 예시
const cuToVal = "something";

짧다고 다 좋은 것이 아닙니다. 이해하기 쉽고 딱 보고 알 수 있는 변수를 지정하는 것이 좋습니다.

변수의 이름이 정말 너무 길면 그것도 보기는 좋지 않겠지만, 필연적으로 길어야 한다면 긴 것이 짧게 줄인 것보다 훨씬 좋습니다.

 

Boolean 값의 변수를 지정하려는 경우 가장 편한 방법은 is를 사용하는 것입니다.

예를 보겠습니다.

// Boolean 예시
const isChecked = false;
const isUpdated = true;
const isModalOpened = true;

이렇게 작성하시는 것이 보기에 좋습니다.

말 그대로 체크가 되었는가? 업데이트되었는가? 모달이 오픈되었는가? 와같이 의문문으로 작성하시면,

이해하기도 쉽고 사용할 때도 훨씬 덜 헷갈리게 됩니다.

 

 

2. 함수의 이름

 

함수의 이름을 짓는 것은 사실 변수의 이름을 짓는 것보다 쉽습니다.

함수 또한 앞에 변수와 언급한 것과 같이 짧은 것보다는 길더라도 정확한 이름을 지어주는 것이 좋습니다.

 

그리고 함수의 경우 웬만하면 동사를 먼저 위치시키는 것이 좋습니다.

예를 보겠습니다.

 

// 좋은 예시
const setValue = () => {};
const getValue = () => {};
const showModalAfterClick = () => {};
const updateCurrentLocation = () => {};

// 좋지 못한 예시
const valueSet = () => {};
const valueGet = () => {};
const ModalAfterClick = () => {};
const currentLocationUpdate = () => {};

 

 

사실 형태를 보면 이게 함수인지 변수인지 알 수 있지만 이렇게 동사를 먼저 사용해줌으로써

실행되어야 한다는 느낌을 주시는 것이 좋고 이를 통해 이 변수가 업데이트를 하는지, 보여주는지, 가져오는지, 설정하는지를

명시해주는 게 정말 중요합니다.

 

다른 방법은 함수를 하나의 사람 혹은 사물의 형태로 바꿔주는 것입니다.

예를 보겠습니다.

 

// 예시
const valueSetter = () => {};
const valueGetter = () => {};
const ModalHandler = () => {};
const currentLocationUpdateHandler = () => {};

 

 

 

저는 이러한 방법보다는 위의 방법을 더 선호하며 자주 사용합니다.

처음에 동사를 보고 바로 이 함수의 목적을 알 수 있기 때문입니다.

 

 

3. 주석

 

개발을 하다 보면 주석을 잘 사용하는 분들이 있으신가 하면 거의 전혀 사용하지 않으시는 분들도 계십니다.

이때 주석을 잘 사용한다는 것은 일일이 하나하나의 변수와 함수의 목적과 동작원리를 적어놓는 것이 아닌,

함수의 이름에 비해 동작원리가 복잡하거나, 함수의 실행 순서, 이 함수를 사용할 때의 주의점이나 추후의 개선점을 적어놓는 것입니다.

특히나 협업을 하게 된다면 주석은 너무너무 필수입니다. 저뿐만 아니라 모든 직원들이 자신의 코드를 작성 후

필요에 따라 주석을 통해 작동원리 혹은 추후의 개선 점등을 작성합니다.

이는 다른 개발자들이 당장 보지 않더라도 언젠가 같은 파일을 작업하게 된다면 보게 될 것이고 정보를 얻을 수 있습니다.

예를 보시겠습니다.

 

// This method should be deleted after current promotion.
// Otherwise it causes conflict with legacy codes.
const changeValueFromResult = () => {};

 

주석은 회사마다 다르겠지만, 기본적으로 영어를 사용하시는 것이 좋습니다.

 

 

4. 마치며

 

자 오늘은 짧게 변수와 함수의 이름 짓는 법을 알아보았습니다.

사실 이름을 짓는 것은 자유이지만 오늘은 제가 자주 사용하는 방법을 알아보았습니다.

짧지만 도움이 되었으면 좋겠습니다.

 

완벽한 준비란 없다,완벽한 준비란 영원히 시작하지 않는 것과 같다.

Es gibt keine perfekte Vorbereitung.

Perfekte Vorbereitung ist das Gleiche, wie nie anzufangen.

반응형