Modul 1.3 Literate use of arguments

Ingatlah bahwa nama-nama yang dipilih oleh pemrogram suatu fungsi bersifat arbitrer. Anda akan menggunakan fungsi dengan cara yang persis sama meskipun namanya berbeda. Demikian pula, saat menggunakan fungsi, Anda dapat memilih sendiri ekspresi apa yang akan menjadi nilai argumen.

Misalnya, Anda ingin menghitung 100e−2.5100e−2.5. Dapat dilakukan dengan berikut :

100 * exp(-2.5)
## [1] 8.2085

Mungkin angka (−2.5) dimaksudkan untuk mewakili sesuatu yang lebih umum. Misalnya, mungkin Anda menghitung berapa banyak obat yang masih ada di dalam tubuh sepuluh hari setelah dosis 100 mg diberikan. Akan ada tiga kuantitas yang terlibat bahkan dalam perhitungan sederhana ini: dosis, jumlah waktu sejak dosis diambil, dan apa yang disebut “konstanta waktu” untuk eliminasi obat melalui hati atau mekanisme lain. (Untuk mengikuti contoh ini, Anda tidak perlu mengetahui apa itu konstanta waktu. Tetapi jika Anda tertarik, berikut ini contohnya. Misalkan suatu obat memiliki konstanta waktu 4 hari. Ini berarti bahwa 63% obat akan dieliminasi selama periode 4 hari.)

Dalam menulis perhitungan, ada baiknya untuk memperjelas dan menjelaskan arti dari setiap besaran yang digunakan dalam perhitungan. Jadi, alih-alih 100 * exp(-2.5), lebih baik ditulis dengan berikut :

dose <- 100 # mg
duration <- 10 # days
time_constant <- 4 # days
dose * exp(- duration / time_constant)
## [1] 8.2085

Lebih baik lagi, Anda bisa mendefinisikan fungsi yang melakukan perhitungan untuk Anda:

drug_remaining <- function(dose, duration, time_constant) {
  dose * exp(- duration / time_constant)
}

Kemudian, melakukan perhitungan untuk situasi tertentu yang dijelaskan di atas adalah masalah penggunaan fungsi:

drug_remaining(dose = 100, duration = 10, time_constant = 4)
## [1] 8.2085

Diatas ialah percobaan-percobaan yang saya lakukan menurut isi dari Modul 1.3 Literate use of arguments.