Kamis, 27 Oktober 2011

BAB II

TINJAUAN PUSTAKA

Dalam hal ini akan dijelaskan beberapa teori yang kemudian akan menjadi acuan dalam pembuatan web aplikasi sehingga aplikasi dapat dijalankan dengan baik. Disini penulis akan mencoba menggunakan beberapa teori diantara beberapa teori yang ada, adalah ruby yaitu bahasa pemrograman yang dipakai dalam pembuatan web aplikasi pada “Leksono Futsal” dan yang lain diantaranya adalah diagram-diagram analisis basis data yang dipakai pada tahap analisis sistem yang akan dibuat, rails yang tak lain adalah framework yang dibangun dalam bahasa pemrograman ruby atau yang disebut dengan framework ruby on rails, serta beberapa pendukung lain yang saling berkaitan antara satu dengan yang lain.

2.1    Bahasa Pemrograman Ruby
Ruby merupakan bahasa yang seimbang. Pencipta Ruby, Yukihiro “Matz” Matsumoto, menggabungkan bagian-bagian dari bahasa-bahasa favorit beliau (Perl, Smalltalk, Eiffel, Ada dan Lisp) untuk membentuk bahasa baru yang seimbang antara pemrograman fungsional dengan pemrograman imperatif. Matz sering menyebutkan bahwa beliau sedang “mencoba membuat Ruby natural, bukan sederhana,” dengan cara membuatnya mirip dengan kehidupan nyata.Sejak Ruby pertama kali dirilis ke publik pada tahun 1995, banyak programmer profesional dari seluruh dunia serius ikut mengembangkan Ruby. Pada tahun 2006, Ruby diterima oleh banyak orang. Dengan komunitas pengguna Ruby yang aktif di banyak kota-kota di seluruh dunia dan konferensi-konferensi beserta pertemuan Ruby terkait, terdapat beberapa fungsi yang yang dapet dijalankan pada bahasa pemrograman ini.

2.1.1.      Variable
Layaknya bahasa pemrograman yang lain di dalam ruby juga terdapat beberapa variabel perbedaannya bahasa pemrograman lain seperti C dan Java, di dalam Ruby kita dapat langsung mendefinisikan sebuah variable tanpa menentukan tipenya. Anda dapat mencobanya langsung melalui irb2.

$irb> a = 2
$irb> b = 2
$irb> a + b
$=> 4


Selain pada contoh diatas, bisa juga membuat tipe data string secara langsung seperti contoh script dibawah ini.

$irb> a = “hehe”
$irb> a.length
$=> 4

$irb> a.reverse
$=> “eheh”

$irb> a
$=> “hehe”


Di dalam Ruby kita mengenal istilah symbol. Symbol ini akan sering sekali ditemukan di dalam Ruby On Rails. Sering digunakan sebagai semacam konstanta pengganti string.

$irb> a = :test
$irb> a != :test
$=> false

$irb> a == :test
$=> true

Symbol ini bisa dibilang lebih hemat memori dibandingkan dengan String. Di dalam Ruby kita akan sering menemukan symbol dalam sebuah pemanggilan method. Selain itu kita juga akan sering menggunakan symbol sebagai sebuah key dalam hash. Kedua hal ini sering membuat bingung orang-orang yang pertama kali mempelajari Ruby.

2.1.2.      Array dan Hash
Di dalam Ruby bisa dikatakan bahwa array sangat terkait dengan simbol [] sedangkan hash dengan {}. Hal itu disebabkan karena memang itulah salah satu cara untuk menginisialisasi array dan hash.

$irb> a = []
$=> []
$irb> a = Array.new
$=> []

$irb> a = [47, 77, 17]
$=> [47, 77, 17]

$irb> a << 107
$=> [47, 77, 17, 107]

$irb> a.length
$=> 4

$irb> a.sort
$=> [17, 47, 77, 107]

Pada contoh diatas terlihat bahwa bisa juga melakukan inisialisasi array dengan memanggil method new( ). Selanjutnya dapat ditambahkan elemen pada array dengan menggunakan operator <<.
Berbeda dengan array, pada hash memiliki pasangan key dan value. Dalam Ruby hash ini seringkali dipakai sebagai parameter dalam pemanggilan sebuah method.


$irb> a = {}
$=> {}
$irb> a = Hash.new
$=> {}

$irb> a = {:keren => “abis”}
$=> {:keren => “abis”}
$irb> a[:manthab] = “jaya”
$=> “jaya”

$irb> a[:keren]
$=> “abis”
$irb> a[:manthab]
$=> “jaya”

Pada contoh sebelumnya terlihat bahwa kita digunakan symbol sebagai key. Namun, bisa juga dengan melakukan hal yang sebaliknya sebagimana yang terlihat pada contoh berikut ini.

$irb> a[“keren”] = :jaya
$=> :jaya
$irb> a
$=> {:keren=>"abis", "keren"=>:jaya, :manthab=>"jaya"}


Sama seperti array  method length( ) dapat juga dipakai untuk melihat jumlah data yang  ada di dalam hash.

$irb> a.length
$=> 3


2.1.3.      Control Structure
Sampai sini sebenarnya masih bisa menggunakan irb. Contoh penerapanya adalah dengan membuat sebuah file Ruby bernama coba1.rb.

a = ARGV[0].to_i
if a > 7
puts "#{a} lebih besar dari 7"
elsif a < 7
puts "#{a} lebih kecil dari 7"
else
puts "#{a} sama dengan 7"
end
Bisa dilihat bahwa Ruby mengenali elsif bukan else if. Pada kode diatas dapat dilakukan substitusi nilai a di dalam tanda kutip dengan cara “#{a}”.
$ruby coba1.rb 8
$8 lebih besar dari 7

Setiap programer akan sering menggunakan looping di dalam aplikasinya. Salah satu caranya adalah dengan menggunakan for. Dapat diterapkan dengan  cara membuat file baru coba2.rb yang di dalamnya berisi dengan code seperti berikut:

for i in 1..10 do
puts "#{i}"
end


Ketika dijalankan, program ini akan mencetak angka 1 sampai dengan 10 ke layar. Selain for ada juga yang menggunakan while untuk melakukan looping. Berikut ini adalah contoh penggunaannya dalam file coba3.rb dengan hasil yang kurang lebih sama dengan coba2.rb.

i = 1
while i <= 10
puts i
i = i + 1
end


2.1.4.             Method
Sebuah method dideklarasikan dengan menggunakan keyword def dan diakhiri dengan end. Sebagai contoh dibuat file baru coba4.rb.

def coba_method(name)
puts "coba #{name}"
end
a = "Jaya!"
coba_method(a)
coba_method("Dunks!")

Ketika dieksekusi, program diatas akan mengahasilkan output kurang lebih sebagai berikut:
coba Jaya!
coba Dunks!

Untuk me-return sebuah nilai, kita hanya perlu menuliskan nilai (atau variable) tersebut di dalam method.

def kali_dua(nilai_awal)
kali_dua = nilai_awal * 2
kali_dua
end
kali_dua = kali_dua(4)
puts "kali dua #{kali_dua}"


Hasil eksekusi dari program ini adalah:

kali dua 8


Sebenarnya bisa juga dibuat keyword return untuk me-return sebuah nilai dari method.

2.1.5.             Classes
Deklarasi sebuah kelas dimulai dengan class dan diakhiri dengan end. Sebagai contoh adalah dengan membuat sebuah kelas Mahasiswa pada file mahasiswa.rb.

class Mahasiswa
def initialize(nama, 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 maka perlu membuat accessor method. Tambahkan kedua method ini pada kelas Mahasiswa yang telah dibuat.

def nama=(nama_baru)
@nama = nama_baru
end
def nama
@nama
End

Dapat diuji dengan  method ini dengan melakukan pemanggilan method seperti dibawah ini.

mhs = Mahasiswa.new("Si 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 kita. Selain penjelasan-penjelasan yang ada diatas,  maka terdapat banyak hal lain mengenai class ini yang tidak mungkin dijabarkan seluruhnya pada bab yang ada di dalam laporan ini. Untuk lebih memudahkan programer dalam menggunakan bahasa pemrograman ruby ini, maka diperlukan suatu framework untuk pembangunan suatu aplikasi yang utuh sehingga dalam proses pembuatan tugas akhir ini menggunakan framework yang berkonfigurasi dengan bahasa pemrograman ruby, dalam hal ini digunakan framework ruby on rails atau lebih disingkat rails saja (http://ilmukomputer.com/2006/08/24/pengenalan-ruby-on-rails/,(On-line)).

Tidak ada komentar:

Posting Komentar