Panic and recover in Go make development less efficient 1. is use panic case This is very risky behavior in the development stage. It is difficult to determine where the error is and it is frustrating at the front side. To solve this panic, go supports recover. 2. is use recover case Each recover function is required to expose information about errors. It is possible to respond to errors, but it requires coercion and complexity of the code. 3. is use custom_errrorhandler case Basically, it reacts to errors in a handler like recover. However, starting from the json code, a single error handler can return various errors. You can handle the return of all errors flexibly with a single handler without having to write each recover individually.