ROM, Object Mapper untuk Ruby

Yana Permana 20 Mei 2015

ROM, Object Mapper untuk Ruby

Ruby Object Mapper (ROM) adalah library Ruby eksperimental yang berguna untuk memberikan kemampuan pemetaan objek tanpa dibatasi penyimpanan maksimum datastore kita. ROM diciptakan dengan berdasarkan beberapa konsep dan pengambilan keputusan yang berbeda dari biasanya seperti pada Ruby ORM sebelumnya. Apa saja konsep dan pengambilan keputusannya? Ini dia:

  • Datastore menjadi lebih baik untuk environment runtime
  • Menyediakan infrastruktur minimum untuk menangani pemetaan dan persisten
  • Query datastore sebagai implementasi privat
  • Tidak memerlukan kompleksitas, untuk Abstract query interfaces
  • Membaca dan memutasi data yang punya distict berbeda
  • Sederhana dalam penggunaan datastore yang diinginkan
Konsep inti ini diimplementasikan dalam ROM dengan adapter, relasi, mapper, dan command.

ROM tidak diimplementasikan dalam mode Ruby khusus. Seperti yang telah disebutkan, ROM menyediakan infrastruktur minimum untuk mencapai tujuannya. ROM dirancang dengan kemudahan penggunaan sehingga meskipun method Class dihindari, Class bisa diakses melalui environment ROM. Hal ini berarti bahwa satu-satunya Class yang kita butuhkan untuk interfaces hanya ROM.

Semua komponen ROM dibangun secara independen sehingga mereka dapat digunakan secara independen satu sama lain. Tidak terlalu ketat bukan? Kemudian diikuti prinsip single responsibility. Dengan begitu kita perlu membuat satu objek yang menangani semua coercion, state, persisten, validasi dan rule logika bisnis kita. ROM menyediakan infrastruktur yang memungkinkan kita untuk membuat Class khusus yang kecil secara mudah. Nantinya Class ini akan menangani setiap masalah ini secara individu, dan mengikatnya bersama-sama secara sederhana.

Kabar baik juga datang minggu ini, kini ROM 0.7.0 telah dirilis. Pengembang ROM, Piotr Solnica merilisnya pada tanggal 18 Mei 2015. Rilis ini meliputi pembaharuan gems sebagai berikut:

  • rom 0.7.0
  • rom-sql 0.4.3
  • rom-rel 0.3.2
Pengembang ROM juga mengembangkan adapter baru diantaranya:
  • rom-rethinkdb
  • rom-Neo4j
  • rom-event_store
  • rom-influxdb
Dengan demikian apabila kita mempunyai datastore yang terbatas maka bisa kita gunakan ROM ini. Nah itulah sekilas ROM, Object Mapper untuk Ruby, Tertarik mencobanya? Kunjungi situs resminya di http://rom-rb.org/.

(yp/rom-rb)