Apa itu Pemrograman Defensif?

Pemrograman defensif adalah pembuatan kode untuk perangkat lunak komputer yang dirancang untuk menghindari masalah bermasalah sebelum muncul dan membuat produk lebih stabil. Ide dasar di balik pendekatan ini adalah untuk membuat program yang dapat berjalan dengan baik bahkan melalui proses yang tidak terduga atau ketika entri yang tidak terduga dibuat oleh pengguna. Pemrograman defensif sering bergantung pada kombinasi yang agak paradoks untuk menghilangkan kode yang tidak perlu sambil memastikan jumlah yang cukup dihasilkan untuk menangani semua kemungkinan tindakan pengguna. Pengujian ekstensif juga penting untuk proses ini, seperti halnya pembuatan perangkat lunak yang dapat diaudit dan diperiksa dengan mudah.

Pengujian perangkat lunak adalah salah satu aspek terpenting dari pemrograman defensif.

Dalam banyak hal, konsep pemrograman defensif sangat mirip dengan mengemudi defensif, di mana masalah dipertimbangkan sebelum muncul. Salah satu metode umum untuk mencoba melakukan ini adalah melalui pembuatan kode yang dimaksudkan untuk menangani kemungkinan skenario yang dilemparkan padanya. Pemrogram biasanya mencoba menentukan cara di mana pengguna cenderung memasukkan input atau mencoba menggunakan perangkat lunak yang mungkin berada di luar parameter yang diharapkan. Penggunaan pemrograman defensif dibangun di atas dasar kode itu sendiri, yang dirancang untuk dapat menangani input aneh tanpa menabrak atau menghadapi peristiwa kesalahan.

Pemrograman defensif dapat digunakan untuk menghilangkan kode yang tidak perlu.

Tampaknya berbeda dengan unsur pemrograman defensif ini, bagaimanapun, kode yang ditulis dengan baik harus tanpa entri yang tidak perlu. Semakin banyak baris kode yang merupakan bagian dari suatu program, semakin besar peluang terjadinya kesalahan. Praktik pemrograman defensif biasanya mendorong pengembang untuk menghilangkan kode yang tidak perlu dan merampingkan program bila memungkinkan. Oleh karena itu, keseimbangan harus dicapai antara pemrograman yang memperhitungkan skenario tak terduga dan kode yang berisi terlalu banyak konten yang tidak perlu tanpa memberikan manfaat.

Pengujian adalah salah satu aspek terpenting dari pemrograman defensif. Meskipun banyak upaya yang dilakukan untuk memastikan kode sempurna, pengembang hampir selalu melewatkan kesalahan atau membuat kode dengan hasil yang tidak terduga. Pengujian menyeluruh oleh penguji profesional memungkinkan pengembang memiliki ratusan jam penggunaan produk untuk menemukan kesalahan sebelum perangkat lunak dirilis.

Kode itu sendiri yang dibuat dalam pemrograman defensif juga merupakan aspek penting dari proses ini. Tidak hanya harus disederhanakan sebanyak mungkin, tetapi juga harus disajikan dengan cara yang jelas dan ringkas. Audit sering digunakan oleh pengembang untuk meninjau kode yang telah dibuat. Ini memungkinkan pemrogram lain untuk melihat pekerjaan yang telah dilakukan, dan kode yang dapat dibaca penting agar ini menjadi bagian pengembangan yang realistis.