16-07-2008, 05:49 PM
(Modification du message : 07-08-2008, 01:47 PM par Sephi-Chan.)
Certains d'entre nous utilisent diverses librairies qui font plus ou moins la même chose
ex:
JQuery
Mootools
Prototype+scriptaculo.us
etc...
sans rentrer dans une discussion de savoir lequel est meilleur (je serais bien incapable d'y participer) je me suis demandé...
Et si je change de librairie, il se passe quoi ?
Et là.. il se passe que j'ai tout le code à refaire tiens
D'où mon sujet :
je créé une couche spécifique à moi qui ne fait rien à part appeler une fonction de la libraire choisie
ex :
$("toto") dans prototype c'est document.getElementById("toto") (à peu de chose près)
je construis ma fonction
Ter$( id )
{
return $(id); // vrai pour prototype
}
maintenant si jamais je change de librairie et que pour faire un getElementById("toto") je dois prendre la fonction zz("toto")
alors, au lieu de modifier tout mon code, je modifie uniquement la surcouche :
Ter$( id )
{
// return $(id); // vrai pour prototype
return zz(id); // vrai pour duchmoll
}
l'avantage c'est en cas de changement de librairie, la maintenabilité, on ne touche plus à son code, on touche uniquement à la surcouche
mais
est ce qu'en performance on y perd ?
est ce que le cas simple que j'ai pris n'est pas trop simple (genre les objets étendus, les appels de fonction, etc...) et que la réalité nécessite une charge importante pour faire cette surcouche, qui du coup, à de rares exceptions, n'est pas pertinente ?
je suis loin d'être assez compétent dans le domaine pour pouvoir pousser plus avant le sujet sans m'engager dans une charge énorme, j attends donc vos réflexions avant d'aller plus loin
ex:
JQuery
Mootools
Prototype+scriptaculo.us
etc...
sans rentrer dans une discussion de savoir lequel est meilleur (je serais bien incapable d'y participer) je me suis demandé...
Et si je change de librairie, il se passe quoi ?
Et là.. il se passe que j'ai tout le code à refaire tiens
D'où mon sujet :
je créé une couche spécifique à moi qui ne fait rien à part appeler une fonction de la libraire choisie
ex :
$("toto") dans prototype c'est document.getElementById("toto") (à peu de chose près)
je construis ma fonction
Ter$( id )
{
return $(id); // vrai pour prototype
}
maintenant si jamais je change de librairie et que pour faire un getElementById("toto") je dois prendre la fonction zz("toto")
alors, au lieu de modifier tout mon code, je modifie uniquement la surcouche :
Ter$( id )
{
// return $(id); // vrai pour prototype
return zz(id); // vrai pour duchmoll
}
l'avantage c'est en cas de changement de librairie, la maintenabilité, on ne touche plus à son code, on touche uniquement à la surcouche
mais
est ce qu'en performance on y perd ?
est ce que le cas simple que j'ai pris n'est pas trop simple (genre les objets étendus, les appels de fonction, etc...) et que la réalité nécessite une charge importante pour faire cette surcouche, qui du coup, à de rares exceptions, n'est pas pertinente ?
je suis loin d'être assez compétent dans le domaine pour pouvoir pousser plus avant le sujet sans m'engager dans une charge énorme, j attends donc vos réflexions avant d'aller plus loin