Ver Mensaje Individual
  #3  
Antiguo 19-11-2010
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Reputación: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Está muy bien utilizar excepciones para controlar fallos que no se pueden preveer.
En este caso es un abuso de lla estructura try..except.
Sabiendo que vamos a abrir un fichero de una carpeta que el usuario selecciona, es muy probable y previsible que el fichero no esté en la carpeta.

El ejemplo más simple es pedir dos números y devolver la divisón entre ellos.
Con un simple IF se solucionan todos los errores posibles (división por 0)
En cambio, podemos hacer la división, dejar que falle y que se maneje la excepción. Esto consume muchos más recursos del ordenador, entorpece la lectura del código y rompe la fluidez que debería tener.

Código Delphi [-]
begin
   if (b=0) then 
      Mensaje ('No se puede dividir por 0');
   else
      Resultado := a/b;
end;

Código Delphi [-]
begin
   try
      Resultado := a/b;
   except
      on e:Exception do
         Mensaje('Ha ocurrido un erro: '+E.Message)
   end;
end;
Responder Con Cita