PHP 5.4.*

devlop78
Invité n'ayant pas de compte PHPfrance

04 juil. 2011, 21:20

Attends, chacun son truc, mais je maintiens déjà que l'histoire des boucles, c'est un peu hors sujet ici et que ça me convient très bien, il ne faut pas se mettre de barrières pour rien, et pour le reste, je ne pense pas avoir dit trop de conneries.

Je ne dis pas que des choses vraies, j'ai encore beaucoup à apprendre, de là à dire que ça n'a rien à voir avec le full object ... j'ai quand même précisé typage fort pour le dissocier de l'ensemble de vision du full object, mais les langages comme Java, ou C# ont une écriture supérieure je trouve.

Un exemple aussi de méthodes sur un type, c'est le push. En javascript je n'écris que Array.push() je trouve ça très instinctif. En PHP on a array_push(Array, Item), et franchement, j'écris du coup $array[] = , que je trouve moins adapté même si il rempli la même fonction. le Push est plus explicite mais trop long pour PHP.

Bref, ce sont mes préférences, à mon goût je trouve l'écriture Java du peu que je connais presque parfait (en fait, c'est la partie C++ que j'adore) -- en gros :

String x = '';
Int y = 0;
Response.write(y.toString());

Grosso modo, c'est vraiment ce que j'adore, on a un typage fort, une façon d'écrire très belle, des objets pour tout (Objet de réponse), des méthode de type toString() etc (qui existe pour le coup en PHP pour les objets), et je ne l'ai pas utilisé ici pour Response.write() mais du polymorphisme dont le polymorphisme paramétrique pour cette dernière méthode. PHP le permet avec + ou - de codes en plus. Et j'aime aussi les exceptions alors qu'on a des erreurs plus compliquées à attraper en PHP. J'aime aussi la discipline qu'impose le typage des fonctions (renvoyer une chaine de caractère ou false n'est pas très logique).

Par contre, Java c'est une machine aussi très complexe, avec de l'évenementiel, des threads, et il m'a toujours fait peur ... Je me vois mal aller faire un site web avec.

Il est clair que là le gros avantage de PHP c'est son omniprésence sur les plateformes d'hébergement et sa rapidité d'exécution. Cependant, avec les caches d'OPCode ont se rapproche de la compilation plutot que de l'interprétation et peut-être qu'un jour, tout comme C#, les pages resteront ouvertes plusieurs heures et boufferont bcp de RAM ;) Mais là, je ne sais carrément plus de quoi je parle ^^

Mais si j'avais eu des cours en Java, peut-être que j'aurais abandonné PHP. Je suis ouvert !
Modifié en dernier par devlop78 le 05 juil. 2011, 01:17, modifié 1 fois.

ViPHP
ViPHP | 3300 Messages

05 juil. 2011, 00:20

Attends, chacun son truc, mais je maintiens déjà que l'histoire des boucles, c'est un peu hors sujet ici et que ça me convient très bien, il ne faut pas se mettre de barrières pour rien, et pour le reste, je ne pense pas avoir dit trop de conneries.
Tu en as dit un peu, mais c'est pas grave, ce qui me gêne c'est plutôt que tu les défendes mordicus, l'histoire des boucles par exemples c'est un cas représentatif du syndrome "ça marche donc c'est bien" chacun fait ce qu'il veut, mais personellement le fait que ça marche ça ne me suffit pas, je veux que ça marche et que ça soit la meilleure réponse possible à une problématique donnée, et les performances et la scallabilité c'est le principal problème des codes php qu'on trouve partout, les gens codent mal en php mais comme ça marche ils sont contents...
Je ne dis pas que des choses vraies, j'ai encore beaucoup à apprendre, de là à dire que ça n'a rien à voir avec le full object ... j'ai quand même précisé typage fort pour le dissocier de l'ensemble de vision du full object, mais les langages comme Java, ou C# ont une écriture supérieure je trouve.
Un exemple aussi de méthodes sur un type, c'est le push. En javascript je n'écris que Array.push() je trouve ça très instinctif. En PHP on a array_push(Array, Item), et franchement, j'écris du coup $array[] = , que je trouve moins adapté même si il rempli la même fonction. le Push est plus explicite mais trop long pour PHP.
Bref, ce sont mes préférences, à mon goût je trouve l'écriture Java du peu que je connais presque parfait (en fait, c'est la partie C++ que j'adore) -- en gros :

String x = '';
Int y = 0;
Response.write(y.toString());

Grosso modo, c'est vraiment ce que j'adore, on a un typage fort, une façon d'écrire très belle, des objets pour tout (Objet de réponse), des méthode de type toString() etc (qui existe pour le coup en PHP pour les objets), et je ne l'ai pas utilisé ici pour Response.write() mais du polymorphisme dont le polymorphisme paramétrique pour cette dernière méthode. PHP le permet avec + ou - de codes en plus. Et j'aime aussi les exceptions alors qu'on a des erreurs plus compliquées à attraper en PHP. J'aime aussi la discipline qu'impose le typage des fonctions (renvoyer une chaine de caractère ou false n'est pas très logique).
Tu as tout à fait le droit d'aimer l'objet ou les syntaxes de Java, comme j'ai tout à fait le droit de te dire que je trouve hérétique de penser qu'un langage full-object peut-être compétitif avec un langage procédural comme le php ou on peut aussi faire de l'objet la raison étant que le coup de temps d'exécution de la machine virtuelle est multiplié par 100 dans un langage comme Java ou Dotnet, et que cette machine virtuelle (qui n'est pas opensource d'ailleurs) de part la complexité de ce qu'elle fait, et l'effort relativement infructueux de s'exécuter correctement sur plusieurs os différents ne peut pas avoir le niveau de fiabilité des autres langages (le C notamment, et le PHP qui est plus que fortement influencé par le C), ce n'est que mon avis, j'ai fait du php, du c, du java, dotnet est trop récent et trop loin de mon monde pour que j'ai eu envie de le tester mais je le crois copié sur java (procès pour plagiat à l'époque d'ailleurs) que tu me crois ou pas n'a pas vraiment d'importance en soi, mais au moins documentes toi regardes si à tout hasard il n'y aurais pas des choses sensées dans ce que je dis.
Par contre, Java c'est une machine aussi très complexe, avec de l'évenementiel, des threads, et il m'a toujours fait peur ... Je me vois mal aller faire un site web avec.
Il est clair que là le gros avantage de PHP c'est son omniprésence sur les plateformes d'hébergement et sa rapidité d'exécution. Cependant, avec les caches d'OPCode ont se rapproche de la compilation plutot que de l'interprétation et peut-être qu'un jour, tout comme C#, les pages resteront ouvertes plusieurs heures et boufferont bcp de RAM ;) Mais là, je ne sais carrément plus de quoi je parle ^^
Mais si j'avais eu des cours en Java, peut-être que j'aurais abandonné PHP. Je suis ouvert !
un langage interprété reste un langage interprété, l'opcode c'est juste une forme transitoire de bytecode, comme ce qu'on peut avoir quand on "compile" un fichier python, c'est une caractéristique universelle des langages interprétés, les langages compilés font des binaires, du langage machine ce sont deux choses très différentes, les langages compilés sont systématiquement plus rapides que les langages interprétés à qualité et fonction égale, les langages interprétés existent parce qu'ils permettent de faire du code plus rapidement et plus facilement, pas pour être plus rapide, ils existent pour des questions de productivité pas de qualité, dans un monde ou on ne jurerait que par la qualité du résultat, les sites webs seraient fait en assembleur (un an de développement par page) je ne renie pas les langages interprétés mais il ne faut pas se tromper sur les raisons de leur existence.

D'ailleurs l'existence de Java est une histoire qui m'a toujours fasciné, Java est un langage qui a été crée par Sun dans le but premier d'être utilisé sur les appliances quand tous le monde ne jurait que par la domotique (le pilotage informatique de tous les objets du quotidien), suite à la non explosion de la domotique Sun a recyclé son langage pour en faire un des outils du Web, principalement les applets client side, ça coïncidait grosso modo avec l'explosion du web fin des années 90 début 2000, mais le Java est vite devenu has been, alors sun a recyclé son langage pour en faire un langage de développement de client lourd, puis un langage de web server side, avec les serveurs d'application, bref tout ça pour expliquer que Java n'a jamais trouvé sa place dans l'écosystème de l'informatique, il n'a jamais été le langage le plus utilisé dans un domaine particulier, je n'ai pas d'animosité particulière contre Java, j'aime les technologies parce qu'elles ont toutes quelque chose à apporter, mais quand on me demande de faire un choix technique je ne peux jamais répondre Java parce que la seule raison de répondre Java c'est si on a des développeurs qui ne connaissent que ça...
Fait du php depuis que ca existe ou presque :)

devlop78
Invité n'ayant pas de compte PHPfrance

05 juil. 2011, 01:18

Ok, j'ai lu ta réponse.

Je me désabonne du sujet, je ne voulais pas de débat, juste une parenthèse, et je l'ai fait.

Eléphant du PHP | 209 Messages

07 juil. 2011, 07:30

l'array dereferencing
Alléluia !

<mode troll:on>
10 000 fois plus utile que les traits :-)
</mode troll>
--
Eric

Eléphant du PHP | 209 Messages

07 juil. 2011, 07:35

un code qui contient des séquence de plus de 3 (idéalement 2) boucles imbriquées c'est un code raté,
Je suis très curieux de voir ca, sur par exemple : http://fr.wikipedia.org/wiki/Algorithme_de_Dijkstra

C'est sûr que sur les sites web, il y a très peu d'algorithmie complexe, mais lorsque ca arrive, poser une limitation sur l'imbrication ne me parait pas être une très bonne idée.

Donc que localement on puisse se dire : "tiens il y a trop d'imbrication" me parait une bonne chose, mais par contre en faire une règle d'airain me parait particulièrement dangereux ...
Modifié en dernier par epommate2 le 07 juil. 2011, 08:17, modifié 1 fois.
--
Eric

ViPHP
xTG
ViPHP | 7331 Messages

07 juil. 2011, 08:12

Il existe des tonnes d'algorithmes qui utilisent plus de 3 boucles imbriqués et qui sont l'excellence dans leur domaine. :o
Faut pas se cantonner à votre vision de développeur web où il est clair que c'est rare qu'on fasse tourner un algorithme aussi compliqué.

ViPHP
ViPHP | 3300 Messages

07 juil. 2011, 11:46

un code qui contient des séquence de plus de 3 (idéalement 2) boucles imbriquées c'est un code raté,
Je suis très curieux de voir ca, sur par exemple : http://fr.wikipedia.org/wiki/Algorithme_de_Dijkstra

C'est sûr que sur les sites web, il y a très peu d'algorithmie complexe, mais lorsque ca arrive, poser une limitation sur l'imbrication ne me parait pas être une très bonne idée.

Donc que localement on puisse se dire : "tiens il y a trop d'imbrication" me parait une bonne chose, mais par contre en faire une règle d'airain me parait particulièrement dangereux ...
c'est une limitation à s'imposer, après si y'a des exceptions il faut qu'elles soient vraiment valables, mais dans la majeur partie des cas dans du code web, on a pas besoin de plus d'imbrication que 2 ou 3 si tu peux me montrer un code web qui justifie plus d'imbrication ca sera plus parlant que des algo de théorie de graph ou d'exploration de réseau neuronaux :)
Fait du php depuis que ca existe ou presque :)

Eléphant du PHP | 209 Messages

07 juil. 2011, 12:32

si tu peux me montrer un code web qui justifie plus d'imbrication ca sera plus parlant que des algo de théorie de graph
J'ai droit au code des frameworks ? :-)
--
Eric

ViPHP
ViPHP | 3300 Messages

07 juil. 2011, 17:54

si tu peux me montrer un code web qui justifie plus d'imbrication ca sera plus parlant que des algo de théorie de graph
J'ai droit au code des frameworks ? :-)
tu as le droit à tout, mais faut que ça soit justifié, moi si j'avais un algo de ce genre à implémenter dans un truc en php je me pencherais sérieusement sur l'élaboration d'un module php perso codé en C d'ailleurs :)
Fait du php depuis que ca existe ou presque :)

ViPHP
ViPHP | 5462 Messages

08 juil. 2011, 15:31

Enfin un nouveau site pour php.net ?

http://prototype.php.net/

Mammouth du PHP | 19672 Messages

08 juil. 2011, 15:35

Enfin un nouveau site pour php.net ?

http://prototype.php.net/
Joli ça :)
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
ViPHP | 5462 Messages

08 juil. 2011, 15:43

au passage ils passent enfin en version 5.3 pour le site (et HTML5) :D

Mammouth du PHP | 19672 Messages

08 juil. 2011, 16:05

au passage ils passent enfin en version 5.3 pour le site (et HTML5) :D
C'est presque surprenant, tu as jamais entendu des histoires de cordonniers mal chaussés ? :langue:
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
ViPHP | 3300 Messages

08 juil. 2011, 17:20

Enfin un nouveau site pour php.net ?

http://prototype.php.net/
trop laid :(
Fait du php depuis que ca existe ou presque :)

Mammouth du PHP | 19672 Messages

08 juil. 2011, 18:06

Enfin un nouveau site pour php.net ?

http://prototype.php.net/
trop laid :(
Ça t'arrive d'être content de quelque chose ? :evil:
Un coup c'est une nouveauté dans le langage, une autre fois c'est un framework, maintenant ça : ça commence à bien faire là ! Si t'est pas heureux, prends des vacances et lâche-nous un peu, ça devient vraiment pénible.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: