Kemiripan Ruby dan PHP
Seperti di PHP, kalau di Ruby…
- Ruby dynamically typed, sama seperti di PHP, jadi Anda tidak perlu khawatir akan kewajiban untuk mendeklarasikan variabel.
- Ada class, dan Anda dapat mengatur akses kontrol ke setiap member sama seperti di PHP 5 (
public,protected, danprivate) - Beberapa variabel dan variabel global dimulai dengan tanda dolar ($), seperti di PHP (tetapi sebagian besar variabel yang Anda gunakan sehari-hari tidak diawali dengan tanda $)
- Ada
evaljuga. - Anda bisa menggunakan interpolasi string. Daripada melakukan ”$foo is a $bar”, Anda bisa melakukan ”#{foo} is a #{bar}”, sama seperti di PHP, ini tidak berlaku untuk string yang menggunakan petik tunggal (harus petik ganda)
- Ada heredocs untuk mengisi string lebih dari satu baris dengan mudah. Ruby juga mempunyai beberapa cara lain untuk mengisi string misalnya dengan sintaks
%q{ string }dan%Q{ string #{foo} } - Ruby punya fitur exception, seperti PHP 5
- Ada library standar yang lumayan besar. Plus ribuan library lain di Rubygems, Ruby Application Archive dan plugins untuk Ruby on Rails.
- Array dan hash bekerja sebagaimana mestinya, jadi Anda tinggal mengganti kebiasaan
array('a' => 'b')menjadi{'a' => 'b'}. truedanfalseberperilaku sama seperti di PHP, tetapinulldisebutnil
Perbedaan Ruby dan PHP
Tidak seperti di PHP, di Ruby…
- Ruby menggunakan strong typing. Anda perlu memanggil
to_s,to_idan seterusnya untuk mengkonversi antarastring,integerdan seterusnya, daripada bergantung pada bahasa untuk melakukannya. Ini memastikan bahwa program tidak akan melakukan kesalahan yang tidak Anda inginkan, dan mempermudah debugging. - String, number, array, hash, dan seterusnya adalah obyek. Dalam pemrograman berorientasi obyek sebenarnya, yang digunakan adalah
-1.abs, bukanabs(-1) - Ketika memanggil metode, tidak ada keharusan untuk memakai tanda kurung, kecuali kalau ingin mengklarifikasikan parameter yang mana yang masuk ke pemanggilan metode tertentu yang mana (agar tidak ambigu). Contoh:
puts "Ruby keren"adalah sama persis denganputs("Ruby keren"). - Library standar dan extension dikelompokkan di module atau mixin dan class (kelas).
- Ruby tidak menggunakan penamaan berbasis underscore untuk memisahkan bagian-bagian library seperti di PHP (Contoh:
mysql_connect). Ruby mengorganisasi library ke dalam struktur module dan class yang lebih mudah diingat. (penjelasan) - Reflection sudah merupakan fasilitas bawaan setiap obyek. Anda tidak perlu menggunakan kelas
Reflectionseperti di PHP 5. - Variabel merupakan reference.
- Tidak ada class bersifat
abstractatau deklarasiinterface - Hash dan array tidak boleh ditukar-tukar, karena keduanya termasuk dua kelas yang berbeda.
- Hanya
falsedannilyang bernilai false, semua nilai selain itu mengembalikan nilaitruedalam conditional (0,array(), dan""dianggap bernilaitrue) - Hampir semua statemen di Ruby adalah pemanggilan metode, bahkan
raisejuga merupakan pemanggilan metode (kalau di PHP ekivalen denganthro
maaf numpang comment
BalasHapuswarna baground sama huruf nggak cocok...