SW/Coding

코드 읽는 사람이 행복해지는 변수 이름 짓는 법

얇은생각 2025. 6. 6. 07:30
반응형

변수 이름, 제대로 짓고 계신가요?

혹시 예전에 짰던 코드 열어보다가 x나 tmp 같은 변수 이름을 보고 멍하니 화면만 바라본 적 있으세요? "이거 대체 뭐였지...?" 하고 코드를 거슬러 올라가야 의미를 파악할 수 있었던 그런 경험이요. 저도 진짜 많이 겪었어요. 당시엔 잘 안 까먹을 거라 생각했는데, 며칠만 지나도 기억이 안 나더라고요.

이 글은 그런 경험, 한 번쯤 해봤을 우리 모두를 위한 거예요. 좀 더 자연스럽고 쉽게, 그리고 나중에도 헷갈리지 않는 변수 이름 짓는 팁들을 정리해봤어요. 이건 단순히 나를 위한 게 아니라, 나중에 내 코드를 볼 사람을 위한 작은 배려이기도 하니까요.

 


 

 

팁 1: 의미가 잘 드러나는 이름을 지어보세요

  • 변수 이름은 코드의 목적을 드러내는 설명입니다.
  • 추상적인 이름보다는 직관적인 이름이 가독성을 높입니다.
  • 반복문에서도 i보다는 의미 있는 이름을 사용하는 것이 좋습니다.

저도 예전엔 습관처럼 x, y, z를 썼었어요. 근데 시간이 지나고 다시 보면 그게 뭘 뜻하는지 도저히 감이 안 오더라고요.

 

예를 들면 이런 코드:

x = 5
y = 10
g = x + y

 

보다 이게 훨씬 이해되죠?

apple_count = 5
orange_count = 10
total_fruit = apple_count + orange_count

 

딱 봐도 어떤 상황인지 그려지잖아요. 주석도 필요 없고요. 그리고 반복문도 마찬가지예요. 저도 한참 동안 for i in range(n)만 썼는데, for student_index in range(n)처럼 조금만 신경 써주면 한눈에 보기 쉬워지더라고요. 정말 별거 아닌 것 같아도 효과는 커요.

 


 

팁 2: 너무 일반적인 이름은 피하세요

  • value, data 같은 이름은 의미 전달이 어렵습니다.
  • 가능한 한 구체적으로 무엇을 나타내는지 드러내야 합니다.
  • tmp 같은 임시 이름도 역할을 나타내도록 변경하는 것이 좋습니다.

 

처음 프로그래밍 배울 때 data랑 value 진짜 많이 썼어요. 뭔가 있어 보이고 다용도 같아서요. 근데 나중에 보면 이게 뭘 담고 있는지 전혀 감이 안 와요. 그냥 아무거나 담을 수 있을 것 같은 느낌이랄까.

 

예를 들어:

value = 37.5

 

보다

temperature_celsius = 37.5

 

가 훨씬 명확하잖아요? 보자마자 "아, 온도네!" 하고 알 수 있고요.

또 tmp라는 이름도 정말 많이 쓰는데... 진짜 이건 나중에 보면 자기가 만든 코드인데도 이해가 안 가요. 저도 tmp 대신 temp_file_path 같은 식으로 바꾸기 시작한 뒤로, 나중에 디버깅할 때 훨씬 수월해졌어요.

 


 

팁 3: 긴 이름을 두려워하지 마세요

 

팁 3: 긴 이름을 두려워하지 마세요

  • 자동완성 기능 덕분에 긴 이름도 부담 없이 쓸 수 있습니다.
  • 길어도 명확한 이름은 코드 이해도를 높입니다.
  • 불필요한 단어는 빼되, 발음 가능한 줄임말은 사용 가능합니다.

처음엔 저도 "이런 긴 변수명을 매번 어떻게 치지...?"라는 생각이 있었어요. 근데 IDE나 에디터들이 워낙 똑똑해서 한두 글자만 치면 자동으로 나와요. 오히려 짧고 모호한 이름 쓰는 게 더 번거롭더라고요.

 

예를 들어:

time_since_post_seconds = 120

 

와 같은 이름은 길지만 확실하죠. 시간이긴 한데, 몇 초인지 명확하게 알 수 있으니까요.

무턱대고 긴 이름을 쓸 필요는 없지만, 의미를 충분히 담는 선에선 길어도 괜찮다고 생각해요. 불필요한 관사 같은 건 빼도 되고요. 줄임말도 발음이 가능한 범위 내에서 일관되게 쓰면 문제 없어요.

 


 

팁 4: 변수를 필요한 시점에 선언하세요

  • 변수는 실제 사용하는 위치 근처에서 선언하는 게 좋습니다.
  • 흐름이 자연스럽고 읽기 쉬운 코드가 됩니다.
  • 변수 선언 위치가 멀어질수록 이해하기 어려워집니다.

 

예전에 저도 항상 함수 제일 위에 변수를 선언하곤 했어요. 왠지 그래야 "정석" 같았거든요. 근데 실제로 써보면, 한참 밑에서 쓰이는 변수를 위에 선언해 놓으면 오히려 찾기 힘들고 불편하더라고요.

 

이런 식보다는:

user_input = input("이름을 입력하세요: ")
...
...
print("환영합니다, " + user_input)

 

이렇게 쓰는 게 더 깔끔하죠:

...
...
user_input = input("이름을 입력하세요: ")
print("환영합니다, " + user_input)

 

쓸데없이 머리 아플 일 줄여주는 작은 습관이에요.

 


 

팁 5: 단위는 꼭 이름에 포함하세요

 

팁 5: 단위는 꼭 이름에 포함하세요

  • 변수 값의 단위를 이름에 명시하면 혼동을 줄일 수 있습니다.
  • 시간이나 거리 등 단위가 중요한 경우 특히 효과적입니다.
  • 단위를 포함하면 코드의 신뢰성과 가독성이 높아집니다.

 

개발하면서 가장 헷갈렸던 게 이거였어요. 어떤 숫자가 '시간'을 뜻하는 건 알겠는데, 초인지 분인지, 밀리초인지 감이 안 잡힐 때요. 그런 코드 만나면 진짜 멘붕 오죠.

 

예를 들어:

time_since_post_seconds = 1800

 

이렇게 명확하게 써주면 오해의 여지가 없어요. 반면에:

time_since_post = 1800

 

이건 보는 사람 입장에서 괴롭죠. 특히 협업할 땐 이런 실수가 나중에 큰 문제로 이어질 수 있어요.

 


 

마무리: 사람을 위한 코드, 읽기 쉽게 쓰세요

  • 코드는 나뿐만 아니라 타인도 읽는다는 점을 고려해야 합니다.
  • 명확한 변수 이름은 협업과 유지보수에 큰 도움이 됩니다.
  • 좋은 이름 하나가 전체 코드를 이해하기 쉽게 만듭니다.

 

결국 코드는 내가 혼자만 보는 게 아니잖아요. 며칠 뒤의 나, 팀원, 혹은 구직 중일 때 포트폴리오로 누군가 보게 될 수도 있고요. 그런 점에서 변수 이름 하나 잘 짓는 건 단순한 실력이 아니라 '센스'이자 '배려'라고 생각해요.

그래서 x, tmp, data 같은 이름은 이제 조금씩 줄이고, purchase_total, temperature_celsius, seconds_since_login처럼 한눈에 의미가 보이는 이름을 습관처럼 쓰게 되면 정말 개발하면서 스트레스도 줄고, 만족도도 높아져요.

나중에 내 코드를 본 누군가가 "와, 코드 되게 깔끔하네"라고 말해준다면, 그건 아마도 이 변수 이름에서부터 시작된 변화일 거예요.

반응형