featured-image-belajar-pemrograman-ruby-from-zero-to-pro-persiapan-pengenalan

Belajar Pemrograman Ruby from Zero to Pro – Bagian 1 Persiapan & Pengenalan

Pendahuluan

Saya sudah beberapa kali melirik Bahasa pemrograman Ruby. Namun, belum memiliki kesempatan untuk benar-benar membenamkan diri mempelajarinya. Ceritanya, bos saya berkata bahwa mencari programmer Ruby itu sulit. Kalau mau kerja sebagai programmer Ruby, gajinya gede. Salah satu alasannya, karena susah dicarinya. Bahkan, tadinya bos saya mencarinya Ruby programmer. Tapi, karena susah, akhirnya pakai PHP saja, yang sudah (sangat) banyak penggemarnya di Indonesia (termasuk saya). Setelah browsing-browsing, sepertinya apa yang disampaikan bos ada benarnya. Hmmm, jadi kepingin belajar Ruby nih…

# Pendahuluan alias curhatan ini masih berlanjut.
# Anda tidak harus membaca selengkapnya untuk mulai belajar.
# Tapi, kalau betah, silahkan..! (Btw, ini contoh baris komen di Ruby)

Saya ini hitungannya suka je-Jepang-an, hal-hal yang berkaitan dengan Jepang. Saya hobi nonton anime (sekarang sudah kurang karena kesibukan), baca manga, belajar Bahasa Jepang. Bahkan saya berkeinginan untuk melanjutkan studi di Jepang. Tapi kok, saya belum pernah mencoba belajar bahasa pemrograman Ruby yang diprakarsai oleh orang Jepang,
Yukihiro Matsumoto. (Hampir saja saya menuliskannya “Yukihira Matsumoto”, keingat Yukihira Souma dari anime Shokugeki no Souma. wkwkwk..) Ya, tentu saja Ruby yang dirilis ke publik pada tahun 1995 sebagai software open source, bisa menjadi sepopuler ini juga berkat kontribusi dari banyak orang dari seluruh dunia. Termasuk orang-orang Indonesia.

Selain itu, belakangan ini, saya mendapat informasi bahwa ada kesempatan memperoleh beasiswa pelatihan programming intensif Ruby on Rails yang diadakan oleh GO-JEK. Pelatihan tersebut diadakan melalui program GO-SCHOLAR TECH Ruby on Rails yang bekerjasama dengan KollaEdu. Apalagi ada kesempatan untuk berkarir di GO-JEK setelah selesai pelatihan. Wah,.. pingin ikutan nih. Sayangnya, saya tidak bisa ikut karena pekerjaan. Wait,.. itu tidak mengijinkan saya beralasan untuk tidak bisa belajar Ruby.

Tambahan lagi, kabarnya pada tahun 2017 ini akan diadakan RubyConf pertama di Indonesia.

Saya belum seorang yg ahli di Ruby. Jadi, jika Anda memiliki keyakinan “belajarlah dari ahlinya!”, mungkin tulisan ini tidak tepat untuk Anda. Namun, jika Anda tidak keberatan belajar Ruby bersama saya, dari nol hingga menjadi pro, mari kita mulai!

Sumber Materi Belajar

Karena saya juga masih belajar, jadi saya perlu mencari sumber materi belajar yang akan digunakan. Di bawah ini merupakan beberapa link ke materi belajar yang akan saya gunakan. Daftar tersebut dapat bertambah dan berkurang seiring berjalannya waktu.

Mengenal Bahasa Pemrograman Ruby

Websitewww.ruby-lang.org
Open SourceYa
Source Codehttps://github.com/ruby/ruby
PemrakarsaYukihiro Matsumoto
Tahun Pertama Keluar1995
Ekstensi File.rb

Beberapa website yang dibuat menggunakan bahasa pemrograman Ruby:

Menginstal Ruby

Pertama-tama, Anda dapat mengecek apakah Ruby sudah terinstal dengan menjalankan perintah berikut di terminal.

ruby --version
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux-gnu]

Apabila Ruby sudah terinstal, seharusnya muncul informasi versi ruby seperti di atas (tidak perlu sama persis). Namun jika belum, muncul error command not found atau sejenisnya. Silahkan instal terlebih dahulu. Untuk Windows, Anda dapat gunakan RubyInstaller. Sedangkan untuk platform lain, silahkan ikuti petunjuk di dokumentasi Ruby.

Belajar Ruby Menggunakan Shell Interactive Ruby irb

irb merupakan sebuah modul Ruby yang mengijinkan Anda memasukkan kode program Ruby secara interaktif. irb merupakan modul bawaan. Jadi, dengan Anda menginstal Ruby, Anda juga telah menginstal irb.

Dengan menggunakan irb, Anda dapat langsung melihat output dari kode yang Anda masukkan. Sama seperti ketika Anda menggunakan console di browser, Python command line, Node.js CLI, Laravel Tinker. Programming environment yang seperti ini disebut sebagai REPL (Read-Eval-Print Loop).

Kenapa kok namanya REPL? Karena cara kerjanya program-program itu memang begitu:

  1. Read (baca) kode program yang Anda inputkan,
  2. Evaluate atau kerjakan kode,
  3. Print (tampilkan) hasil evaluation/pengerjaan kode ke layar,
  4. Loop (ulangi) dari nomor 1, dengan menunggu kode berikutnya yang Anda inputkan

Menggunakan irb bisa menjadi cara yang baik untuk memulai belajar Ruby. Anda menginputkan kode program Ruby, seketika itu juga irb akan memberikan output dari kode tersebut. Untuk memulainya, silahkan buka aplikasi terminal di OS Anda (seperti gnome-terminal atau cmd.exe). Kemudian jalankan perintah irb. Interactive Ruby akan terbuka dan muncul prompt seperti irb(main):001:0> (tidak harus sama) di terminal.

Contoh 1: "Halo Ruby..!"

Anda bisa menjalankan "Halo Ruby..!", dan irb akan memberikan hasil evaluasi berupa string "Halo Ruby...!". Seperti yang Anda lihat di bawah ini, hasil evaluasi inputan Anda ditampilkan setelah =>.

"Haro Ruby..!"
=> "Halo Ruby..!"

Contoh 2: Kalkulator

Anda juga bisa memperlakukan irb selayaknya kalkulator.

354 * 313
=> 110802
354 - 313
=> 41
354 + 313
=> 667
10 ** 3
=> 1000
1.0 / 3.0
=> 0.3333333333333333

Contoh 3: Error!

Jika terdapat kesalahan pada perintah yang Anda berikan, tentu saja Ruby juga akan memberi tahu Anda salahnya dimana dan kira-kira kenapa. Sama halnya jika Anda memberikan perintah yang tidak ia kenali.

3 / 0
ZeroDivisionError: divided by 0
        from (irb):34:in `/'
        from (irb):34
        from /usr/bin/irb:11:in `<main>'
tuliskan "Halo.. Mau belajar Ruby ya?\n"
NoMethodError: undefined method `katakan' for main:Object
        from (irb):35
        from /usr/bin/irb:11:in `<main>'
5 kali tuliskan "Iya.."
SyntaxError: (irb):36: syntax error, unexpected tIDENTIFIER, expecting end-of-input
5 kali tuliskan "iya.. "
      ^
        from /usr/bin/irb:11:in `<main>'

Contoh 4: Saling Mengerti

Meski begitu, sebenarnya kalau Anda bisa ngertiin dia, dia bakal ngertiin Anda balik kok..! Apapun yang Anda minta, akan dia kabulkan seketika itu juga, asalkan Anda memberikan perintah yang tepat, dapat ia pahami, dan sanggup ia kerjakan.

0 / 3
=> 0
print "Halo.. Mau belajar Ruby ya?\n"
Halo.. Mau belajar Ruby ya?
=> nil
5.times { print "Iya.." }
Iya..Iya..Iya..Iya..Iya..=> 5

Contoh 5: Salah Paham, Kah?

Hmmm, namun, Anda tetap harus berhati-hati dengan adanya kesalahpahaman antara Anda dan Ruby. Kesalahpahaman antar manusia saja sudah biasa, apalagi antara manusia dengan komputer yang tidak mempedulikan konteks.

  • Oke, Anda ingin meminta bantuan Ruby untuk melakukan penghitungan matematika. Kalau masalah hitung-hitungan biasa, sudah tidak diragukan lagi kehebatan komputer.

    Soal nomor 1, 27 / 3 * 45:

    27 / 3 * 45
    => 405

    Oke, berarti jawabannya 405. Sekarang, lanjut ke nomor 2:

    23 / 46 * 808 + 1
    => 1

    Loh, kok yang nomor dua gak masuk akal jawabannya? Masak, cuman 1? Hmm, jadi ragu-ragu. Jangan-jangan yang nomor 1 juga salah. Tapi, kok Ruby gak ngasih tahu apa-apa sih kalau da error.

    Ternyata, jika penghitungan melibatkan koma-komaan, kita harus memberitahukannya pada Ruby. Karena 23 / 46 = 0.5 dan Anda tidak meminta Ruby untuk melibatkan koma-komaan, jadi dia hanya mengambil 0-nya saja. Dan tentu saja, 0 * 808 + 1 = 1. “Jadi, saya gak salah dong..!”, kata Ruby.

    Gunakan kode berikut untuk melibatkan koma-komaan:

    23 / 46 * 808 + 1
    => 405.0
  • Awalnya, karena belum tahu banyak tentang Ruby, jadi hanya ingin ngetes. Apakah memang benar seperti ini cara menghitung persenan di Ruby. Misalnya, 10% dari 100.
    10%(100)
    => 10

    Yup, benar…! Oke, kalau begitu sekarang mulai menghitung yang beneran. Ini kebetulan sedang ada diskon 10% di Tokopedia. Dihitung dulu, biar bisa kira-kira, 10% dari 4.560.000.

    10%(4560000)
    => 10

    Loh, loh, loh… Kok tetap 10 sih?

    Sebenarnya Ruby tidak mengalami masalah sedikitpun dalam memahami perintah Anda. Dia betul-betul mengerti bagaimana cara menghitung 10%(4560000). Tapi, masalahnya, pemahaman dia terhadap perintah tersebut tidak sama dengan apa yang sebetulnya Anda maksud. Meskipun tulisannya sama, namun tulisan tersebut dimaknai sedikit berbeda oleh Ruby. Sama halnya dengan tulisan “CAT” dan “AIR”. Meskipun tulisannya sama, namun maknanya dalam Bahasa Indonesia sangat berbeda dengan maknanya dalam Bahasa Inggris.

    Operator % dalam bahasa pemrograman Ruby, dan juga beberapa bahasa pemrograman lainnya (seperti PHP dan JavaScript), digunakan untuk menghitung modulo (sisa bagi). Bukan untuk melambangkan persen atau per seratus. 7 / 2 = 3 sisa 1, jadi 3 % 2 = 1.

    Kemudian, 10 / 100 = 0 sisa 10, jadi 10 % 100 = 10. Selain itu, jika Anda menginginkan perkalian, Anda tidak bisa menuliskannya 10(10), gunakan 10 * 10. Atau jika Anda bersikeras ingin menggunakan ( dan ), silahkan gunakan 10 * (10). Tetap saja Anda memerlukan operator * untuk perkalian.

Membuat hello-world.rb

Kita akan mengakhiri materi belajar Ruby bagian persiapan & pengenalan ini dengan membuat sebuah file berisikan kode Ruby. Buat file dengan nama hello-world.rb. Kemudian isikan kode berikut:

puts "Hello World!"
print "Hello Ruby!\n"
print "Ada yang memanggil saya, \"Hai, kamu..!\""
print ' Heh?'
"Saya diam saja"

Simpan file tersebut. Untuk menjalankan kode program Ruby di dalam sebuah file, Anda bisa jalankan perintah ruby <nama file> di terminal.

ruby hello-world.rb
Hello World!
Hello Ruby!
Ada yang memanggil saya, "Hai, kamu..!" Heh?

Jadi,

  • puts membuat baris baru secara otomatis setelah string Hello World!
  • print meminta kita menambahkan \n di akhir string untuk menyisipkan baris baru
  • \ merupakan escape character, digunakan untuk meng-output-kan karakter khusus. Misalnya, \n untuk baris baru dan \" untuk meng-output-kan karakter " di antara string literal ". Dapat dilihat pada contoh:
    "..saya, \"Hai, kamu..!\" Heh?"
  • Baris "Saya diam saja" tidak ditampilkan di layar terminal karena kita memang tidak meminta Ruby untuk melakukannya. Bukan karena Ruby mengabaikannya.

Pada kenyataannya, Anda tidak akan membuat “Hello World!” untuk pekerjaan Anda. Anda akan dituntut untuk menyelesaikan masalah nyata di kehidupan dengan membuat program. Oleh karenanya, masih banyak yang harus kita pelajari.

Terima kasih, semoga bermanfaat dan sampai jumpa di materi belajar pemrograman Ruby bagian berikutnya..!

 


Gambar diambil dari udemy

Muhammad Ikhsan

Senang belajar dan berbagi ilmu.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *