2015-03-03

Curhat: Membuat kode Kondisi Yang Tepat


Dalam Programing seperti PHP. Sangat wajar apabila kita membuat kondisi dalam code kita. Mengingat IF sendiri mampu memberi arahan kemana program kita akan berjalan
if(....){ ..... }

Perintah IF memiliki pendamping yaitu ELSE. Dalam kode yang sering kulihat sering tidak memasukkan ELSE sebagai pendampingnya.
Dalam pengerjaannya tidak ada yang salah bila menggunakan IF tanpa ELSE.. tetapi ketika sudah mengerjakan program yang rumit atau spesifik dalam data; ELSE wajib dimasukkan walaupun terlihat tidak berguna.

Sebuah kebiasaan baik apabila kita memutuskan membuat code kita lebih lengkap. Dalam hal ini memberikan else walaupun tidak terlihat kegunaannya.
Tapi berangkat dari pernyataan tidak terlihat kegunaannya, mari telaah bahwa kode yang baik adalah kode yang mampu menangani segala masalah tanpa menambah masalah.


TENARY CONDITION

Dalam PHP kita mengenal Tenary Condition
{kondisi}?{respon bila benar}:{respon bila salah};

bila di gambarkan kita dapatkan
{kondisi}? {respon benar} else {respon salah}

Bahkan untuk perintah tenary sendiri kita memiliki elemennya yang lengkap (else). Jadi bisa dibilang kenapa kita tidak membuat periintah if yang lengkap dengan else

HAMPIR SEMUA CODING BERTIPE KONDISI

Tanpa kita duga, sebuah koding sederhana ternyata memiliki kondisi untuk keamanan dan kestabilan data. Kita tak bisa melihat kebutuhan tersebut saat kita mematikan laporan error. Bila tidak maka kita akan mendapatkan error/peringatan berupa notice dan lain-lain.
Contoh dari satu koding yang memakai variabel

echo "Selamat Siang $nama";
Dengan tidak meletakkan / deklarasi variabel tersebut. Kita akan mendapatkan peringatan bahwa tidak ada variabel $nama. Sehingga muncullah penulisan seperti berikut
echo "selamat Siang ".( isset($nama)?$nama:'');
Dari penulisan di atas, kita mendapatkan 2 pertanyaan

Kenapa Meletakkan kurung

Disini saya lebih condong karena kerapian dan menunjukkan dimana saya menuliskannya. Percobaan yang saya lakukan tanpa kurung malah membuat tulisannya tidak sesuai.. dimana yang tertulis malah kosong saat saya tidak mendeklarasi. Tentu saja beda kode malah menghasilan tampilan berbeda

MENGAPA MEMAKAI ISSET

Isset adalah perintah untuk melakukan check. disini kita dapat check apakah variabel nama memiliki nilai atau malah tidak sama sekali. keuntungan perintah ini tidak mengembalikan error seperti memakai echo.

PROBLEM YANG TERJADI

Semua programing yang kita buat dengan menulis if tanpa else terlihat tidak masalah.. Sampai kita harus memastikan apakah data yang gunakan benar/valid! atau proses mengerjakannya tepat. contoh yang dapat diambil adalah pemakaian fungsi 'mysql_query'

apabila query dijalankan dan hasil menunjukkan salah/gagal.. kita harus menuliskan laporan kenapa kesalahannya dan apa yang harus dilakukan agar kesalahan tersebut mempengaruhi coding berikutnya. Contoh kasus adalah sebagai berikut
  • melakukan query insert
  • bila insert gagal maka tidak melanjutka ke query berikurnyal
  • semua code yang dapat berjalan saat kondisi sebelumnya benar, harus dipastikan menerima input dari sebelumnya atau program mengalami masalah.
  • membuat log yang dapat dibaca di balik layar, hindari menulis laporan debug di layar.
Dalam database baru dikenal perintah commit dan rollback, jadi bila ada error maka semua query yang sudah dijalankan akan di kembalikan dan isi table akan terhapus otomatis.memanfaatkan else maka proses rollback dapat dilakukan..

KESIMPULAN

Lebih baik memakai penulisan if yang lengkap dengan else. dibandingkan rugi, selain berguna untuk mengetahu error yang mungkin/akan terjadi. Sementara itu pemakaian kondisi juga berguna untuk mengetahui apakah variabel memiliki nilai atau tidak?

Tidak ada komentar: