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

OOP mejores practicas, duda con propiedad o metodo

Estas en el tema de OOP mejores practicas, duda con propiedad o metodo en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Buenas Tengo una duda relacionado con experiencia me gustaria saber cual es la mejor practica por ejemplo en este caso.. Tengo una clase llamada webservice, ...
  #1 (permalink)  
Antiguo 03/08/2011, 11:00
Avatar de jamesjara  
Fecha de Ingreso: mayo-2008
Ubicación: san jose
Mensajes: 449
Antigüedad: 15 años, 11 meses
Puntos: 7
Exclamación OOP mejores practicas, duda con propiedad o metodo

Buenas

Tengo una duda relacionado con experiencia me gustaria saber cual es la mejor practica por ejemplo en este caso..

Tengo una clase llamada webservice, en la cual hay dos funciones obligatorias , login y loggout.. Login necesita 3 propiedades (varuser,varpass,metodo) .Aqui viene mi duda
en cual caso se debe utilizar un metodo adicional por ejemplo function config_login(varuser,varpass,metodo) y en cual se debe utilizar directamente las variables como propiedades $webservice->Var_user;

Por si no me explique muy bien , de nuevo:

Tengo dos opciones quiero saber cual es la correcta, o la recomendada.

Opcion a:
Para configurar el modulo de Login tengo 3 campos , entoncres creo una funcion para utilizarla de metodo y esta setee las variables private.
Código PHP:
private varuser,varpass,metodo;
public function 
set_login_data($user_var 'user',$password_var='pass',$mod_var='get'){
        
$this->Vr_user         $user_var;
        
$this->Vr_password     $password_var;
        
$this->Vr_mod        $mod_var;

Y entonces luego nada mas hago "$webservice->set_login_data('a','b','c');"

Opcion b:
Para configurar el modulo de Login tengo 3 campos , entonces nada mas hago estas 3 variables public y las modifico asi fuera de la clase.
Asi:
$webservice->varuser = "asd";
$webservice->varpass = "asd";
$webservice->metodo = "asd";


Entonces cual es la mejor opcion? la mas debida?
__________________
X7CLOUD El webservice latino!
Compatible
con mysql,sql,sqlitte.
Compatible con extjs , sencha , smargwt, Gwt , Jquery , Charts, Streaming.
  #2 (permalink)  
Antiguo 03/08/2011, 11:18
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: OOP mejores practicas, duda con propiedad o metodo

Por encapsulación no debes de tener variables publicas nunca, todas las debes de accesar por medio de un setter y leerlas usando un getter.

Saludos.
  #3 (permalink)  
Antiguo 05/08/2011, 10:47
Avatar de jamesjara  
Fecha de Ingreso: mayo-2008
Ubicación: san jose
Mensajes: 449
Antigüedad: 15 años, 11 meses
Puntos: 7
Respuesta: OOP mejores practicas, duda con propiedad o metodo

cierto! , gracias

Y de hecho estabaa haciendo mal al agregar dos modulos obligatorios.. ahora
es mas bien 100% dinamico :

Código:
$Webservice->add_Module		( "login"  		, MOD_LOGIN	 );
$Webservice->add_SubModule	( MOD_LOGIN 	, "GET"		, GET 	, "db_xml" );
$Webservice->add_SubModule	( MOD_LOGIN 	, "LIS" 	, LIS	, "db_json" );
$Webservice->add_SubModule	( MOD_LOGIN 	, "ADD"		, ADD 	, "PLAIN_JSON" );
$Webservice->add_SubModule	( MOD_LOGIN 	, "UPD"		, UPD 	, "PLAIN_XML" );
$Webservice->add_SubModule	( MOD_LOGIN 	, "DEL"		, DEL 	, "plain_function" );
__________________
X7CLOUD El webservice latino!
Compatible
con mysql,sql,sqlitte.
Compatible con extjs , sencha , smargwt, Gwt , Jquery , Charts, Streaming.

Etiquetas: opp, php, webservice
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 15:38.