Bagaimana jika kita ingin mengatakan “Hello” sekaligus banyak tanpa membuat jari dan tangan kita semua kelelahan? Kita perlu mendefinisikan sebuah method!
Kode def hi
memulai definisi suatu method. Kode tersebut berkata pada
Ruby bahwa kita sedang mendefinisikan sebuah method, yang bernama hi
.
Baris selanjutnya adalah body (badan) method, baris yang sama seperti
yang sudah kita lihat sebelumnya: puts "Hello World"
. Baris terakhir
end
memberi tahu Ruby bahwa kita sudah selesai mendefinisikan metode.
Ruby merespons => :hi
yang mana memberi tahu kita bahwa kita sudah selesai
mendefinisikan method. Respons bisa jadi => nil
pada Ruby 2.0 dan versi
sebelumnya. Tetapi, ini bukanlah hal yang penting di sini. Mari kita lanjut.
Ringkasan, Kehidupan Berulang-ulang dari Sebuah Method
Sekarang mari kita coba menjalankan method tersebut berulang kali:
Nah, mudah bukan? Pemanggilan method di Ruby memang semudah menyebut nama method yang bersangkutan. Jika method tidak menerima parameter berarti memang itu saja yang Anda butuhkan. Anda bisa menambahkan tanda kurung jika Anda suka, tetapi tanda kurung tersebut tidak diperlukan.
Bagaimana kalau kita ingin mengatakan hello ke satu orang, tetapi bukan
ke seluruh dunia? Caranya, Anda tinggal mendefinisikan ulang method hi
agar menerima name
sebagai parameter.
Sukses… tetapi coba kita lihat dulu sebentar apa yang terjadi disini.
Variabel dalam Sebuah String
Apa itu tadi artinya #{name}
? Tanda pagar dan kurung kurawal tadi
adalah cara Ruby untuk menyisipkan sesuatu ke dalam sebuah string.
Jadi objek di antara kurung kurawal menjadi sebuah string
(jika belum berbentuk String) kemudian diganti dengan string di luar
kurung kurawal tersebut. Anda juga bisa menggunakan tanda pagar dan
kurung kurawal ini untuk memastikan nama seseorang telah diubah menjadi
kapital huruf depannya (capitalized):
Ada beberapa trik yang bisa dilihat di sini. Trik pertama, kita panggil method
tanpa menggunakan tanda kurung lagi. Jika sudah jelas apa yang Anda lakukan,
maka tanda kurung boleh dihilangkan (opsional). Trik lainnya adalah
menggunakan default parameter World
. Jadi apa yang method hi
katakan
adalah “Jika parameter name tidak ada, maka gunakan default name
yaitu "World"
”.
Hello World Berkembang Menjadi Penyapa
Bagaimana jika kita ingin membuat penyapa, yang mengingat nama Anda dan menyambut serta selalu memperlakukan Anda dengan hormat. Anda akan membutuhkan sebuah objek untuk ini. Mari kita buat sebuah kelas “Greeter”.
Keyword baru di sini adalah class
. Keyword ini mendefinisikan kelas
baru yang disebut Greeter dan beberapa method untuk kelas tersebut.
Perhatikan juga @name
. Ini adalah variabel objek, yang tersedia
di semua method. Seperti yang bisa Anda lihat, variabel objek @name
digunakan pada method say_hai
dan say_bye
.
Lalu, bagaimana cara menjalankan kelas Greeter? Membuat sebuah objek.