[Php-objetos] Ejercicio 1

Leonardo Tadei - Pegasus Tech Supply leonardot en pegasusnet.com.ar
Mar Feb 10 23:32:26 ART 2009


Hola Andrés,

	setear buenos default en el constructor es bueno, porque ahorra mucha
escritura al usar el Objeto.

	Podés mejorar este mecanismo por ejemplo así:

class ....

function __construct($cantRuedas=4, $plazas=2, $ConsumoPorKm=300,
$Combustible="super", $valor=39 ) {
        $this->cantRuedas=$cantRuedas;
        $this->plazas=$plazas;
        $this->setConsumoPorKm($ConsumoPorKm);
        $this->setCombustible($Combustible,$valor);
}

	De esta manera tenés valores por default, a la vez que podés en el
constructor pasárselos.

	Por parte, adivino que setCombustible está implementado con un array,
lo cual no está ni bien ni mal, pero el setter está decididamente mal: o
pasás una variable, o pasás un Objeto con esos atributos, pero no un
"setter doble".

	Nos vemos!


El mar, 10-02-2009 a las 21:18 -0200, Andres Manuel escribió:
> Hola gente.
> Leo te queria consultar, en el caso de que los valores de los atributos 
> como cantRuedas, $combustible, consumoPorKm y plazas en el caso del 
> objeto auto.
> ¿Tengo que darle valores por defecto? por ejemplo en el constructor ¡¡¡
> function __construct(){
>         $this->cantRuedas=4;
>         $this->plazas=2;
>         $this->setConsumoPorKm(300);
>         $this->setCombustible('Super',39);
>     }
> Igualmente vale aclarar que estan hechos todos los setter y getter para 
> estos atributos en la actualidad estoy creando el objeto de esta manera 
> por que tienen valores por defecto en el constructor de la clase auto.
> 
> $obj=new Auto();
> $consumo=$obj->calcularConsumo();
> print ('El auto consume: '.$consumo);
> 
> En el caso de que quiera setear algun atributo puedo hacerlo por que 
> hice los metodos,  pero si quiero si o si obligarlo a ingresarlos al 
> momento de crear el objeto auto,
> 
> new $obj=new Auto($valor1 , $valor2 , $valor3 , $valor4);
> 
> ¿Quizas de esta manera ?
> ¿O como lo venia haciendo esta bien?
> 
> Desde ya Gracias y 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