stringtranslate.com

Salida elegante

Una salida elegante [1] (o manejo elegante ) es un modismo de programación simple [ cita requerida ] en el que un programa detecta una condición de error grave y "sale elegantemente" de manera controlada como resultado. A menudo, el programa imprime un mensaje de error descriptivo en una terminal o registro como parte de la salida elegante.

Por lo general, el código para una salida elegante existe cuando la alternativa (permitir que el error pase desapercibido y no se controle ) produciría errores espurios o un comportamiento anómalo posterior que sería más difícil de depurar para el programador . El código asociado con una salida elegante también puede tomar medidas adicionales, como cerrar archivos , para garantizar que el programa deje los datos en un estado consistente y recuperable.

Las salidas elegantes no siempre son deseables. En muchos casos, un bloqueo total puede brindarle al desarrollador de software la oportunidad de conectar un depurador o recopilar información importante, como un volcado de memoria o un seguimiento de la pila , para diagnosticar la causa raíz del error.

En un lenguaje que admita el manejo formal de excepciones , una salida elegante puede ser el paso final en el manejo de una excepción. En otros lenguajes, las salidas elegantes se pueden implementar con instrucciones adicionales en las ubicaciones de posibles errores.

La frase "salida elegante" también se ha generalizado para referirse a dejar ir un trabajo o una relación en la vida que ha terminado. [2] [3]

En Perl

En el lenguaje de programación Perl , las salidas elegantes se implementan generalmente mediante el operador die . Por ejemplo, el código para abrir un archivo suele ser el siguiente:

# Abra el archivo 'myresults' para escribir, o muera con un mensaje de error apropiado. open RESULTS , '>' , 'myresults' o muere "no se puede escribir en el archivo 'myresults': $!" ;      

Si falla el intento de abrir el archivo myresults, el programa que lo contiene finalizará con un mensaje de error y un estado de salida que indica una finalización anormal.

En Java

En el lenguaje de programación Java , el bloque try...catch se utiliza a menudo para capturar excepciones . Todo el código potencialmente peligroso se coloca dentro del bloque y, si se produce una excepción, se detiene o se captura.

try { // Intenta leer el archivo "file.txt" Scanner sc = new Scanner ( new File ( "file.txt" )); while ( sc . hasNextLine ()) System . out . println ( sc . readLine ()); sc . close (); } catch ( IOException e ) { // No se pudo leer el archivo System . err . println ( "No se pudo leer el archivo. Rastreo de pila:" ); e . printStackTrace (); }                  

En C se puede utilizar la función error(3) , proporcionada en GNU por la biblioteca GNU C.

int fd ; si (( fd = open ( "/dev/urandom" , O_RDONLY )) < 0 ) error ( 1 , errno , "Error al abrir" );          

Si el primer parámetro no es cero, esta función saldrá del proceso principal y devolverá ese parámetro.

Véase también

Referencias

  1. ^ "salida elegante". Diccionario Libre . Consultado el 25 de septiembre de 2016 .
  2. ^ Ellen Goodman . "Cita de Ellen Goodman: "Hay un truco para la 'salida elegante'. Empieza..."". Goodreads . Hay un truco para la 'salida elegante'. Empieza con la visión de reconocer cuándo un trabajo, una etapa de la vida o una relación ha terminado y dejarlo ir. Significa dejar lo que terminó sin negar su validez o su importancia pasada para nuestras vidas. Implica un sentido de futuro, una creencia de que cada línea de salida es una entrada, que estamos ascendiendo, en lugar de salir.
  3. ^ Sue Shellenbarger (18 de agosto de 2015). "Cómo dejar su trabajo con elegancia". The Wall Street Journal. Una salida con elegancia puede mejorar la reputación de un empleado y fortalecer relaciones valiosas. Una mala salida puede causar graves daños a ambas.