Anda tidak boleh mengabaikan kesalahan secara diam-diam, karena program Anda dibangun di atas serangkaian tindakan yang secara implisit bergantung pada semua yang berjalan sebelum semuanya berjalan dengan benar. Jika ada yang tidak beres pada langkah 3, dan Anda mencoba melanjutkan ke langkah 4, langkah 4 akan dimulai berdasarkan asumsi yang tidak valid, yang membuatnya lebih cenderung menghasilkan kesalahan juga. (Dan jika Anda mengabaikannya juga, maka langkah 5 melempar kesalahan, dan hal-hal mulai turun dari sana.)
Masalahnya adalah, ketika kesalahan menumpuk, akhirnya Anda akan mengalami beberapa kesalahan begitu besar sehingga Anda tidak bisa mengabaikannya, karena itu akan terdiri dari sesuatu yang diberikan kepada pengguna, dan bahwa sesuatu akan sepenuhnya salah. Kemudian Anda memiliki pengguna mengeluh pada Anda tentang program Anda tidak berfungsi dengan benar, dan Anda harus memperbaikinya. Dan jika bagian "berikan sesuatu kepada pengguna" ada di langkah 28, dan Anda tidak tahu bahwa kesalahan asli yang menyebabkan semua kekacauan ini ada di langkah 3 karena Anda mengabaikan kesalahan di langkah 3, Anda akan memiliki heck of time men-debug masalah!
Di sisi lain, jika kesalahan pada langkah 3 membuat semuanya meledak di wajah pengguna, dan menghasilkan kesalahan yang mengatakan SOMETHING WENT BADLY WRONG IN STEP 3!
(atau padanan teknisnya, jejak tumpukan,) maka hasilnya sama - pengguna mengeluh pada Anda tentang program tidak berfungsi dengan benar - tetapi kali ini Anda tahu persis di mana harus mulai mencari ketika Anda memperbaikinya .
EDIT: Menanggapi komentar, jika terjadi kesalahan yang Anda antisipasi dan tahu bagaimana mengatasinya, itu berbeda. Misalnya, dalam hal menerima pesan yang salah bentuk, itu bukan kesalahan program; itulah "input buruk yang diberikan pengguna yang gagal validasi." Respons yang sesuai di sana adalah memberi tahu pengguna bahwa dia memberi Anda input yang tidak valid, yang sepertinya Anda lakukan. Tidak perlu crash dan menghasilkan jejak stack dalam kasus seperti itu.