Ruby merupakan bahasa objek-oriented, yang mendukung implementasi kelas dan objek pada bahasanya.
Kelas

Dalam pemrograman , kelas merupakan kumpulan data dan fungsi yang dibungkus menjadi simbol — Nama Kelas. Ibarat jika kita membuat tenda , kelas ini merupakan bagaimana kita membangun tenda dan Objek adalah Tenda yang kita buat.
class Tenda
@jenis_tenda
def initialize jenis
@jenis_tenda = jenis
end
def tenda_apa_ini
puts @jenis_tenda
end
def ganti_tenda jenis
@jenis_tenda = jenis
end
end
class Tenda , cara kita untuk mendeklarasi kelas serupa dengan Konstant. Tenda berarti untuk nama kelas itu ( class <nama kelas> ). Konstant karena komponen kelas tidak berubah saat dinstansiasi.
@jenis_tenda , merupakan attribute yang berarti variable/konstan yang dapat diakses oleh fungsi pada kelas ( method ).
def initialize , ini merupakan fungsi yang dipanggil ketika kita menginstasiasi kelas. diatas kita mengunakan attribut setter untuk menginisialisasi atrtibute jeni_kelas dengan argumen jenis.
def tenda_apa_ini , ini merupakan fungsi untuk menampilkan kelayar isi attribut jenis_kelas . disebut method getter/fetcher.
def get_tenda jenis , fungsi ini untuk memberi nilai pada atribute jenis_tenda dari argument jenis. disebut method setter/patcher.
Objek

Setelah kita , membuat rancangan objek saat nya kita membuat implementasi dari Kelas : Objek .
tenda_digambar = Tenda.new("Tenda Hijau")
tenda_digambar.tenda_apa_ini # => Tenda Hijau
tenda_digambar.ganti_tenda "Tenda Hitam"
tenda_digambar.tenda_apa_ini # => Tenda Hitam
Penjelasan kode diatas
tenda_digambar = Tenda.new("Tenda Hijau")
mendeklrasikan variable tenda_digambar dengan instansiasi kelas Tenda
dengan argumen "Tenda Hijau". tenda_gambar bertipe data Tenda.
tenda_digambar.tenda_apa_ini tenda_digambar berisi instasiasi Tenda .tentunya kita bisa memanggil fungsi(method) dari Objek Tenda dengan menambahkan titik setelah nama variable lalu beri nama fungsi yang dinginkan.
tenda_digambar.ganti_tenda "Tenda Hitam" ,fungsi ini serupa dengan biasa yang itu memberikan argument untuk nantinya di set pada argument pada objek yang telah di inisialisasi.
Sekian contoh singkat mengenai kelas dan objek , ada banyak teknik orientasi-objek yang perlu kita ketahui : Pewarisan , Enkapsulasi , Polymorphisme , dan sebagainya.
Sekian.