Ruby'de birden çok satıra nasıl yorum yapabilirim?
Ruby'de birden çok satıra nasıl yorum yapabilirim?
Yanıtlar:
#!/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.
#
hepsinin üzerinde kullanmayı tercih ederim , çünkü yorum satırlarını görsel olarak daha iyi =begin
/ =end
veya burada-yöntemini kullanarak ayırır . Ve iyi iş çıkardın.
=begin
ve =end
öncesinde herhangi bir boşluk olamaz.
=begin...=end
ve son blok #
kullanımının rdoc tarafından toplandığına dikkat etmek önemlidir .
=begin
My
multiline
comment
here
=end
#
Her satırdan önce a ve boşluk yaz? Özellikle satır sonları eklemeye başlarsam birçok tuş vuruşu olur.
Varlığına rağmen =begin
ve =end
normal ve yorumuna daha doğru bir şekilde kullanmaktır #
'her satırda bu. Herhangi bir yakut kütüphanesinin kaynağını okursanız, neredeyse tüm durumlarda çok satırlı yorumların bu şekilde yapıldığını göreceksiniz.
#
çünkü daha açık. Kodu yorumlarken, bunun ne olduğunu açıklığa kavuşturmak önemlidir. Kodu bir düzenleyicide kod renklendirme avantajı olmadan görüntülüyorsanız, kodun =begin/=end
neden göz ardı edildiğini anlamanız zor olabilir.
#
yorumları kullanmalısınız . (Bunun neden iki downvotes olduğunu merak ediyorum. Sanırım Stack Overflow topluluğu bazen yanlış yapmak zorunda!)
3 == three
nerede def three; 1 + 1 + 1 end
. Bu nedenle her ikisi de geçerlidir. Kimin umrunda? Kullanın 3
!
vi
, bir üretim sunucusunda kullandığınız zamandır . Bu durumda, muhtemelen gelişiminizi orada yapmamalısınız.
#!/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!*/
İnsanların kullanmasını istemediğiniz belgelere sahip bir işlev gibi çok satırlı bir yorumun içinde tek satırlı yorumlarınız ve kodunuz varsa mantıklı olabilir, ancak bunu dosyadan kaldırmak da istemezsiniz.
İkisinden birini kullanarak:
= başlayacak Bu dır-dir bir yorum Yap blok = bitiş
veya
# Bu # dır-dir # a # yorum Yap # blok
şu anda rdoc tarafından desteklenen tek ikisi, sadece bence bunları kullanmak için iyi bir neden.
=begin
veya #
her ikisi olmasıdır <<-DOC
ve "
sözdizimi idam yararsız dize hazır üretecektir.
=begin
(some code here)
=end
ve
# This code
# on multiple lines
# is commented out
ikisi de doğrudur. İlk yorum türünün avantajı düzenlenebilirliktir - daha az karakter silindiği için rahatsız edilmesi daha kolaydır. İkinci yorum türünün avantajı okunabilirliktir - kodu satır satır okumak, belirli bir satırın yorumlandığını söylemek çok daha kolaydır. Çağrınız ama peşinizden kimin geldiğini ve onların okumasının ve bakımının ne kadar kolay olduğunu düşünün.
İşte bir örnek :
=begin
print "Give me a number:"
number = gets.chomp.to_f
total = number * 10
puts "The total value is : #{total}"
=end
Her şey arasına yerleştirmek =begin
ve =end
olursa olsun arasına içerir kaç kod satırları bir yorum olarak kabul edilir.
Not:=
ve arasında boşluk olmadığından emin olun begin
:
=begin
= begin
=begin
comment line 1
comment line 2
=end
= begin ve = end'in bu satırdaki ilk şey olduğundan emin olun (boşluk yok)
Birinin Ruby on Rails içindeki bir html şablonunda birden çok satırı yorumlamanın bir yolunu araması durumunda = begin = end ile ilgili bir sorun olabilir, örneğin:
<%
=begin
%>
... multiple HTML lines to comment out
<%= image_tag("image.jpg") %>
<%
=end
%>
%> image_tag'in kapatılması nedeniyle başarısız olur.
Bu durumda, belki bu yorum ya da yorum olup olmadığını tartışılabilir, ama ben istenmeyen bölümü bir "eğer yanlış" blok ile kapsama tercih:
<% if false %>
... multiple HTML lines to comment out
<%= image_tag("image.jpg") %>
<% end %>
Bu çalışacak.
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
Gönderi anında, yığın akışı motorunun sözdizimi renklendirmesini doğru şekilde oluşturmadığını unutmayın. Seçim editörünüzde nasıl işlediğini test etmek bir alıştırma olarak izin verilir. ;)
.pp
manifestolarda (Ruby benzeri bir sözdizimine dayanarak) çok satırlı yorum aramaya düşerse, c tarzı blok yorumları kullanabilirsiniz/**/