Ahora, el tema es el siguiente. Vi varios ejemplos, en otros foros y en este también, de clases para conectarse a un server MySql, hacer consultas, etc. Lo que no me queda claro es cuál es la ventaja de usar objetos para manejar este tipo de tareas.
Es decir, una clase que básicamente lo que hace es replicar los funciones de mysql, transformarla en métodos de objeto y devolver lo mismo que devuelve la función original... ¿qué aporta?
No simplifica o ahorra código, me parece. El mismo ejemplo, usando un objetos vs funciones:
Código PHP:
$obj=new conectarMySQL("SERVIDOR","USUARIO","PASSWORD","BASE DE DATOS");
$obj->conectar();
$obj->consultar("select * from urls limit 0,10");
while($row=$obj->obtendatos()) {
echo "<br><a href=".$row['url'].">".$row['title']."</a>";
}
$obj->limpiaconsulta();
$obj->cerrarconexion();
Usando las funciones mysql:
Código PHP:
$link = mysql_connect("myServer","usr","pass") or die ("mensaje de error, etc");
mysql_select_db("base",$link) or die ("mensaje de error, etc");
$consulta = mysql_query("select columna from tabla", $link);
while($rs=mysql_fetch_row($consulta) {
echo $rs[0] . "<br>";
}
mysql_free_result($consulta);
mysql_close($link);
O sea, hacerlo con clases es el mismo o más trabajo (más bien diría que más), y el único cambio son los nombres de las llamadas. A cambio, estamos ocupando más recursos del sistema. El tema de la reusabilidad dificilmente pueda ser un argumento en este caso.
Bueno, tal vez si se agregara algún tipo de manejo de errores más complejo a la clase u otra cosa, le vería más sentido, pero la verdad es que, como está, no le veo mucho.
Como decía, recién empiezo con clases/objetos así que puede que no esté viendo algo que sea evidente para alguien con más experiencia en el tema. La idea de este post es, justamente, recabar argumentos a favor (o en contra) de usar clases/objetos para este tipo de situaciones. Me gustaría saber cuáles serían para ustedes las ventajas/desventajas de cada caso.
Muchas gracias.
Califa