[Php-objetos] Gerardo - prácticos aprobados
Leonardo Tadei - Pegasus Tech Supply
leonardot en pegasusnet.com.ar
Mie Feb 18 21:25:24 ARST 2009
Hola Gerardo!
El mié, 18-02-2009 a las 17:48 -0300, Gerardo Valiani escribió:
> Te cerró mejor ahora el uso de excepciones? Espero que
> sí.
>
> Si, ahora entiendo un poco mejor.
>
>
> Como detalle, noté que en Combustible hacés:
> public function getTipo(){
> if(!empty($this->tipo)){return $this->tipo;}
> else{return false;}
> }
>
> Lo cual es correcto. Sin embargo, es siempre más útil
> en estos casos
> lanzar una excepción que devolver "false", al viejo estilo, ya
> que
> controlar errores de este modo significa poner cada getter en
> un IF, en
> vez de encerrar todo un bloque semántico con try/catch y
> listo.
>
> Cuando decis "todo". Te referis a toda la clase, como lo hice en el
> practico o como ya lo mencionaron aca en la lista? O "todo" te referis
> a las dos lineas de este metodo. Porque si esta ultima opcion, no
> entiendo como me zafo del IF.
me refiero a toda la clase.
No zafás del IF dentro del método, pero si no generás una excepción, lo
único que te queda por hacer es poner un IF en la parte del sistema que
llama al método, para saber si funcionó o no.
De eso otro IF sí zafás.
Igual, lo mejor de todo no es eso, sino que podés delegar el atrapar la
excepción tanto como se te antoje. Con el false tenés que poner el IF sí
o sí en el llamador.
Saludos!
--
Leonardo Tadei
leonardot en pegasusnet.com.ar
http://blog.pegasusnet.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
Más información sobre la lista de distribución Php-objetos