Ver Mensaje Individual
  #2 (permalink)  
Antiguo 29/12/2009, 15:21
Avatar de _ssx
_ssx
 
Fecha de Ingreso: mayo-2003
Ubicación: mX
Mensajes: 683
Antigüedad: 21 años
Puntos: 60
Respuesta: porque no definir todos los metodos como estaticos?



Los métodos estáticos tiene un fin y no son una solución pensada en objetos, al hacer un método estatico estas utilizando solo ese metodo como una función más y no como una "entidad" que servira para comunicarse con otras entidades, si lo vemos como tu lo estas mirando estas desperdiciando el poder de la orientación a objetos y en ese caso la programación estructurada y en funciones es lo que tu necesitas, los objetos son más que simples repositorios de funciones, es programar de una manera distinta, es pensar distinto, a parte en teoría los atributos estáticos son así como digamos una variable global dentro de la clase y que compartirían todos las instancias de dicho tipo de objeto.

Ejemplo:

Código PHP:
class Persona{
     private static 
$_nombre '';
     public static function 
setNombre($n){
     
self::$_nombre $n;
}

Ahora puedes hacer esto y es totalmente valido.

Código PHP:
Persona::setNombre('Oscar'); 
y Si vuelvo a hacer esto?

Código PHP:
Persona::setNombre('Juan'); 
Siempre vas a trabajar sobre la misma variable y dejas a un lado la importancia de la creación de instancias y envio de mensajes entre objetos.

No debes de ver las clases como repositorios de funciones.
__________________
Escribe tu código de forma que refleje, y saque a relucir,lo mejor de tu carácter personal
www.oscararzola.com/blog
Principios de un programador