Ruby에서 어떤 if style을 사용하시나요?

최근에 if문을 사용할 때 코딩 스타일에 대해 재밌는 글을 읽었다. 보통 ruby에서 if문을 사용할 때 두 가지 방법을 사용한다.

# 첫 번째 방법
music = if classic?
		  '스코틀랜드 환상곡'
		else
          'tom boy'
        end
# 두 번째 방법
music = 
  if classic?
    '스코틀랜드 환상곡'
  else
    'tom boy'
  end

나는 변수를 정의한 라인에 if문을 사용하는 첫 번째 방법을 사용하고 있었는데 몇 가지 단점들이 있었다.

변수명이 달라지면 불필요한 수정이 발생

music = if classic?
		  '스코틀랜드 환상곡'
		else
          'tom boy'
        end

music_name = if classic?
		       '스코틀랜드 환상곡'
		 	 else
               'tom boy'
         	 end

변수명이 바뀌어 변수의 길이가 달라지면 추가된 글자 수 만큼 두 번째 줄(스코틀랜드 환상곡)부터 들여쓰기 폭을 수정해줘야 한다. 어렵진 않지만 귀찮다.

music_name = 
  if classic?
    '스코틀랜드 환상곡'
  else
    'tom boy'
  end

두 번째 방법을 사용하면 첫 번째 줄만 수정해주면 되기 때문에 편리하다!!

화면에서 보여지는 코드가 적다

첫 번째 방법을 사용했을 때 들여쓰기로 인해 가로줄에 보여지는 코드 수가 상대적으로 적을 수밖에 없다. 맥북에서 rubymine으로 if문 코드를 볼 때 횡 스크롤을 해야 하는 경우가 종종 있어 불편했는데 두 번째 방법을 사용하면 가로줄에 첫 번째 방법보다 더 많은 코드를 볼 수 있다.

마무리

나는 두 번째 방법이 rubocop에 위반되는 줄 알았는데 아니었다. 기본적으로 회사에서 사용하는 style guide를 사용하면 되지만 두 번째 방법을 사용했을 때 이점이 더 많다고 생각한다.

참고

좋은 웹페이지 즐겨찾기