Sebagai seorang developer profesional, menangani error merupakan salah satu bagian penting agar aplikasi yang dibangun dapat berjalan sesuai yang diharapkan. Pasalnya, error maupun bug yang tidak teratasi bahkan sampai pada end user merupakan suatu kesalahan yang fatal.
Dart merupakan bahasa pemrograman yang digunakan pada framework Flutter. Salah satu framework yang saat ini cukup populer besutan dari Google, yang digunakan untuk mengembangkan aplikasi di berbagai platform hanya dalam satu basis kode saja.
Bahasa pemrograman Dart memiliki mekanisme untuk meng-handle error seperti pada bahasa pemrograman pada umumnya. Nah, berikut ini kita akan membahas tentang apa perbedaan error, exception, dan assertion.
Perbedaan Error, Exception, dan Assertion
Banyak hal yang dapat menyebabkan aplikasi kamu gagal dijalankan, seperti koneksi internet mati, typo saat mengetik kode, kurang titik koma, indeks array yang dipanggil tidak sesuai, dan lain sebagainya. Permasalahan tersebut pastinya sudah menjadi makanan sehari-hari bagi seorang programmer.
Nah, tahukah kamu selain error, kesalahan dalam pemrograman ada yang disebut dengan exception dan assertions.
- Errors, merupakan kesalahan yang tidak dapat di-handle oleh Dart. Kesalahan ini biasanya terjadi dari faktor eksternal seperti kesalahan saat pemanggilan API. Error dapat menyebabkan crash pada aplikasi. Error biasanya terjadi di mode development dan memberi tahu developer bahwa ada sesuatu yang berjalan tidak sesuai pada aplikasi.
- Assertions, mirip seperti halnya dengan error yang memberikan informasi kesalahan yang seharusnya tidak terjadi. Bedanya, assertions hanya ada di mode debug, ketika kamu sudah melakukan deploy pada mode production, maka kesalahan ini akan diabaikan.
- Exceptions, merupakan kesalahan yang dapat di-handle oleh Dart. Exceptions biasanya terjadi karena kesalahan pada kode program yang tidak sesuai, dan beberapa kesalahan pada operasi kode. Kesalahan yang muncul bisa jadi kesalahan yang kita harapkan, sehingga kita dapat melakukan aksi lain (catch) ketika kesalahan terjadi saat runtime aplikasi.
Source
– https://quickbirdstudios.com/blog/handling-exceptions-flutter-dart/