Saltar al contenido

Los bordes de la aplicación

Todos los sitios por donde entra o sale algo, reunidos: los ocho bordes, qué se comprueba en cada uno, y por qué merecen tratarse igual.

Los ocho bordes

Siete entradas y una salida, y el tercero —tus propios ficheros— es el que casi nadie trata como borde.

El tratamiento común

Y lo que los ocho comparten:

Y la observación que hace útil este nivel: es la misma lista para los ocho. Lo que cambia es qué herramienta hace cada comprobación —el compilador en el puente, tu código en los demás— y no qué hay que comprobar.

El borde que se olvida

Merece insistir en el tercero, porque es contraintuitivo: tus propios ficheros de datos son entrada externa.

  • El usuario puede haberlos editado. Nivel 39.4.
  • Otro programa suyo también. Nivel 34.1.
  • Una versión anterior de tu aplicación los escribió con otro formato. Nivel 43.3.
  • Y pueden estar corruptos por un corte a mitad de escritura, si no eran atómicos. Nivel 40.2.

Los cuatro producen el mismo síntoma: un fichero que no es lo que tu código espera. Y la respuesta es la misma que para cualquier borde: validar al leer y tener un camino para cuando no encaje.

Encontrar el que no tratas

Y el ejercicio del nivel: pasar la lista y marcar.

  • Si un borde no tiene validación, ahí hay una suposición que un día falla.
  • Si tiene validación pero no camino de error, falla ruidosamente cuando debería fallar bien.
  • Y si la validación está en el frontend, no cuenta: nivel 15.1, el core debe validar igual.

El más frecuente que aparece sin tratar es el tercero, seguido del quinto —la salida de procesos— y del séptimo.