Yukihiro "Matz" Matsumoto

Often people, especially computer engineers, focus on the machines. They think, "By doing this, the machine will run fast. By doing this, the machine will run more effectively. By doing this, the machine will something something something." They are focusing on machines. But in fact we need to focus on humans, on how humans care about doing programming or operating the application of the machines. We are the masters. They are the slaves.
Yukihiro "Matz" Matsumoto, Creator of Ruby

Senin, 13 Oktober 2014

Menggunakan Simbol Sebagai Key Dalam Hash

Hash adalah data struktur yang sangat sering digunakan dalam Ruby. Hash merupakan struktur data yang menyimpan kumpulan data dalam dalam bentuk berpasangan antara key dan value. Key digunakan untuk mendapatkan value yang disimpan di dalam suatu hash.


Pada snippet di atas, variabel people yang berupa hash dibuat dengan satu key values, yaitu key berupa string "alfian" dengan nilai 60. Untuk mengaksesnya kita dapat menggunakan key "alfian" seperti didalam kita mengakses elemen didalam suatu array. Anda juga dapat menambahkan key, values ke dalam array dengan menggunakan cara yang sama untuk mendapatkan value dengan key yang anda inginkan, dan pada bagian akhir anda melakukan assign value yang anda inginkan. Untuk melihat semua keys dan values yang terdapat pada hash anda dapat melakukannya langsung dengan mengetik variable hash tersebut. Dengan method keys dan values anda juga mencari kumpulan nilai masing-masing dalam array untuk keys dan values.

Penggunan Simbol Dalam Hash

Simbol adalah nilai konstan khusus yang memiliki kemiripan dengan string, tetapi simbol adalah suatu konstan yang mempunyai tingkat efisiensi yang lebih baik, karena sekali anda menggunakan simbol, maka simbol dengan referensi yang sama akan digunakan oleh Ruby dalam eksekusi program anda dari awal sampai akhir. Ruby tidak menciptakan objek simbol baru seperti pada string. Simbol pada Ruby dituliskan dengan menggunakan awalan : dan diikuti dengan string yang akan menjadi nama dari simbol.


Dari snippet diatas, kedua objek yang berupa simbol dibuat dan dianalisa referensinya menggunakan method object_id, hasil yang dihasilkan adalah sama. Sedangkan di saat menggunakan string sebanyak 2 kali, dihasilkan referensi yang berbeda pada setiap kali object_id dari string dianalisa. Disini dapat dilihat bahwa simbol memiliki efisiensi yang lebih baik dari string dalam efisisensi memori dalam suatu program, karena akan digunakan simbol dengan referensi yang sama dalam memori anda sepanjang eksekusi program anda berjalan. Apabila anda memiliki sebuah string, anda dapat mengonversinya menjadi sebuah simbol dengan menggunakan method to_sym.


Para programmer Ruby, kebanyakan menggunakan simbol sebagai key dalam membuat suatu hash. Di dalam Rails, simbol hampir seluruhnya dipakai dalam setiap built-in method yang ada. Menggunakan hash sebagai key didalam membuat suatu hash tidaklah terlalu berbeda dibandingkan menggunakan string.


Dari snippet kode diatas, terlihat cara yang digunakan dalam menggunakan simbol sebagai key didalam hash tidaklah terlalu berbeda dibanding menggunakan string, anda menggunakan tanda : dan menghilangkan double quote pada string anda diikuti dengan operator hashrocket => dan value yang ingin anda simpan. Anda juga dapat menggunakan shortcut dalam menggunakan simbol sebagai key dalam membuat hash, dimana anda dapat langsung menggunakan nama simbol diakhiri dengan : dan value yang anda inginkan. Silakan anda mencobanya langsung didalam irb dan Happy Hashing!.

Tidak ada komentar:

Posting Komentar