Define Error Code With Team

Imam Maulana Rachbini
Sulang
Published in
2 min readMay 15, 2018

Pada implementasi pengembangan aplikasi di perkuliahan PPL ini, salah satu aspek pembelajarannya adalah clean code. Clean code adalah sebuah implementasi program yang tidak hanya mementingkan berjalannya program tersebut saja, namun juga dituntut untuk membuat source code yang berkualitas, bersih, dan mudah di baca. Tujuannya sederhana, yaitu untuk memudahkan pembacaan kode sumber dikemudian hari baik oleh diri kita sendiri, maupun oleh orang lain, dan yang utama adalah memudahkan proses maintanance.

Clean code memiliki beberapa poin utama, dan salah satunya adalah Error Code and Exception Handling, yang akan dibahas pada tulisan ini. Error code atau pengkodean eror adalah penyusunan kode-kode tertentu jika terjadi sebuah eror. Misalnya, karena aplikasi yang kami buat berbasis web, jika ada yang mencoba mengakses halaman profil sebelum login, maka akan mengembalikan kode eror HTTP 401 (unauthorized). Sedangkan exception handling adalah cara-cara untuk menghandle kemungkinan eror yang ada, yang mengembalikan kode eror seperti contoh sebelumnya. Di sini juga perlu dicatan bahwa clean code memiliki aspek bahwa sebuah fungsi hanya spesifik melakukan suatu hal, maka dari itu exception handling juga harus spesifik pada suatu fungsi tersebut.

Dalam implementasi kali ini saya bersama rekan tim sulang telah mendefinisikan beberapa error code sendiri. Antara lain sebagai berikut,

# Validation Related: 43x
HTTP_432_WRONG_PASSWORD_OR_USERNAME = 432
# Database Related: 44x
HTTP_440_VALUE_ALREADY_EXISTS = 440
# Authentication Related: 49x
HTTP_498_TOKEN_INVALID = 498
HTTP_498_TOKEN_REQUIRED = 499

Dalam perumusan error code tersebut, saya mengusulkan error code ketika value username atau email pada sign-up sudah ada, dan akhirnya kita sepakat bahwa error tersebut didefinisikan dengan kode 440.

Setelah mendefinisikan kode tersebut, saya mengimplementasikan error code tersebut pada story sign-up perusahaan yang saya buat,

Dengan mendefinisikan error code baru, maka informasi mengenai error bisa lebih rinci. Jika sebelumnya kasus duplikasi value pada database seperti diatas diberikan error code HTTP 400 Bad Request yang sifatnya masih sangat luas, dengan pengkodean error yang lebih spesifik, maka kita jadi dapat langsung tau error apa yang terjadi.

--

--