Menjelajahi Pemrograman Fungsional dengan Ruby - Lelluzec

Sabtu, 12 September 2020

Menjelajahi Pemrograman Fungsional dengan Ruby

Dalam pemrograman fungsional, fungsi murni merupakan inti dari paradigma ini. Ketika kita berbicara tentang fungsi murni yang kita maksud adalah fungsi-fungsi ini memenuhi dua kondisi utama; yang pertama adalah bahwa mereka tidak akan menimbulkan efek samping dan yang kedua adalah bahwa tergantung pada argumen mereka, mereka akan mengembalikan hasil yang sama. Saat Anda membuat fungsi murni, Anda harus mencoba membuatnya menangani satu hal dan hanya satu, sehingga fungsi Anda akan sangat mudah untuk diuji dan diskalakan. Pertimbangkan fungsi berikut:

message = 'Ruby is awesome'

def transform text
  text.upcase!
end

transform message

print message
## => RUBY IS AWESOME
Fungsi ini tidak murni karena mengubah argumennya yang disebut massage. Metode Bang (!) Sering kali mengandung efek samping, yang berarti mereka akan mengubah keadaan. Untuk membuat fungsi ini murni dan tidak mengubah statusnya, kita bisa menggunakan pendekatan selanjutnya.
message = 'Ruby is awesome'

def transform text
   text.upcase
end

transform message

print message
## => Ruby is awesome

Bagaimana Anda bisa melihat sederhana untuk mencapai pendekatan murni menghindari metode bang (!) Tetapi fungsi murni tidak hanya menghindari metode bang, mereka adalah satu set untuk membuat kode lebih mudah dibaca dan diuji.

Kedengarannya agak sulit untuk dipahami tetapi dalam artikel ini, saya akan mempermudah Anda untuk menghapus semua keraguan Anda. Kita akan mulai dengan berbicara tentang konsep utama seperti Efek Samping dan Transparansi Referensial dan dengan konsep utama tersebut Anda dapat membangun fungsi murni.

Transparansi Referensial
Saat Anda mendengar tentang Transparansi Referensial, itu berarti ekspresi dapat diganti dengan hasilnya. Katakanlah Anda memiliki operasi aritmatika dasar yaitu, 20 + 12 sehingga Anda dapat dengan mudah menggantinya dengan 32, tanpa mengubah perilaku program Anda. Anda juga dapat memperluas definisi ke fungsi. Jadi Anda bisa mengatakan + adalah referensial transparan, karena jika Anda memanggilnya dengan nilai yang sama, itu akan memberi Anda jawaban yang sama.

Efek samping
Efek samping adalah perubahan status, atau beberapa interaksi dengan elemen luar (pengguna, layanan web, komputer lain, apa pun) yang terjadi selama pelaksanaan beberapa penghitungan. Kami memiliki efek samping yang berbeda yang dapat kami temukan tetapi yang paling populer adalah:
  • Mengubah variabel global.
  • Mutasi objek diterima sebagai argumen.
  • Melakukan segala jenis I / O, seperti menampilkan pesan peringatan atau memasukkan beberapa teks.
  • Bekerja dengan, dan mengubah, sistem file.
  • Memperbarui database.
  • Memanggil layanan web.
Konsep Pemrograman Fungsional tidak hanya untuk Bahasa Pemrograman Ruby, Anda dapat menggunakan Paradigma Pemrograman ini dalam bahasa seperti JavaScript, Python, Scala. dll.

Share with your friends

Give us your opinion