Computer >> 컴퓨터 >  >> 프로그래밍 >> Ruby

Ruby 주석 5가지 종류와 올바른 사용법 완벽 가이드

Ruby에서 주석(comment)은 코드 자체에는 영향을 주지 않으면서, 나중에 코드를 읽는 나 자신이나 다른 개발자에게 유용한 정보를 남기는 역할을 합니다. 잘 작성된 주석은 코드의 의도를 명확히 하고 협업 효율을 크게 높여줍니다.

이 글에서는 Ruby에서 사용할 수 있는 5가지 주석 유형과 각각의 올바른 사용법을 예제와 함께 살펴보겠습니다.

1. 한 줄 주석(Single-line Comment)

Ruby에서 가장 많이 사용되는 주석 형태입니다. # 기호를 사용하며, 해당 기호 이후부터 줄 끝까지의 모든 내용이 주석으로 처리됩니다.

# 사과랑 오렌지를 좋아해요

한 줄 주석 작성 시 알아둘 세 가지

  1. 주석은 반드시 #(파운드) 기호로 시작합니다.
  2. # 기호 뒤에 공백을 한 칸 두면 가독성이 훨씬 좋아집니다.
  3. 주석 안의 내용은 코드처럼 보여도 전혀 해석되지 않습니다. 따라서 코드를 임시로 비활성화할 때 활용할 수 있습니다.

주석은 단독으로 한 줄에 쓸 수도 있고, 코드 끝에 붙여서 인라인으로 사용할 수도 있습니다.

[].size # 배열의 크기를 구합니다

2. 여러 줄 주석(Multi-line Comment)

Ruby에서 여러 줄을 주석 처리하려면 일반적으로 각 줄마다 #을 붙입니다. 이런 형태를 '블록 주석(block comment)'이라고 부르기도 합니다.

# aaa
# bbb
# ccc

Ruby에서 코드 블록 전체를 주석 처리하는 표준적인 방법이 바로 이것입니다. 다행히 대부분의 최신 코드 에디터는 블록을 선택한 뒤 단축키 한 번으로 전체 주석 처리를 지원하므로 손이 많이 가지 않습니다.

=begin / =end 문법

Ruby에는 별도의 여러 줄 주석 문법도 존재합니다.

=begin
이것은 주석입니다...
a
b
c
=end

하지만 실무에서 이 문법을 사용하는 경우는 거의 없습니다. 문법이 어색해 보일 뿐 아니라, 메서드처럼 들여쓰기가 적용되는 영역 안에서는 아예 사용할 수 없습니다. 그래도 오픈소스 코드 등에서 우연히 발견했을 때 당황하지 않도록 존재 자체는 알아두면 좋습니다.

3. Shebang 주석

Shebang(#!)은 Unix 셸(예: bash)에게 이 파일을 어떻게 해석해야 하는지 알려주는 특수한 주석입니다.

파일 맨 위에 이 주석을 추가하면, 적절한 실행 권한이 있다는 전제 하에 Ruby 파일을 실행 파일처럼 직접 실행할 수 있습니다.

#!/usr/bin/env ruby

또한 shebang을 활용하면 명령줄 옵션을 미리 지정할 수 있습니다.

#!/usr/bin/env ruby -w

위처럼 작성하면 파일을 실행할 때마다 자동으로 경고(warning) 옵션이 적용되므로, 매번 수동으로 옵션을 넘길 필요가 없습니다.

4. 매직 주석(Magic Comment)

매직 주석은 Ruby 인터프리터의 동작 방식을 변경하는 특별한 주석입니다. 몇 가지 대표적인 예를 살펴보겠습니다.

frozen_string_literal

문자열을 기본적으로 불변(frozen) 객체로 만들어 성능을 개선하고 의도치 않은 변경을 방지합니다.

# frozen_string_literal: true

encoding

파일의 문자 인코딩을 지정합니다.

# encoding: utf-8

warn_indent

흥미로운 매직 주석 중 하나로, 들여쓰기가 잘못되었을 때 경고를 표시합니다.

# warn_indent: true

예를 들어 다음과 같이 defend의 들여쓰기가 맞지 않으면:

def comments
  end

아래와 같은 경고 메시지가 출력됩니다.

warning: mismatched indentations at 'end' with 'def' at 3

5. ERB 주석

Rails 뷰에서 ERB를 사용하고 있다면, 다음 문법으로 주석을 작성할 수 있습니다.

<%# ERB 주석 %>

다만 개인적으로는 이런 주석이 꼭 필요하지 않도록 코드를 작성하는 것이 좋다고 생각합니다. 뷰(view)에는 최대한 로직을 두지 않아야 하며, 로직이 없다면 설명할 주석도 자연스럽게 줄어들기 때문입니다.

혹시 디버깅 목적으로 코드를 임시 비활성화하고 싶다면 어떻게 해야 할까요? 코드를 삭제하고 Git 같은 버전 관리 시스템을 신뢰하세요. 언제든 이전 상태로 되돌릴 수 있습니다.

마무리 정리

이번 글에서는 Ruby의 다양한 주석 유형을 배웠습니다.

  • 일반 주석: #
  • 여러 줄 주석: 줄마다 #, 또는 =begin ~ =end
  • Shebang 주석: #!
  • 매직 주석: # frozen_string_literal: true
  • ERB 주석: <%# ... %>

주석은 코드의 가독성과 유지보수성을 좌우하는 작지만 강력한 도구입니다. 오늘 배운 내용을 바탕으로 더 깔끔하고 읽기 쉬운 Ruby 코드를 작성해 보세요!