JeuWeb - Crée ton jeu par navigateur
avantages d'une classe d'accès à la base de donnée ? - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : avantages d'une classe d'accès à la base de donnée ? (/showthread.php?tid=5213)



avantages d'une classe d'accès à la base de donnée ? - php_addict - 02-02-2011

bonjour

je code en procédural mais je me pose la question suivante:

quels sont les avantages d'une classe d'accès à la base de donnée (en PDO ou non...) ? un truc du genre:


$donnees = array ('texte' => 'Hello World",'date' => date("d M Y", time()) ; ) ;
$db->insert('testing', $donnees) ;

bonne journée


RE: avantages d'une classe d'accès à la base de donnée ? - SorenS - 02-02-2011

Même en utilisant une classe j'aime bien passé par l'écriture de la requête à la main.

Cependant, quand tu passes par ce genre de classes bien des choses se font "toutes seules". Proctection / sécurité généralement.


RE: avantages d'une classe d'accès à la base de donnée ? - Myrina - 02-02-2011

Le premier intérêt que je vois, c'est de ne pas être lié au service de persistence.
Avec une écriture de ce style, il est possible d'enregistrer dans une BDD ou dans un fichier JSON ou XML par exemple.

Ensuite cette écriture permet la décharge d'un bon nombre de responsabilités qui sont (doivent être) prises en compte par la classe (ou les classes appelées via cette classe).


RE: avantages d'une classe d'accès à la base de donnée ? - Sephi-Chan - 02-02-2011

En instaurant une telle couche, tu peux automatiser plein de choses, que ce soit en écriture (échapper automatiquement les chaînes, normaliser les dates en UTC) ou en lecture (simplifier l'écritures de requêtes, retourner les données sous forme de tableau directement (plutôt que d'une ressource qu'il faut fetch).

Après, l'étape suivante est l'utilisation d'un ORM.


Sephi-Chan


RE: avantages d'une classe d'accès à la base de donnée ? - Ter Rowan - 02-02-2011

pour moi je ne vois pas l'intérêt d'utiliser une classe de ce type.

En effet pour le faire bien, il faut développer toute une couche rébarbative (à mon sens) sur la protection/formalisation/contrôle des données avec des mécanismes de construction de requête, etc...


A mon sens c'est bâtard (l'intermédiaire de Sephi mais en négatif) entre l'ORM et la requête SQL via pdo

je préfère perso la requête SQL (via pdo pour ne pas traiter pas mal de truc) mais si je voulais éviter de créer des requêtes, je passerais directement à de l'ORM (donc du déjà tout fait)


Evidemment si il y a sur le marché des classes déjà développées qui s'occupent de tout, c'est à comparer en terme de fonctionnalité / facilité d'utilisation avec des ORM mais tant qu'à faire l'effort de passer d'une philosophie "je dis ce qui doit être fait" (requête sql) à "je dis ce que je veux" autant aller au bout


RE: avantages d'une classe d'accès à la base de donnée ? - php_addict - 02-02-2011

je ne connaissais pas les ORM... lequel recommanderiez vous ? (ce n'est pas pour maintenant mais pour ma culture perso et mes nouveaux projets...)

j'imagine que l'utilisation d'un ORM implique une syntaxe POO ?


RE: avantages d'une classe d'accès à la base de donnée ? - Sephi-Chan - 02-02-2011

Doctrine. Wink


RE: avantages d'une classe d'accès à la base de donnée ? - Holy - 02-02-2011

Tiens au fond, quelle est la différence entre un ORM et une classe d'abstraction sinon que l'ORM gère plus de choses ? :o

@ Php_addict : la syntaxe POO est aussi simple que la syntaxe procédurale, tant que tu n'as rien à conceptualiser, ça ne pose à priori aucun soucis même si tu ne connais pas bien la POO, puis l'utilisation d'un ORM te permettrait de connaître l'objet avec des applications où tu as déjà des bases (relations & bases de données).