Ver Mensaje Individual
  #4 (permalink)  
Antiguo 29/11/2008, 20:44
Avatar de Acron_0248
Acron_0248
 
Fecha de Ingreso: junio-2005
Ubicación: 127.0.0.1
Mensajes: 1.648
Antigüedad: 18 años, 10 meses
Puntos: 18
Respuesta: Mi primer objeto - critiquen!!!

Realmente si es o no más fácil crear la tag ya hecha es en realidad cosa de perspectiva y en cuanto a la programación orientada a objetos se podría decir que la valía es la capacidad de crear "planos" sobre los cuales se pueda construir independientemente de las características de un proyecto :)

Sobre el objeto, no soy alguien de mucho saber pero me tomaré la libertad de apuntar algunas cosas si se me permite:

- El constructor lo podrías aprovechar mejor, los métodos add_anchor y add_title podrían simplemente implementarse dentro del constructor, por ejemplo:
Código PHP:
 function __construct($url$anchor$title){  
   
$this->url=$url;         
   
$this->anchor $anchor;
   
$this->title $title;
 } 
De esa forma podrías crear el objeto así:
Código PHP:
$enlace = new link('http://www.betadir.com''Directorio web''directorio de blogs'); 
- Tal vez esto sea cosa de preferencias y formas de programar pero a mi parecer deberías aprovechar el constrcutor y los métodos que usas para verificar los datos pasados en las variables, es decir, algo similar a:
Código PHP:
function __construct($url){  
   if (
$url == "") {
       throw new 
Exception('No se indicó ninguna dirección.');
   } else {
       
$this->url=$url;
   }

Lo de si usar Exception o simplemente die('Error') es cosa de preferencias también, pero referente al tema de la validación de los datos guardados en las variables podría ser algo en lo que te esmeres más dentro de los de los objetos.

Verificar si está vacía o no una variable la coloco como ejemplo, pero dependiendo de la fuente de los datos y en qué serán usados, muchas cosas más son las que puedes validar, por ejemplo, qué pasa si creo el objeto de esta manera utilizando tu actual clase?
Código PHP:
$enlace = new link("<script>alert('Hola');</script>");
echo 
$enlace->show(); 
- En el método show no es necesario reasignar variables, es decir, no es necesario utilizar $url = $this->url, podrías simplemente generar el enlace con lo que ya existe y evitarte trabajo:
Código PHP:
function show(){     
    
$imagen="<img src=\"$this->img\" $this->alt $this->border />";     
    return 
"<a href=\"$this->url\"  $this->title >$imagen </a>";


Tal vez pueda agregar más pero debo partir porque los perros quieren bajar =/
__________________
Usuario Reigistrado de linux #399288