CL4$H ~ ## MagicBuzz VS Masklinn ## - PHP - Programmation
Marsh Posté le 07-05-2007 à 09:23:19
apprends la poo tout court, pas la poo en php.
Marsh Posté le 07-05-2007 à 15:36:18
skeye a écrit : apprends la poo tout court, pas la poo en php. |
J'ai cliqué sur ce topic en pensant à écrire la même chose
Marsh Posté le 07-05-2007 à 19:05:34
Bah oui mais ça doit différer au niveau de certains trucs. Je me doute bien qu'il y a un concept machin vision de la chose différente, mais je veux coder en PHP.
Marsh Posté le 07-05-2007 à 19:07:33
c'est crétin.
Marsh Posté le 07-05-2007 à 19:14:54
RiderCrazy a écrit : En pseudo-langage c'est mieux |
Non, mais avec un vrai langage (et pas un langage en carton-pâte) oui par contre
Marsh Posté le 07-05-2007 à 19:49:39
Je ne vous ai pas demandé de me dire si c'est crétin ou pas. Je veux juste apprendre à coder PHP en oo.
Marsh Posté le 07-05-2007 à 20:00:27
Zorro561 a écrit : Je ne vous ai pas demandé de me dire si c'est crétin ou pas. Je veux juste apprendre à coder PHP en oo. |
Et t'as besoin de notre autorisation ?
Ne restreint pas ta recherche au php, étend aux concepts de la POO et après t'appliqueras au php. Si c'est pour le plaisir de faire de l'objet en php, oublies, ça te donneras que des mauvaises habitudes...
Marsh Posté le 08-05-2007 à 00:12:47
Et pourquoi donc des mauvaises habitues ?
Peux tu donner des exemples qui feraient que l'on prendrait des mauvaises habitudes ? Peux tu developper ?
Merci
Marsh Posté le 08-05-2007 à 00:28:20
weed a écrit : Et pourquoi donc des mauvaises habitues ? Peux tu donner des exemples qui feraient que l'on prendrait des mauvaises habitudes ? Peux tu developper ? |
Il y a nombre de langages avec une implémentation de la POO plus simple, plus régulière, plus adaptée (au langage), intégrée au coeur du langage et beaucoup plus flexible.
Marsh Posté le 08-05-2007 à 03:55:27
D'accord pour dire que PHP est bien le pire des exemples, et à plus forte raison PHP4. Mais Java...? Qu'est ce qui ne va pas?
masklinn a écrit : Il y a nombre de langages avec une implémentation de la POO plus simple, plus régulière, plus adaptée (au langage), intégrée au coeur du langage et beaucoup plus flexible. |
Exemple?
Edit : Je précise, message écrit sans aucune prétention, juste envie d'en savoir un peu plus.
Marsh Posté le 08-05-2007 à 14:05:54
dwogsi a écrit : D'accord pour dire que PHP est bien le pire des exemples, et à plus forte raison PHP4. Mais Java...? Qu'est ce qui ne va pas? |
Je n'ai pas dit que la POO Java était mauvaise, j'ai dit qu'elle était très spécifique
Après dans les problèmes que j'ai avec elle, on peut citer l'absence de mixins, l'absence de metaobjects/metaprogramming (et la difficulté de faire le peu qu'on peut faire à ce niveau), la dichotomie entre les capacités des objets natifs et ceux des objets créés par l'utilisateur (operator overloading), l'absence de dispatch sur les valeurs de retour, le fait que tout en java ne soit pas un objet, ...
edit: le fait d'avoir regroupé la création et l'initialisation des objets en une opération unique (la construction), aussi
dwogsi a écrit :
|
Smalltalk est probablement le meilleur, mais il est un peu difficile de se lancer dedans, donc je conseillerais de regarder Ruby ou Python
Marsh Posté le 08-05-2007 à 14:45:29
+1 Python mais trop lent
Marsh Posté le 08-05-2007 à 19:00:24
On a parlé d'apprendre pas de comparer qui à la plus grosse.
Marsh Posté le 08-05-2007 à 19:14:49
ReplyMarsh Posté le 08-05-2007 à 19:37:14
supermofo a écrit : +1 Python mais trop lent |
Python est largement suffisament rapide pour environ 95% des cas d'utilisation du langage
Et pour le reste, il y a Erlang \o/
Marsh Posté le 08-05-2007 à 19:56:26
Zorro561 a écrit : Exactement, je profite de ce rappel pour réitérer ma question. |
Le mieux que tu puisses faire c'est d'acheter un livre, maintenant un bon livre pour php j'en connais pas. Ca doit exister en Anglais mais j'ai pas de référence à te donner.
Autre chose, oublie la POO en php4, c'est une perte de temps, quand à celle de php5 c'est légerement mieux quoi que bacler quand on voit l'implantation de try
Marsh Posté le 09-05-2007 à 10:55:33
Ouais, j'avais entendu parler des améliorations à ce niveau liées à l'apparition de PHP5.
Marsh Posté le 09-05-2007 à 10:59:06
S'toujours pas ça. On verra avec php6, si ils se décident enfin à virer les fonctions redondantes et toutes les merdes qui composent ce « fabuleux » « langage »
Marsh Posté le 09-05-2007 à 11:02:25
Shinuza a écrit : S'toujours pas ça. On verra avec php6, si ils se décident enfin à virer les fonctions redondantes et toutes les merdes qui composent ce « fabuleux » « langage » |
Ils ne casseront jamais la compatibilité avec le code existant.
Marsh Posté le 09-05-2007 à 11:06:03
Ouais je sais bien
Néanmoins, y'a des trucs qui diffèrent entre php 4 et 5, comme par exemple le passage par référence. Qui peut faire foirer ton script le cas échéant.
Marsh Posté le 09-05-2007 à 11:10:04
Ah ouais j avoue ca c mortel
Marsh Posté le 09-05-2007 à 12:07:26
Shinuza a écrit : Ouais je sais bien |
C'est vrai. M'enfin les modifs à faire restent minimes en général...
Marsh Posté le 09-05-2007 à 12:10:11
Bon déja a mort les magic daubes et les registers globals \o/
J'aimerais bien que $t[string] te pète à la gueule aussi \o/, mais je rève _o/
Marsh Posté le 09-05-2007 à 12:11:51
Shinuza a écrit : Bon déja a mort les magic daubes et les registers globals \o/ |
Tu veux quoi, des tableaux associatifs avec seulement des entiers comme clé?
Du typage ok, mais pas supprimer ce genre de trucs super pratique...
Marsh Posté le 09-05-2007 à 12:17:24
Non non :
Code :
|
Devrait à mon sens generer plus qu'une simple notice. Ca doit être le seul language qui laisse passer ça.
JS et AS te pètent à la gueule
Ruby aussi
Marsh Posté le 09-05-2007 à 12:46:02
Shinuza a écrit : Non non :
|
Ah. Je savais même pas qu'on pouvait faire ça.
Marsh Posté le 09-05-2007 à 12:49:39
Shinuza a écrit : Non non :
|
Heuuu attends, c'est quoi cette chose infâme, ça écrit quand même pas "test" si?
Marsh Posté le 09-05-2007 à 13:39:07
skeye a écrit : Ah. Je savais même pas qu'on pouvait faire ça. |
T'as peut être la chance de bosser avec des gens qui codent proprement
masklinn a écrit : Heuuu attends, c'est quoi cette chose infâme, ça écrit quand même pas "test" si? |
Si bien sur, c'est php hein
Allez, c'est ma tournée :
Code :
|
Marsh Posté le 09-05-2007 à 13:41:57
Shinuza a écrit : T'as peut être la chance de bosser avec des gens qui codent proprement Si bien sur, c'est php hein Allez, c'est ma tournée :
|
(les lignes 6 et 7 sont tout spécialement génialissimes)
Marsh Posté le 09-05-2007 à 13:50:28
Shinuza a écrit :
|
Marsh Posté le 09-05-2007 à 14:00:21
J'ai développé une immunité contre ces trucs
Je relève pas la protection des données (genre un controle du type de $_POST['id_calendrier'], ou encore une requête utilisant la classe mise à dispo qui gère les requêtes préparées ) ni la superbe séparation des couches (ouais j'ai pas posté le html autour).
Tiens d'ailleurs la notice c'est ça :
Citation : Notice: Use of undefined constant proot - assumed 'proot' |
Marsh Posté le 09-05-2007 à 14:23:50
Shinuza a écrit :
|
lolilol.
Marsh Posté le 10-05-2007 à 11:22:37
Shinuza a écrit : Non non :
|
A titre d'information personnelle (j'apprends php), qu'est-ce qui vous dérange avec ce bout de code? Qu'elle devrait être la "bonne" syntaxe?
Marsh Posté le 10-05-2007 à 11:28:28
totoffe38 a écrit : A titre d'information personnelle (j'apprends php), qu'est-ce qui vous dérange avec ce bout de code? Qu'elle devrait être la "bonne" syntaxe? |
echo $t["proot"];
proot sans guillemets ni rien, ça n'existe pas. Le langage devrait t'envoyer promener.
Marsh Posté le 10-05-2007 à 11:30:22
à la limite, déjà, echo $t["proot"]; est infiniment plus correct.
t'as pas à utiliser une constante qui n'est pas déclarée, et que l'interpréteur décide d'intiaaliser avec son nom...
c'est d'un gore extrêment.
ensuite, pour la déclaration clé/valeur, c'est juste un problème de syntaxe, perso je ne vois pas d'inconvénient majeur à cette syntaxe.
Marsh Posté le 10-05-2007 à 11:34:53
ha oui, j'avais remarqué qu'il manquait des trucs. C'est pas plutôt des single quotes d'ailleurs ou les deux marchent?
echo $t['proot']
EDIT: j'ai essayé echo $t['proot'], echo $t["proot"], echo $t[proot] et bien les 3 solutions fonctionnent...
C'est vrai que c'est dommage que php "autorise" certaines erreurs, y'a plus de standard de programmation, et ça devient vite la pagaille. Mais ça permet au débutant de pouvoir pisser rapidement du code.
Marsh Posté le 10-05-2007 à 11:36:28
Le fait que $t soit un tableau assiociatif et que l'entrée "proot" soit accédée sans utiliser de quotes ou double quotes (ce qui désigne une string).
Code : |
Edit :HYPER BURNED
totoffe38 a écrit : ha oui, j'avais remarqué qu'il manquait des trucs. C'est pas plutôt des single quotes d'ailleurs ou les deux marchent? echo $t['proot'] EDIT: j'ai essayé echo $t['proot'], echo $t["proot"], echo $t[proot] et bien les 3 solutions fonctionnent... C'est vrai que c'est dommage que php "autorise" certaines erreurs, y'a plus de standard de programmation, et ça devient vite la pagaille. Mais ça permet au débutant de pouvoir pisser rapidement du code. |
La dernière est fausse et merdique, et autoriser le débutant à "pisser" du code ne devrait pas être une excuse pour fournir une plateforme de merde ²²²²²²²²²²²²²²
Je vois pas comment t'apprends quand on te dis pas "mon vieux, ce que tu fais c'est à chier", si on t'applaudis toujours dans ta connerie du fini par faire n'importe quoi.
Marsh Posté le 10-05-2007 à 11:38:46
Pour en revenir au sujet initial: la POO en PHP, il y a ça:
http://www.amazon.com/Object-Orien [...] 875&sr=8-1
Après je ne sais pas ce que ça vaut.
Marsh Posté le 06-05-2007 à 21:50:04
Salut à tous !
J'ai envie d'améliorer mon niveau en PHP. Pour cela je code des modules (genre espace membre, ...) afin de progresser et d'être confronté au max de problèmes possible.
Je vais bientôt pouvoir bosser en local sur mon serveur avec SSHFS (génial ce truc), et à ce moment j'essaierai de me mettre à la POO. Il paraît que c'est super intéressant et que ça change votre façon de voir les choses...
J'aimerais donc des adresses de site qui apprennent la POO (ou tout du moins des bonnes bases, que je completerai après avec des sites un peu plus austères genre le site officiel...).
J'ai un lien (http://www.siteduzero.com/tuto-3-1678-0-la-programmation-orientee-objet-en-php.html) mais je me demande s'il est vraiment de qualité...
J'aimerais aussi une bonne explication sur les différences POO de PHP4 à PHP5 (paraît que c'était un concept dans PHP4...) pour ma culture et les avantages/inconvénients.
Merci de vos réponses.
Bonne soirée à tous !
Message édité par Zorro561 le 13-05-2007 à 12:29:36