Bahasa Pemrograman Ruby 2 TINJAUAN PUSTAKA

12

BAB II TINJAUAN PUSTAKA

2.1 Bahasa Pemrograman Ruby

Ruby adalah bahasa pemrograman scripting yang berorientasi obyek. Tujuan dari ruby adalah menggabungkan kelebihan dari semua bahasa-bahasa pemrograman scripting yang ada di dunia. Ruby ditulis dengan bahasa pemrograman C dengan kemampuan dasar seperti Perl dan Python[4].

2.1.1 Sejarah Ruby

Ruby pertama kali dibuat oleh seorang programmer Jepang bernama Yukihiro Matsumoto. Pada tahun 1993 Yukihiro ingin membuat sebuah bahasa pemrograman scripting yang memiliki kemampuan orientasi obyek. Pada saat itu pemrograman berorientasi obyek sedang berkembang tetapi belum ada bahasa pemrograman scripting yang mendukung pemrograman obyek[1]. Penulisan Ruby dimulai pada Februari 1993 dan pada Desember 1994 dirilis versi alpha dari Ruby. Pada awal perkembangan Ruby, Yukihiro menulis Ruby sendiri sampai pada tahun 1996 sudah terbentuk komunitas Ruby yang banyak mengontribusikan perkembangan Ruby[1]. Saat ini Ruby telah berkembang tidak hanya di Jepang, tetapi diseluruh dunia. Bulan Agustus tahun 2006, Macintosh telah melakukan kerja sama dengan mengintegrasikan Ruby on Rails pada Mac OS X v10.5 Leopard yang akan diluncurkan bulan Oktober 2007[1]. 2.1. 2.1.2 Kelebihan Ruby  Sintaks sederhana.  Memiliki exception handling yang baik.  Bahasa Pemrograman Berorientasi Objek.  Mengusung konsep single inheritance.  Open source, siapa saja dapat menggunakannya dengan cuma-cuma dan dapat ikut berpartisipasi mengembangkannya.  Memiliki garbage collector yang secara otomatis akan menghapus informasi tak terpakai dari memori [2].

2.1.3 Variabel

Untuk mendeklarasikan variabel dalam Ruby tidak perlu mendefinisikan tipe data seperti pada bahasa pemrograman Java atau C. Variabel dapat langsung digunakan contoh: irb a = 3 irb b = 2 irb a + b = 5 Tidak hanya tipe data numerik saja melainkan tipe data string dapat didefinisikan secara langsung. irb saya = sedang menulis = sedang menulis irb saya.class = String irb saya.length = 14 Dalam pemrograman Ruby terdapat istilah simbol. Simbol adalah konstanta pengganti string. Untuk mendefinisikan simbol digunakan tanda ”:”. Contoh a =:test. Beberapa aturan penulisan variabel dalam Ruby. a. Variabel lokal, dimulai dengan huruf kecil. Contoh: admin, e-book b. Variabel global, dimulai dengan tanda dollar . Contoh: admin, e- book c. Konstanta dan class, dimulai dengan huruf besar. Contoh: Admin, E- book d. Instance variables, dimulai dengan tanda . Contoh: admin, e- book e. Class variables, dimulai dengan tanda . Contoh: admin [6]

2.1.4 Array

Dalam pemrograman Ruby inisialisasi array disimbolkan dengan tanda [ ]. Sama seperti bahasa pem rograman lain elemen ke-0 menunjukkan data pertama dalam array [6]. irb kecepatan = [5000, 15000, 30000, 60000, 100000] = [5000, 15000, 30000, 60000, 100000] irb kecepatan[0] = 5000 irb kecepatan[2] = 30000 Ruby memiliki cara lain untuk memasukkan nilai pada data string array dengan perintah w . irb warna = w red green blue black = [red, green, blue, black] irb warna[0] = red irb warna[3] = black Dalam array, Ruby juga memiliki methods yang berguna untuk mengetahui manajemen informasi pada array. a. empty? akan mengembalikan nilai true jika array kosong. irb warna.empty? = false b. size akan mengembalikan nilai berupa data numerik jumlah elemen pada suatu array irb warna.size = 4 c. first dan last akan mengembalikan nilai berupa elemen pertama dan terakhir. irb warna.first = red irb warna.last = black d. delete akan menghapus nilai elemen pada elemen dan mengembalikan nilai tersebut. irb warna.delete red = red irb warna = [green, blue, black]

2.1.5 Hash

Hash merupakan jenis lain tempat penyimpanan data dalam Ruby. Hash mempunyai sebuah key yang mempunyai satu nilai value. Sebuah hash dapat mempunyai beberapa key, akan tetapi satu key hanya dapat mempunyai satu nilai. Ketika mendefinisikan sebuah hash, diperlukan spesifikasi sebuah key dengan perintah key = value. irb warna_mobil = { irb kitt = hitam, irb herbie = putih, irb batmobile = hitam, irb larry = hijau irb } = {kitt=hitam, herbie=putih, batmobile=hitam,larry=hijau} Untuk contoh di atas didefinisikan sebuah hash bernama warna_mobil dengan masing-masing key dan value. Untuk key herbie mempunyai value putih. Untuk mengambil nilai key yang ada dalam hash digunakan. irb warna_mobil[herbie] = putih [6]

2.1.6 Control structure

Dalam pemrograman Ruby juga mengenal struktur kontrol program yang biasa digunakan oleh bahasa pemrograman lain. a. If structure: Digunakan dalam kondisi bersyarat. Sintaksnya: if ”syarat” ”jika kondisi terpenuhi lakukan ini” end if ”syarat” ”jika kondisi terpenuhi lakukan ini” else ”jika tidak terpenuhi lakukan ini” end Jika terdapat 2 syarat if ”syarat pertama” ”jika syarat pertama terpenuhi lakukan ini” elseif ”syarat kedua” ”jika syarat pertama tidak terpenuhi dan kedua terpenuhi lakukan ini” else ”jika syarat pertama dan kedua tidak terpenuhi” end b. Unless structure: Digunakan dalam kondisi bersyarat. Adapun unless kebalikan dari if. Unless ”syarat” ”jika syarat tidak terpenuhi lakukan ini” end c. Loops structure: Ruby menyediakan fasilitas untuk perulangan dengan perintah while, until dan for. while Car.count 10 Car.new puts A new car instance was created. end until Car.count == 10 Car.new puts A new car instance was created. end Kedua pernyataan while dan until di atas menghasilkan keluaran yang sama [6].

2.1.7 Method

Sebuah method dideklarasikan dengan menggunakan keyword def dan diakhiri dengan end. Sebagai contoh : def coba_methodname puts coba {name} end a = Jaya coba_methoda coba_methodDunks Ketika dieksekusi, program diatas akan mengahasilkan output sebagai berikut: coba Jaya coba Dunks Untuk me-return sebuah nilai, hanya perlu menuliskan nilai atau variable tersebut di dalam method. def kali_duanilai_awal kali_dua = nilai_awal 2 kali_dua end kali_dua = kali_dua4 puts kali dua {kali_dua} Hasil eksekusi dari program ini adalah: kali dua 8 Sebenarnya bisa saja menggunakan keyword return untuk mereturn sebuah nilai dari method. Namun, di sini hanya ingin menunjukkan alternatif dari cara tersebut [6].

2.1.8 Classes

Deklarasi sebuah kelas dimulai dengan class dan diakhiri dengan end. Sebagai contoh akan membuat sebuah kelas Mahasiswa . class Mahasiswa def initializenama, npm nama = nama npm = npm end def cetak_info puts Nama: {nama} puts NPM: {npm} end end Instance variable dari sebuah kelas dideklarasikan dengan ‘’ yang akan membuatnya bisa diakses oleh semua instance method yang ada di kelas tersebut. Namun instance variable tersebut tidak akan bisa diakses dari luar kelas. Untuk bisa melakukan itu perlu membuat accessor method. Dengan menambahkan kedua method pada kelas yang telah dibuat. def nama=nama_baru nama = nama_baru end def nama nama end Bisa juga menguji method ini dengan melakukan pemanggilan method seperti dibawah ini. mhs = Mahasiswa.newSi Bocung,1203000439 mhs.cetak_info mhs.nama = Si Bocah mengubah nama menjadi Si Bocah mhs.cetak_info nama = mhs.nama method ini akan mereturn Si Bocah sebagai nama puts nama Namun untuk mendefinisikan method setter dan getter bagi setiap variable adalah pekerjaan yang melelahkan. Oleh karena itu Ruby menyediakan method attr_accessor untuk memudahkan. attr_accessor :npm attr_accessor :nama Selain accessor method ada lagi yang akan sering ditemukan di Rails, yaitu class method. def self.whatami puts “Saya Mahasiswa” end Method ini diakses dengan diawali oleh nama kelasnya. Mahasiswa.whatami akan mencetak Saya Mahasiswa [6]

2.1.9 Sistem operasi yang didukung

 Linux  Microsoft Windows 9598XPNT20002003Vista  MacOS X v10.5 Leopard  BeOS  OS2  Unix  MorphOS  Acorn RISC OS  Syllable  Symbian OS

2.2 Framework Ruby On Rails