Praktek terbaik return dan if
June 4, 2008 at 14:01 / Updated at June 4, 2008
Saya sering berpikir bagaimana cara supaya kode mudah dipahami ketika menulis kode yang kemudian berhadapan dengan if dan return dalam suatu fungsi. Apakah saya harus lakukan proses ketika kondisi benar dan mengembalikan hasil dalam kerangka if, jika tidak saya kembalikan nilai salah:
function lakukan($sesuatu) { if ($sesuatu) { // lakukan sesuatu return $hasil; } else { return false; } }
Atau dengan sedikit penyederhanaan menjadi:
function lakukan($sesuatu) { if ($sesuatu) { // lakukan sesuatu return $hasil; } return false; }
Namun kode diatas masih akan menyebabkan banyak indentasi, yang akan membuatnya sulit dipahami. Bagaimana dengan menyimpan sebuah variable sebagai nilai kembalian dan melakukan return diakhir fungsi:
function lakukan($sesuatu) { $retval = false; if ($sesuatu) { // lakukan sesuatu $retval = $hasil; } return $retval; }
Tampak lebih sulit dipahami, karena saya harus membacanya dari atas ke bawah hingga menemukan statement return dan masih terlalu banyak indentasi. Bagaimana jika saya kembalikan nilai salah jika kondisi tidak terpenuhi:
function lakukan($sesuatu) { if (!$sesuatu) { return false; } // lakukan sesuatu return $hasil; }
Inilah yang disebut praktek terbaik dari kombinasi penulisan if dan return, sederhana, mudah dipahami dan tidak banyak indentasi. Yaitu mengembalikan segera nilai salah ketika kondisi tidak terpenuhi, jika tidak lakukan proses dan kembalikan hasil.
Kesimpulan ini diambil setelah membaca tulisan Lukas tentang "Return early" dan Helgi tentang "Return early and simplified if else".
7 comments / Got a comment? Submit yours