Ver Mensaje Individual
  #3 (permalink)  
Antiguo 07/07/2012, 09:24
Avatar de Ronin46
Ronin46
 
Fecha de Ingreso: junio-2009
Mensajes: 398
Antigüedad: 15 años, 6 meses
Puntos: 8
Respuesta: Mejor forma de crear campos de un formulario

Cita:
Es más limpio a mi parecer la segunda opción ya que así no tienes que contaminar la clase cForm con tareas que no son de la clase (recuerda principio de polimorfismo).
Si veo lo que me dices de contaminar la clase cForm pero me dejas un poco contrariado con la coletilla del polimorfismo ya que es en la primera opción donde precisamente estoy haciendo polimorfismo (o eso creo), mientras que en la segunda simplemente estoy enlazando los campos y la "configuración" del campo la hago por fuera del formulario.

Vuelvo a poner el código de la primera opción con unos pequeños cambios.
Código PHP:
Class cForm
{
    private 
$Campos = array();

    public function 
CrearCampo ($Tipo$Nombre)
    {
        
$this->Campos[$Nombre] = new $Tipo ($Nombre);
    }

    public function 
DarValorCampo ($Nombre$Valor)
    {
        
$this->Campos[$Nombre]->SetValor $Valor;
    }
}

$Form = new cForm ("MiFormulario");
$Form->CrearCampo ("Textarea""MiTextarea");
$Form->DarValorCampo ("MiTextarea""BlaBlaBla"
Cita:
También puedes tener un método init() y heredar la clase y así en el método init de las subclases crear y atar los elementos que necesites.
Esto se escapa a mis conocimientos actuales , ¿me puedes pasar alguna referencia o poner algún ejemplo?

Gracias!
__________________
http://www.controldegastos.com, acepto sugerencias para el sitio.
Repetir conmingo: "tengo que dedicar más tiempo a gozar de placer"