Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Ayuda con constructor

Estas en el tema de Ayuda con constructor en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Una pregunta amigos, es recomendable hacer un constructor ? o es mejor no ponerlo y mandar los datos por la funcion nada mas osea asi ...
  #1 (permalink)  
Antiguo 13/06/2010, 20:17
 
Fecha de Ingreso: marzo-2009
Mensajes: 356
Antigüedad: 15 años, 9 meses
Puntos: 7
Ayuda con constructor

Una pregunta amigos,

es recomendable hacer un constructor ? o es mejor no ponerlo y mandar los datos por la funcion nada mas
osea asi

$areas = new Area()
$areas -> getArea($codigo);

porque si tubiera constructor el codigo iria en Area($codigo).

lo malo es cuando tengo muchos datos y no quiero mandar todos

$asistencia = new Asistencias(null,null,null,null,null,null,null,nul l,$dato);
por jemplo alli.

espero sus respuestas
gracias
  #2 (permalink)  
Antiguo 13/06/2010, 20:27
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: Ayuda con constructor

El constructor es conveniente para cualquier inicialización que el objeto puede necesitar antes de su uso. Si el dato que estás tratando de tomar no se va a utilizar para todos los métodos que tienes declarado en la clase, lo mejor es que lo trabajes donde sea necesario. Es decir, si tienes varios métodos y un solo método va a trabajar con el dato que le estás brindando, entonces ese dato solo menciónalo en ese método solamente.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 13/06/2010, 23:30
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Tema movido desde PHP a PHP orientado a objetos
  #4 (permalink)  
Antiguo 15/06/2010, 20:01
Avatar de enriqueplace  
Fecha de Ingreso: mayo-2005
Ubicación: Uruguay / Argentina
Mensajes: 1.102
Antigüedad: 19 años, 6 meses
Puntos: 32
Respuesta: Ayuda con constructor

Que tal Dante

Conceptualmente hablando, en el constructor también defines "reglas de negocio" de la propia clase, es decir, tú debes decidir cual es la información mínima que debes exigir para que se puedan crear instancias de esa clase.

Por ejemplo,

Código PHP:
$usuario = new Usuario(); 
Estás diciendo que "en tu sistema se pueden crear usuarios sin ningún tipo de dato", pero si tienes un constructor que pide siempre id y nombre de usuario, estás diciendo que "en tu sistema no pueden existir usuarios que no tengan por lo menos definido su id y nombre" (la diferencia es sutil, pero muy importante).

El punto es, según tu contexto, pensar cuales son los datos que debería pedir la clase como mínimo para poder crear una instancia, más allá de la cantidad de los mismos.

Es un tema de diseño (OO).

PD: puedes resolver el tema de muchos parámetros haciendo bien un constructor y luego algunos setters según corresponda, o hasta parámetros de tipo array / objetos para así tener un método que no esté sobrecargado de decenas de parámetros, simplemente lo procesas internamente.

Saludos!
__________________
Blog phpsenior.com Cursos a Distancia surforce.com

Etiquetas: constructor
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:06.