Optimisation (Quote Vs Guillement)

Optimisation (Quote Vs Guillement) - PHP - Programmation

Marsh Posté le 12-01-2005 à 18:49:33    

Bonsoir à tous,
 
Voilà j'ai lu à plusieurs reprises que :

Code :
  1. print("test" );


Etait moins rapide que

Code :
  1. print('test');


 
--> Du fait que Php ne balaye pas toute la chaine de caractères pour vérifier si une variable est présente ou non.
 
Est-ce que ça vaut vraiment la peine de le faire ?
(Tous les print de mon site sont actuellement avec des " . Je me suis amusé à changer tous ces guillements par des simples quote, mais seulement pour l'espace d'administration. C'est vraiment lourd à faire donc avant de commencer j'aimerais vos avis pour savoir si ça vaut réellement le coup ;)
 
D'avance merci pour vos rép.!
 
Thanks :d

Reply

Marsh Posté le 12-01-2005 à 18:49:33   

Reply

Marsh Posté le 12-01-2005 à 19:27:32    

Je doute que ça vaille le coup de repasser sur tout ton code juste pour ça, à moins que ça puisse se faire en quelques minutes, et encore.
 
Prend juste l'habitude de le faire à partir de maintenant si tu y tiens. ;)


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 12-01-2005 à 19:41:42    

Ca tiens plus de la masturbation intellectuelle que du gain de performance réel.
 
Ce genre de micro-optimisation est mesurable mais n'apporte strictement aucun gain significatif et est négligeable par rapport à d'autres facteurs (dans 99,9999% des cas).


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 13-01-2005 à 09:25:37    

ça se mesure à quelques milliseconde pour des milliers ou dizaines de milliers d'itération... rien qui justifie de se retaper un site complet juste pour ça ;)
J'avais un lien que je tacherai de retrouver qui listait qques unes de ces otpimisations...


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
Reply

Marsh Posté le 13-01-2005 à 12:56:28    

Ca pourrait m'interesser Xav_ :D *doit etre un des seuls paumés qui fait gaffe a mettre des ' a la place des " :p*


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 13-01-2005 à 13:42:03    

esox_ch a écrit :

Ca pourrait m'interesser Xav_ :D *doit etre un des seuls paumés qui fait gaffe a mettre des ' a la place des " :p*


 
je suis meme pire que ça, je met tout ce qui ne change entre simple quote et après je concatène avec les variables plutot que de tout écrire entre une seule série de double quote...  
 
mais bon, je sais que c'est pas très grave, et je me soigne....
 
voilou le lien:
http://www.estvideo.com/dew/pages/phpbench/
 
PS: si tu voyais les habitudes fortement scolaires que j'ai en programmation automate (en meme temps c'est mon taf)


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
Reply

Marsh Posté le 13-01-2005 à 13:59:11    

Tres tres interessant ce test :). J'aimerais bien trouver des choses comme ça pour les requetes Mysql et d'autres trucs de PHP ... En tout cas merci.  
P.S: Je suis aussi un fana des $var.'/'.$var2.'/' ... ;) ce qui fait s'arracher les cheveux a pas mal de connaissances.


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 13-01-2005 à 19:18:15    

Quand j'écris du code je mets quasiment que des ' pour les chaînes et je concatène les variables aussi.
 
Mais bon, quand je récupère du code écris par quelqu'un d'autre qui n'a pas cette méthodologie, je m'embête pas à tout réécrire pour un gain minime.

Reply

Marsh Posté le 13-01-2005 à 19:24:49    

Généralement, il existe d'autres optimisations simples et netement plus bénéfiques...
 
Je dis pas, si t'es dans une boucle, un traitement lourd, alors oui, ça peut jouer.
 
Mais ça n'a de sens que si tout le reste est correctement optimisé (la config de ton OS, de ton réseau, de ton serveur, de ta DB, ...), avant de te lancer dans la micro-optimisation.


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 13-01-2005 à 21:41:23    

sircam a écrit :

Généralement, il existe d'autres optimisations simples et netement plus bénéfiques...
 
Je dis pas, si t'es dans une boucle, un traitement lourd, alors oui, ça peut jouer.
 
Mais ça n'a de sens que si tout le reste est correctement optimisé (la config de ton OS, de ton réseau, de ton serveur, de ta DB, ...), avant de te lancer dans la micro-optimisation.


 
C'est clair que c'est pas qui va changer si on fait de grosses erreurs autre part, mais si on a un code a peu pres correct, pkoi faire faux si c'est si facile de faire juste :D


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 13-01-2005 à 21:41:23   

Reply

Marsh Posté le 13-01-2005 à 21:53:50    

esox_ch a écrit :

C'est clair que c'est pas qui va changer si on fait de grosses erreurs autre part, mais si on a un code a peu pres correct, pkoi faire faux si c'est si facile de faire juste :D


Yep, bien sûr, tu le fais c'est déjà ça, mais ça ne change pratiquement que dalle, si ce n'est l'auto-satisfaction d'avoir écrit une ligne de plus state of the art, ce qui vaut déjà de l'or à l'heure actuelle où les script-kiddies polluent l'internet de leurs bricolages boiteux sur des sites bourrés d'erreur de design et où on s'en fout tant que ça marche.  :fou:  
 
Ceux pour qui ça compte font partie d'une autre catégorie de développeurs, qui recherche l'excellence. Mais on te paye pas bien cher pour ça, de nos jours.
 
Enfin, sur un code donné que je devrais corriger, c'est sans doute la dernière optimisation que je ferais... si jamais je la faisais.  [:airforceone]


Message édité par sircam le 13-01-2005 à 21:54:04

---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 13-01-2005 à 23:57:21    

C'est clair que c'est pas pour ça qu'on va te payer plus cher. Mais moi je suis payé pour faire un site qui marche, et tant qu'il marche je suis payé, que je doive l'entretenir ou pas, donc si je fais qqch de tiptop parfait bien securizé et optimisé j'en sors gagnant a la fin :).


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 14-01-2005 à 01:39:37    

Citation :

Enfin, sur un code donné que je devrais corriger, c'est sans doute la dernière optimisation que je ferais... si jamais je la faisais.


kler, moi non plus...  
mais dans mon taf (prog automate) j'ai eu à faire le debug/maintenance de truc codé par d'autres, et des fois vraiment pourris, et je me suis promis de lamais faire subir ça aux autres (on m'a meme déjà reproché un excès de commentaires... mais maintenant je suis sur une catégorie d'automate où il ne sont pas chargé en mémoire donc je peux me lacher :D)


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
Reply

Marsh Posté le 14-01-2005 à 01:53:04    

Personnellement je dirais que c'est pas ce sur ça que j'irais m'intéresser pour avoir un script rapide ou optimisé pour. Moi je verrais plutot sur le code en lui-même, est ce qu'il y a des tests qui sont pour rien, est ce que je peux mettre switch à la place du if elseif ... est ce que je travail en mode E_ALL, est ce que le code est bien monté/pensé dasn son ensembe,...
l'histoire du simple ou double cote c'est de la masturbation de mouche.
 
PS: pour info je travail en simple cote à cause du html.
 
berk!... :kaola:  

Code :
  1. echo "<table border=\"0\" cellspacing=\"0\">".chr(13);


Terrible  [:negueu]  

Code :
  1. echo '<table border="0" cellspacing="0">'.chr(13);


Message édité par Berceker United le 14-01-2005 à 01:55:15
Reply

Marsh Posté le 14-01-2005 à 07:15:51    

D'apres le site de Xav_ le if elseif else est plus rapide que le switch a l'execution :p, c'est assez bizard mais je pense que je vais rester au switch meme s'il c'est une syntaxe qui me plais pas trop ( le case : break; me rappelle vaguement des langages comme VB, Basic & co que je considere etre des langages d'avant guerre :p)


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 14-01-2005 à 07:49:37    

esox_ch a écrit :

D'apres le site de Xav_ le if elseif else est plus rapide que le switch a l'execution :p, c'est assez bizard mais je pense que je vais rester au switch meme s'il c'est une syntaxe qui me plais pas trop ( le case : break; me rappelle vaguement des langages comme VB, Basic & co que je considere etre des langages d'avant guerre :p)


C'est vrai, je suis comme. Je trouve plus logique d'ailleur puisqu'elle est prévus pour.

Reply

Marsh Posté le 14-01-2005 à 09:10:57    

esox_ch a écrit :

le case : break; me rappelle vaguement des langages comme VB, Basic & co que je considere etre des langages d'avant guerre


Ca devrait plutôt évoquer C, C++ et Java !   [:suomi]

Citation :

D'apres le site de Xav_ le if elseif else est plus rapide que le switch a l'execution


Dingue! Et tu ne veux pourtant pas te priver d'une construction élégante et plus lisible pour être une poussière plus rapide. Enfin, je suppose que ça se compte en poussières ?


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 14-01-2005 à 17:30:59    

sircam a écrit :

Ca devrait plutôt évoquer C, C++ et Java !   [:suomi]

Citation :

D'apres le site de Xav_ le if elseif else est plus rapide que le switch a l'execution


Dingue! Et tu ne veux pourtant pas te priver d'une construction élégante et plus lisible pour être une poussière plus rapide. Enfin, je suppose que ça se compte en poussières ?


 
C'est le manque de paranteses qui me derrange, parceque ça m'est deja arrivé plusieurs fois d'oublier le break a la fin, et alors que le manque d'une parantese est facile a voir, celui d'un break il me passe toujours sous le nez.
 
 
Et non je vais pas me priver d'un switch pour des poussieres, je fesais juste remarquer que c'est etrange qu'une fonction "conseillée" soit plus lente qu'une deconseillée :p


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 14-01-2005 à 17:46:11    

Mais comme je l'ai deja dit. Si le script est mal pensé mal foutu vous aurez beau mettre les fonction, condition, ... les plus rapide vous aurais un script lent.
Le plus important c'est qu'un code puisse être compris par les autres et par sois-même au bout d'un temps. Qu'il faut penser à la charge X xconnexion à l'instant T.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed