답변:
#!/usr/bin/env ruby
=begin
Every body mentioned this way
to have multiline comments.
The =begin and =end must be at the beginning of the line or
it will be a syntax error.
=end
puts "Hello world!"
<<-DOC
Also, you could create a docstring.
which...
DOC
puts "Hello world!"
"..is kinda ugly and creates
a String instance, but I know one guy
with a Smalltalk background, who
does this."
puts "Hello world!"
##
# most
# people
# do
# this
__END__
But all forgot there is another option.
Only at the end of a file, of course.
#
주석 처리 된 행을 시각적으로 =begin
/ =end
또는 here-to 방법 보다 시각적으로 분리하기 때문에 대부분을 사용하는 것을 선호합니다 . 그리고 잘 했어.
=begin
과 =end
공백 앞에 할 수 없습니다.
=begin...=end
블록과 마지막 블록 만 #
설명서를 생성 할 때 rdoc에 의해 선택됩니다.
=begin
My
multiline
comment
here
=end
#
모든 한 줄 앞에 a 와 공백을 입력 하시겠습니까? 특히 줄 바꿈을 추가하기 시작하면 많은 키 입력이 발생합니다.
=begin
및 의 존재에도 불구 하고 =end
, 일반적이고 더 정확한 주석 처리 방법은 #
각 줄에 를 사용하는 것 입니다. 루비 라이브러리의 소스를 읽으면 거의 모든 경우에 여러 줄 주석이 수행되는 방식임을 알 수 있습니다.
#
더 분명하기 때문에 사용하는 것을 선호합니다 . 코드에 주석을 달 때 그것이 일어난 일을 분명히하는 것이 중요합니다. 편집기를 사용하여 코드 색상을 표시하지 않고 코드를 보는 경우 코드 =begin/=end
가 무시되는 이유를 파악하기가 어려울 수 있습니다.
#
주석 을 사용해야합니다 . (이것에 두 개의 다운 보트가있는 이유가 궁금합니다. Stack Overflow 커뮤니티가 때때로 잘못 이해해야 할 것 같습니다!)
3 == three
어디서 def three; 1 + 1 + 1 end
? 따라서 둘 다 유효합니다. 무슨 상관이야? 사용 3
!
vi
은 프로덕션 서버에서 사용할 때 입니다. 어쨌든 어쨌든 개발을 수행해서는 안됩니다.
#!/usr/bin/env ruby
=begin
Between =begin and =end, any number
of lines may be written. All of these
lines are ignored by the Ruby interpreter.
=end
puts "Hello world!"
/*I am a\n#nested\ncomment, which really serves no purpose*/
/*I am bound /*to*/ FAIL!*/
한 줄 주석과 여러 줄 주석 안에 코드가있는 경우 (예 : 사람들이 사용하기를 원하지 않지만 파일에서 주석을 제거하지 않으려는 설명서 기능).
=begin
(some code here)
=end
과
# This code
# on multiple lines
# is commented out
둘 다 맞습니다. 첫 번째 주석 유형의 장점은 편집 가능성입니다. 삭제되는 문자 수가 적기 때문에 주석을 해제하는 것이 더 쉽습니다. 두 번째 유형의 주석의 장점은 가독성입니다. 코드를 한 줄씩 읽으면 특정 행이 주석 처리되어 있음을 훨씬 쉽게 알 수 있습니다. 당신의 부름이지만 누가 당신을 쫓고 있는지 그리고 그들이 읽고 유지하는 것이 얼마나 쉬운 지 생각하십시오.
=begin
그리고 =end
그 사이에있는 것이 주석이라는 것을 시각적으로 전달하지 않습니다 ... Clojure, 예를 들어 (comment :whatever)
리드가 의미하는 바를 사용합니다 : stackoverflow.com/questions/1191628/block-comments-in-clojure
예를 들면 다음과 같습니다.
=begin
print "Give me a number:"
number = gets.chomp.to_f
total = number * 10
puts "The total value is : #{total}"
=end
모든 것은 당신이 사이에 배치 =begin
와 =end
관계없이 사이에 포함 몇 줄의 코드 주석으로 처리됩니다.
참고 :=
와 사이에 공백이 없는지 확인하십시오 begin
.
=begin
= begin
누군가가 Ruby on Rails의 html 템플릿에서 여러 줄을 주석 처리하는 방법을 찾고 있다면 = begin = end와 같은 문제가있을 수 있습니다.
<%
=begin
%>
... multiple HTML lines to comment out
<%= image_tag("image.jpg") %>
<%
=end
%>
%>가 image_tag를 닫아서 실패합니다.
이 경우, 이것이 주석 처리되는지 아닌지에 대해서는 논쟁의 여지가 있지만, 원치 않는 섹션을 "if false"블록으로 묶는 것을 선호합니다.
<% if false %>
... multiple HTML lines to comment out
<%= image_tag("image.jpg") %>
<% end %>
작동합니다.
def idle
<<~aid
This is some description of what idle does.
It does nothing actually, it's just here to show an example of multiline
documentation. Thus said, this is something that is more common in the
python community. That's an important point as it's good to also fit the
expectation of your community of work. Now, if you agree with your team to
go with a solution like this one for documenting your own base code, that's
fine: just discuss about it with them first.
Depending on your editor configuration, it won't be colored like a comment,
like those starting with a "#". But as any keyword can be used for wrapping
an heredoc, it is easy to spot anyway. One could even come with separated
words for different puposes, so selective extraction for different types of
documentation generation would be more practical. Depending on your editor,
you possibly could configure it to use the same syntax highlight used for
monoline comment when the keyword is one like aid or whatever you like.
Also note that the squiggly-heredoc, using "~", allow to position
the closing term with a level of indentation. That avoids to break the visual reading flow, unlike this far too long line.
aid
end
게시 시점에 stackoverflow 엔진은 구문 색상을 올바르게 렌더링하지 않습니다. 선택한 편집기에서 렌더링하는 방법을 테스트하는 것은 연습입니다. ;)
.pp
매니페스트 (A 기반으로 루비와 같은 구문) 당신은 C 스타일 블록 주석 사용할 수 있습니다/**/