Ruby - ไวยากรณ์
ให้เราเขียนโปรแกรมง่ายๆในทับทิม ไฟล์ทับทิมทั้งหมดจะมีนามสกุล.rb. ดังนั้นใส่ซอร์สโค้ดต่อไปนี้ในไฟล์ test.rb
#!/usr/bin/ruby -w
puts "Hello, Ruby!";
ที่นี่เราสันนิษฐานว่าคุณมีตัวแปล Ruby อยู่ในไดเร็กทอรี / usr / bin ตอนนี้ลองเรียกใช้โปรแกรมนี้ดังนี้ -
$ ruby test.rb
สิ่งนี้จะให้ผลลัพธ์ดังต่อไปนี้ -
Hello, Ruby!
คุณได้เห็นโปรแกรม Ruby อย่างง่ายแล้วตอนนี้ให้เราดูแนวคิดพื้นฐานบางประการที่เกี่ยวข้องกับ Ruby Syntax
ช่องว่างในโปรแกรม Ruby
โดยทั่วไปอักขระช่องว่างเช่นช่องว่างและแท็บจะถูกละเว้นในรหัส Ruby ยกเว้นเมื่อปรากฏในสตริง อย่างไรก็ตามบางครั้งพวกเขาถูกใช้เพื่อตีความข้อความที่คลุมเครือ การตีความการเรียงลำดับนี้จะสร้างคำเตือนเมื่อเปิดใช้งานตัวเลือก -w
ตัวอย่าง
a + b is interpreted as a+b ( Here a is a local variable)
a +b is interpreted as a(+b) ( Here a is a method call)
การสิ้นสุดบรรทัดในโปรแกรม Ruby
Ruby ตีความอัฒภาคและอักขระขึ้นบรรทัดใหม่เป็นส่วนท้ายของคำสั่ง อย่างไรก็ตามหาก Ruby พบตัวดำเนินการเช่น +, - หรือแบ็กสแลชที่ท้ายบรรทัดจะแสดงถึงความต่อเนื่องของคำสั่ง
ตัวระบุทับทิม
ตัวระบุคือชื่อของตัวแปรค่าคงที่และวิธีการ ตัวระบุ Ruby นั้นคำนึงถึงตัวพิมพ์เล็กและใหญ่ หมายความว่า Ram และ RAM เป็นตัวระบุสองตัวที่แตกต่างกันใน Ruby
ชื่อตัวระบุ Ruby อาจประกอบด้วยอักขระที่เป็นตัวอักษรและตัวเลขคละกันและอักขระขีดล่าง (_)
คำสงวน
รายการต่อไปนี้แสดงคำสงวนใน Ruby ห้ามใช้คำสงวนเหล่านี้เป็นชื่อคงที่หรือตัวแปร อย่างไรก็ตามสามารถใช้เป็นชื่อเมธอดได้
เริ่ม | ทำ | ต่อไป | แล้ว |
สิ้นสุด | อื่น | ศูนย์ | จริง |
นามแฝง | Elsif | ไม่ | undef |
และ | จบ | หรือ | เว้นแต่ |
เริ่ม | ทำให้มั่นใจ | ทำซ้ำ | จนถึง |
หยุดพัก | เท็จ | กู้ภัย | เมื่อไหร่ |
กรณี | สำหรับ | ลองอีกครั้ง | ในขณะที่ |
ชั้นเรียน | ถ้า | กลับ | ในขณะที่ |
def | ใน | ตนเอง | __ไฟล์__ |
กำหนด? | โมดูล | สุดยอด | __ไลน์__ |
นี่คือเอกสารใน Ruby
"เอกสารที่นี่" หมายถึงการสร้างสตริงจากหลายบรรทัด ตาม << คุณสามารถระบุสตริงหรือตัวระบุเพื่อยุติสตริงลิเทอรัลและบรรทัดทั้งหมดที่อยู่ถัดจากบรรทัดปัจจุบันจนถึงเทอร์มิเนเตอร์คือค่าของสตริง
ถ้าเทอร์มิเนเตอร์ถูกยกมาประเภทของอัญประกาศจะกำหนดประเภทของลิเทอรัลสตริงที่เน้นบรรทัด สังเกตว่าจะต้องไม่มีช่องว่างระหว่าง << และเทอร์มิเนเตอร์
นี่คือตัวอย่างต่างๆ -
#!/usr/bin/ruby -w
print <<EOF
This is the first way of creating
here document ie. multiple line string.
EOF
print <<"EOF"; # same as above
This is the second way of creating
here document ie. multiple line string.
EOF
print <<`EOC` # execute commands
echo hi there
echo lo there
EOC
print <<"foo", <<"bar" # you can stack them
I said foo.
foo
I said bar.
bar
สิ่งนี้จะให้ผลลัพธ์ดังต่อไปนี้ -
This is the first way of creating
her document ie. multiple line string.
This is the second way of creating
her document ie. multiple line string.
hi there
lo there
I said foo.
I said bar.
คำชี้แจงของ Ruby BEGIN
ไวยากรณ์
BEGIN {
code
}
ประกาศรหัสที่จะเรียกก่อนที่โปรแกรมจะทำงาน
ตัวอย่าง
#!/usr/bin/ruby
puts "This is main Ruby Program"
BEGIN {
puts "Initializing Ruby Program"
}
สิ่งนี้จะให้ผลลัพธ์ดังต่อไปนี้ -
Initializing Ruby Program
This is main Ruby Program
คำชี้แจง Ruby END
ไวยากรณ์
END {
code
}
ประกาศรหัสที่จะเรียกใช้ในตอนท้ายของโปรแกรม
ตัวอย่าง
#!/usr/bin/ruby
puts "This is main Ruby Program"
END {
puts "Terminating Ruby Program"
}
BEGIN {
puts "Initializing Ruby Program"
}
สิ่งนี้จะให้ผลลัพธ์ดังต่อไปนี้ -
Initializing Ruby Program
This is main Ruby Program
Terminating Ruby Program
ความคิดเห็นทับทิม
ความคิดเห็นจะซ่อนบรรทัดบางส่วนของบรรทัดหรือหลายบรรทัดจากตัวแปล Ruby คุณสามารถใช้อักขระแฮช (#) ที่จุดเริ่มต้นของบรรทัด -
# I am a comment. Just ignore me.
หรือความคิดเห็นอาจอยู่ในบรรทัดเดียวกันหลังคำสั่งหรือนิพจน์ -
name = "Madisetti" # This is again comment
คุณสามารถแสดงความคิดเห็นได้หลายบรรทัดดังนี้ -
# This is a comment.
# This is a comment, too.
# This is a comment, too.
# I said that already.
นี่คืออีกรูปแบบหนึ่ง ความคิดเห็นบล็อกนี้ปกปิดหลายบรรทัดจากล่ามด้วย = begin / = end -
=begin
This is a comment.
This is a comment, too.
This is a comment, too.
I said that already.
=end