29-08-2007, 11:06 PM
lanoix a écrit :pour l'écrire de cette manière ta logique de calcul/affection est "au-dessus", pas spécialement le même fichier mais au même niveau (niveau d'exécution), donc dans la couche business.Pas du tout
Si mon moteur de template a cette forme :
Code :
<?php
class Template {
protected $vars = array();
function set($var, $val) {
$this->vars[$var] = $val;
}
function render($template_filename) {
extract($this->vars);
include $template_filename;
}
}
Et en plus, ça marche
Code :
<?php
$moteur = new Template;
$moteur->set('prenom', 'Bob');
$moteur->set('infos' => array(
'nom' => 'Jones',
'prenom' => 'Bob'
));
$moteur->render('monFichier.php');
Loetheri a écrit :@ naholyr : Tu dis qu'il faut en saisir le sens ^^ Je suis d'accord mais quels sont les avantages réels de l'usage d'un framework.Si tu n'es pas familier de la conception objet, c'est normal C'en est un des avantages : la surcharge de méthode permet ce genre de possibilités très simplement.
Pour ton exemple sur les requêtes, j'avoue avoir été perdu au début du deuxième paragraphe ^^
Citation :L'objet sous PHP est et reste une absurdité. Pas à cause de l'objet en soi mais tout simplement parce que son utilité est ... réduite à la création de la page. Si je crée un objet, il est limité à la page. L'objet, outre les différents aspects qu'il apporte, devient nul en PHP. Je dis bien en PHP.Et pourtant, justement avec les frameworks et les système de persistence en base de données (autrement appelée ORM pour «Object Relational Mapping»), l'objet devient persistent, il a une vie propre sans qu'on ait à se soucier de le stocker de nous-même.
Bien sûr tu entendais surtout qu'un objet doive vivre dans la mémoire du serveur, mais c'est aussi possible avec APC ou MemCached.
Tu sembles penser que ça marche nativement dans d'autres langages, mais en Java cela nécessite l'utilisation de Hibernate, en Python cela nécessite l'utilisation d'un framework (comme Django), etc… Aucun langage n'offre ce type de fonctionnalité comme ça, magiquement, ça passe toujours par une librairie tierce.
Loetheri a écrit :Cela dit, si on veut discuter de l'objet, j'invite quelqu'un à faire la démarche d'en parler ailleurs. Car moi, cela m'intéresse vraiment de savoir pourquoi certains estiment qu'utiliser un framework est intéressant.Tout ceci est intimement lié : un framework implémentera toujours le concept MVC, ce qui implique de faire un choix pour la vue, et donc de sélectionner un type de moteur de template. Et un framework reposera toujours sur une conception orientée objet.
On ne peut donc pas discuter de l'utilité d'un framework sans discuter de ces deux autres points
Ressources [PHP][MySQL][prototype.js]