Información útil dentro de errores

¿Cómo escribir errores de manera correcta en Go?

Es importante tener en cuenta la perspectiva del usuario al momento de recibir un error. Si se crea una librería que muestre errores, y se desea recibir información acerca del porque se generaron. Considera que al intentar insertar un registro en una base de datos se obtiene lo siguiente.

No se pudo insertar el registro.

Esto no brinda una información suficiente, no sabemos si el problema fue una desconexión con la base de datos, un problema de validación, una regla de integridad que se intentó violar, etc.

Ahora volvamos a replantear el mensaje.

No se pudo insertar el registro ya que ya existe un registro asociado a ese  correo electrónico.

Ahora podemos ver cual fue la razón real del problema al momento de llevar acabo una tarea.

Los errores deben ser entonces descriptivos en el sentido que:

  • Deben especificar el problema.
  • Debe ofrecer una solución al problema.
  • Debe ser respetuoso con el usuario.

Si los programadores que usan su librería pueden entender el tipo de errores que esta muestra debido a su consistencia, es mas posible que ellos puedan proveer una solución mas adecuada.