Muejejejejejeje.. a mi juego me llamaron
Bueno urjosé, felicitaciones por pasarte al lado OO de la fuerza. La clase obviamente la estuve mirando y si bien para ser un comienzo no está nada mal, podría si estar un poco mejor. Aquí van mis comentarios al respecto, que espero te sirvan :
1)
Parámetros por "defecto". Generalmente los valores por "defecto" que puede utilizar una Clase al momento de instanciarse, se colocan como valores predefinidos de los "miembros" de la clase. Luego, en el constructor, se les puede sobreeescribir si hay algunos que no se desean utilizar. Uno de los consejos que la experiencia me dijo, es que lo mejor para instanciar y pasar parámetros a un objeto, es hacerlo mediante un array asociativo con ciertos valores o en su defecto, utilizar un nuevo objeto Settings ( que te lo creas vos, a tu gusto ) si es que realmente querés hacer todo 100% OOP.
Ejemplo con Array Código PHP:
<?
class miObjeto
{
var $miembro1 = "valor por defecto";
var $miembro2 = 3;
function miObjeto( $param )
{
$this->miembro1 = !$param["miembro1"]?$this->miembro1:$param["miembro1"];
}
}?>
En el ejemplo puedes ver como pasando un array con un id asociativo "miembro1" el objeto busca si tiene un valor y se lo asigna al miembro. Y verás como miembro2 no tiene esta caracteristica, por lo que te aseguras de que al momento de instanciar, algunos miembros no puedan cambiarse.
Ejemplo con Objeto Settings Código PHP:
<?
class Settings
{
var $user = "webstudio";
var $pass = "********";
var $host = "localhost";
}
class miObjeto
{
var $miembro1;
var $miembro2;
function miObjeto()
{
$set = new Settings;
$this->miembro1 = $set->user;
$this->miembro2 = $set->pass;
}
}
?>
En este ejemplo, tambien puedes hacer orta cosa, dependiendo de la cantidad de objetos que utilicen a Settings, y es instanciar solo 1 vez a Settings en el curso normal de tu script y pasar el objeto Settings por referencia a los constructores. Eso queda a tu gusto.