Ruby adalah bahasa skripting 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.
Ruby pertama kali diciptakan oleh programmer asal jepang yang bernama Yukhiro Matsumoto. Penulisan ruby dimulai pada February 1993 dan pada Desember 1994 dirilis versi alpha dari ruby. Yukhiro menulis ruby sendiri sampai pada tahun 1996 sudah terbentuk komunitas Ruby yang banyak mengontribusikan perkembangan Ruby. 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 telah diluncurkan bulan Oktober 2007.
Adapun output ruby yang ada 3 yaitu print, puts dan printf. Dimana perbedaan tersebut merupakan:
- puts akan menambahkan karakter newline (‘\n’) pada akhir string dan parameternya harus string
Contoh:
irb(main):001:0> puts "Rhama Alamanda"
Rhama Alamanda
=> nil
- print hanya mencetak string tanpa menambahkan karakter newline
Contoh:
irb(main):002:0> print "Rhama Alamanda"
Rhama Alamanda=> nil
- printf sama dengan print; bedanya printf mengenal formatting seperti
* %s untuk string
* %f untuk float
* %d untuk integer dan seterusnya.
Perintah printf ini sama dengan perintah printf di bahasa C.
Contoh:
irb(main):023:0> a="pintar"
=> "pintar"
irb(main):024:0> printf "Saya%s",a
Sayapintar=> nil
Metode pada ruby
Metode adalah suatu hal yang dapat dilakukan pada suatu objek. Untuk mengetahui tipe/kelas dari suatu objek, kita dapat menggunakan metode class ; sedangkan apabila kita ingin mengetahui metode-metode apa saja yang berlaku umum untuk objek tersebut, dapat metode methods.
Contoh
irb(main):025:0> a=10
=> 10
irb(main):026:0> a.class
=> Fixnum
Angka yang dimana dengan batas -230 sampai 230–1 tergolong dalam kelas FixNum
irb(main):027:0> a=3.14
=> 3.14
irb(main):028:0> a.class
=> Float
Yang bilangan untuk suatu bilangan pecahan
irb(main):029:0> a=11345436745
=> 11345436745
irb(main):030:0> a.class
=> Bignum
Angka yang diatas batas dari angka fixnum
Dalam ruby juga bisa mendeskripsikan suatu bilngan biner, heksa, dan octal
Yang dimana biner menggunakan perintah 0b.
Contoh:
irb(main):033:0> 0b11101
=> 29
Pada heksa menggunakan perintah 0x.
Contoh:
irb(main):034:0> 0x111AB11
=> 17935121
Pada octal menggunakan perintah 0
Contoh:
irb(main):037:0> 011111
=> 4681
Metode String menggunakan.
- Length — untuk mengetahui panjang suatu string.
Contoh:
a="SaBArItUIndAh"
=> "SaBArItUIndAh"
irb(main):042:0> a.length
=> 13
- capitalize — untuk mengubah huruf pertama pada awal kalimat menjadi huruf kapital.
Contoh:
- capitalize — untuk mengubah huruf pertama pada awal kalimat menjadi huruf kapital.
Contoh:
irb(main):043:0> a.capitalize
=> "Sabarituindah"
- downcase — mengubah string menjadi huruf kecil.
Contoh:
irb(main):044:0> a.downcase
=> "sabarituindah"
- upcase — mengubah string menjadi huruf besar.
- upcase — mengubah string menjadi huruf besar.
Contoh:
irb(main):045:0> a.upcase
=> "SABARITUINDAH"
- swapcase — mengubah objek string dengan huruf kecil diubah menjadi huruf kapital dan sebaliknya.
Contoh:
irb(main):046:0> a.swapcase
=> "sAbaRiTuiNDaH"
- strip — membuang karakter whitespace di awal dan akhir string.
Contoh:
Contoh:
irb(main):047:0> a.strip
=> "SaBArItUIndAh"
- reverse — membalikkan string.
Contoh:
Contoh:
irb(main):048:0> a.reverse
=> "hAdnIUtIrABaS"
- include ? str — mengembalikan true jika substring str terdapat dalam string dan false jika tidak ada.
Contoh:
irb(main):049:0> a.include?"SaBAr"
=> true
- chop — membuang karakter terakhir dari string.
- chop — membuang karakter terakhir dari string.
Contoh:
irb(main):050:0> a.chop
=> "SaBArItUIndA"
Array
Tipe data Array di Ruby hampir sama dengan tipe data array pada bahasa pemrograman lain umumnya. Tipe data Array di Ruby sama dengan tipe data list di Python. Ruby akan mengembalikan objek nil. Untuk mengubah isi array ataupun menambahkan data pada objek Array dengan indeks tertentu, kita bisa menggunakan statement biasa seperti array[indeks] = nilai baru. Apabila kita ingin membuat objek Array. Yang berisi string, akan repot sekali untuk menambahkan tanda kutip pada setiap elemen Array. Hal tersebut dapat diatasi dengan menggunakan prefiks %w.
Metode-metode pada kelas Array :
- length — untuk mengetahui ukuran array.
- length — untuk mengetahui ukuran array.
Contoh:
>> a = [“a”,”b”,”c”]
=> [“a”, “b”, “c”]
>> a.length
=> 3
=> [“a”, “b”, “c”]
>> a.length
=> 3
- push(nilai_baru) — untuk menambah data pada array. Data terbaru akan ditempatkan paling akhir.
Contoh:
Contoh:
>> a.push(“d”)
=> [“a”, “b”, “c”, “d”]
- pop — mengembalikan data pada indeks terakhir array dan menghapus data pada indeks terakhir.
Contoh:
=> [“a”, “b”, “c”, “d”]
- pop — mengembalikan data pada indeks terakhir array dan menghapus data pada indeks terakhir.
Contoh:
>> a.pop
=> “d”
=> “d”
- reverse — membalik isi data array.
Contoh:
Contoh:
>> a
=> [“a”, “b”, “c”]
>> a.reverse
=> [“c”, “b”, “a”]
=> [“a”, “b”, “c”]
>> a.reverse
=> [“c”, “b”, “a”]
- sort — mengurut isi array secara ascending.
Contoh:
>> a.sort
=> [“a”, “b”, “c”]
=> [“a”, “b”, “c”]
Hash
Tipe data hash di Ruby sama dengan tipe data dictionary di Python. Untuk membuat objek. Hash yang baru, Anda dapat menggunakan literal hash {} ataupun konstruktor Hash.new. Lain halnya dengan array, untuk mengakses elemen objek Hash kita tidak menggunakan indeks seperti array. Kita dapat mendefinisikan kunci(key) yang unik untuk setiap elemen. Sama halnya seperti array, apabila kita mengakses elemen dengan key yang tidak tercantum di hash, maka akan mengembalikan nilai nil.
irb(main):006:0> alamat={
"Amat"=>"Kemanggisan Raya N0.60",
"Budi"=>"Sudirman 80",
"Melissa"=>"Pandu 77"}
=> {"Melissa"=>"Pandu 77", "Budi"=>"Sudirman 80", "Amat"=>"Kemanggisan Raya N0.60"}
irb(main):010:0> alamat["Budi"]
=> "Sudirman 80"
irb(main):011:0> alamat["Melissa"]
=> "Pandu 77"
Range
Objek range di Ruby merupakan suatu barisan di mana terdapat nilai awal dan nilai akhir dari barisan tersebut. Objek Range ini sama dengan perintah range() di Python. Untuk membuat suatu objek Range, kita dapat menggunakan operator range ‘..’ dan ‘...’. Format ‘..’ akan menciptakan objek Range yang ikut menyertakan elemen terakhirnya, sedangkan format ‘...’ akan menghilangkan elemen terakhirnya. Range di Ruby tidak dianggap sebagai objek Array melainkan dianggap sebagai suatu objek Range sendiri. Untuk menjadikannya objek Array, Anda dapat menggunakan metode to_a .
irb(main):012:0> a=(1..5)
=> 1..5
irb(main):013:0> a.class
=> Range
irb(main):014:0> (1..5).to_a
=> [1, 2, 3, 4, 5]
irb(main):015:0> (1...5).to_a
=> [1, 2, 3, 4]
0 komentar: