IIC2513-2022 / syllabus-2

Repositorio oficial de la sección 2 del periodo 2022-1 del curso PUC IIC2513 Tecnologías y Aplicaciones Web
33 stars 4 forks source link

[Interrogación 1][Parte 2] Duda sobre manejo de Datos y Errores #19

Closed Francisco-Morales-R closed 2 years ago

Francisco-Morales-R commented 2 years ago

Hola, estoy trabajando con la Forma 1, y aún leyendo las issues quedo con un par dudas respecto a lo que quieren que hagamos con el "Manejo de errores de tipo".

Espero se entiendan bien las preguntas.

HernanCabrera commented 2 years ago

No se preocupe por todos los tipos de errores (uno puede ser creativo) solo se revisarán los que dijimos. Lo importante es que defina y documente una estrategia de manejo de esos errores. Sobre sus preguntas, estrategia válida es:

En caso de error en el tipo de datos debe indicarse, retornar algún código de error que usted defina y documente y suspender el proceso. Sobre la densidad, aplica lo anterior. Ahora, si hay un error del estilo longitudes de arreglos, los objetos que se quedaron sin densidad deben ser rellenados con algún valor que usted determine y que indique que no hay valor (por ejemplo -1) La división por cero también suspende ejecución

Si se le ocurre una estrategia de error mejor, pues la define y documenta lo importante es Manejar el error y que no se "cuele", es decir que quede en evidencia que hay error. La forma en que lo maneje es su implementación. (documente, documente) solo debe ser un manejo de error coherente a la función solicitada. Por ejemplo, si viene un dato de población que dice "HOLA", mala estrategia sería reemplazarlo por un 1, pues tendría valores de suma de población, por ejemplo, que sería como valor, erróneo y puedo tomar malas decisiones al respecto.

Saludos

Francisco-Morales-R commented 2 years ago

Muchas Gracias! Me quedó una última duda. Cuando dice que en el caso de existir un error, debe retornar algún código de error y suspender el proceso, ¿Esto ultimo implica suspender la función únicamente, o el código completo?