Open fedemgp opened 3 years ago
Este patrón se repite a lo largo de todo el trabajo. Revisar los lugares donde las cosas pueden fallar y actuar acorde a esto.
Pregunta, acá estamos en un main, ¿es correcto chequear los errores en un main? ¿Debería hacerlo dentro de las funciones ejecutarPrograma y destruirUsuario? Saludos.
es completamente válido chequear errores en el main. En un mundo ideal, vos podrías tener un main como el siguiente:
int main(int argc, const char *argv[]) {
if (__check_arguments(argc, argv) != 0) {
// error
}
client_t client;
if (client_init(&client, argv) != 0)
// error
}
if (client_run(&client) != 0) {
// libero memoria y retorno con error
}
if (client_destroy(&client) != 0) {
// otro error
}
return 0;
}
https://github.com/nazar9318/taller1-2c2020-TP1/blob/a61b543a3d047f948c663c43f2d1376f00826091/client.c#L5-L7
Si algo falla deberías reportar el error, liberar los recursos correspondientes y abortar la ejecución. Este código no es robusto.