Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
665 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  CL4$H ~ ## MagicBuzz VS Masklinn ##

 


 Mot :   Pseudo :  
 
 Page :   1  2  3  4  5  6
Page Précédente
Auteur Sujet :

CL4$H ~ ## MagicBuzz VS Masklinn ##

n°1556197
Zorro561
Posté le 06-05-2007 à 21:50:04  profilanswer
 

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
mood
Publicité
Posté le 06-05-2007 à 21:50:04  profilanswer
 

n°1556322
skeye
Posté le 07-05-2007 à 09:23:19  profilanswer
 

apprends la poo tout court, pas la poo en php.


---------------
Can't buy what I want because it's free -
n°1556530
Shinuza
This is unexecpected
Posté le 07-05-2007 à 15:36:18  profilanswer
 

skeye a écrit :

apprends la poo tout court, pas la poo en php.


 :jap:  
 
J'ai cliqué sur ce topic en pensant à écrire la même chose


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1556669
Zorro561
Posté le 07-05-2007 à 19:05:34  profilanswer
 

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.

n°1556670
skeye
Posté le 07-05-2007 à 19:07:33  profilanswer
 

c'est crétin.


---------------
Can't buy what I want because it's free -
n°1556674
RiderCrazy
Posté le 07-05-2007 à 19:13:54  profilanswer
 

En pseudo-langage c'est mieux :o

n°1556676
masklinn
í dag viðrar vel til loftárása
Posté le 07-05-2007 à 19:14:54  profilanswer
 

RiderCrazy a écrit :

En pseudo-langage c'est mieux :o


Non, mais avec un vrai langage (et pas un langage en carton-pâte) oui par contre :o


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1556685
Zorro561
Posté le 07-05-2007 à 19:49:39  profilanswer
 

Je ne vous ai pas demandé de me dire si c'est crétin ou pas. Je veux juste apprendre à coder PHP en oo.

n°1556689
RiderCrazy
Posté le 07-05-2007 à 20:00:27  profilanswer
 

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...

n°1556736
weed
Posté le 08-05-2007 à 00:12:47  profilanswer
 

Et pourquoi donc des mauvaises habitues ?  
 
Peux tu donner des exemples qui feraient que l'on prendrait des mauvaises habitudes ? Peux tu developper ?  
Merci

mood
Publicité
Posté le 08-05-2007 à 00:12:47  profilanswer
 

n°1556738
masklinn
í dag viðrar vel til loftárása
Posté le 08-05-2007 à 00:28:20  profilanswer
 

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 ?
Merci


  • Le PHP est un mauvais langage en général
  • L'implémentation de la POO en PHP est une version batârde de la POO Java. La POO Java est déjà une implémentation très spécifique de la POO, et elle est pensée dans le cadre d'un langage fortement et statiquement typé (et inspirée de la POO C++), son rétrofitting dans un langage faiblement et dynamiquement typé, et plein de trous, donne un mélange plus bizarre qu'autre chose, et franchement crade
  • Et en bonus il y a moultes conneries et stupidités dans l'implémentation en plus des bizarreries de la POO "selon Java"
  • Enfin la grande majorité du langage n'est pas implémenté dans un cadre OO, donc on se tape de gros tas de procédural au milieu de ses objets


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.


Message édité par masklinn le 08-05-2007 à 00:30:49

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1556755
dwogsi
Défaillance cérébrale...
Posté le 08-05-2007 à 03:55:27  profilanswer
 

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.

Message cité 1 fois
Message édité par dwogsi le 08-05-2007 à 04:00:33

---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1556851
masklinn
í dag viðrar vel til loftárása
Posté le 08-05-2007 à 14:05:54  profilanswer
 

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


Smalltalk est probablement le meilleur, mais il est un peu difficile de se lancer dedans, donc je conseillerais de regarder Ruby ou Python ;)


Message édité par masklinn le 08-05-2007 à 14:07:39

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1556866
supermofo
Hello World !
Posté le 08-05-2007 à 14:45:29  profilanswer
 

+1 Python mais trop lent

Message cité 1 fois
Message édité par supermofo le 08-05-2007 à 16:15:12

---------------
Echange de 3000+ liens PR 3 -> 5, me pm urgent !
n°1556942
Shinuza
This is unexecpected
Posté le 08-05-2007 à 19:00:24  profilanswer
 

On a parlé d'apprendre pas de comparer qui à la plus grosse.


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1556954
Zorro561
Posté le 08-05-2007 à 19:14:49  profilanswer
 

Exactement, je profite de ce rappel pour réitérer ma question.

n°1556965
masklinn
í dag viðrar vel til loftárása
Posté le 08-05-2007 à 19:37:14  profilanswer
 

supermofo a écrit :

+1 Python mais trop lent


Python est largement suffisament rapide pour environ 95% des cas d'utilisation du langage [:petrus75]
 
Et pour le reste, il y a Erlang \o/


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1556971
Shinuza
This is unexecpected
Posté le 08-05-2007 à 19:56:26  profilanswer
 

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  [:pingouino]


Message édité par Shinuza le 08-05-2007 à 19:59:14

---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1557235
Zorro561
Posté le 09-05-2007 à 10:55:33  profilanswer
 

Ouais, j'avais entendu parler des améliorations à ce niveau liées à l'apparition de PHP5.

n°1557238
Shinuza
This is unexecpected
Posté le 09-05-2007 à 10:59:06  profilanswer
 

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 »


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1557240
skeye
Posté le 09-05-2007 à 11:02:25  profilanswer
 

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.:o


---------------
Can't buy what I want because it's free -
n°1557245
Shinuza
This is unexecpected
Posté le 09-05-2007 à 11:06:03  profilanswer
 

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.


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1557249
supermofo
Hello World !
Posté le 09-05-2007 à 11:10:04  profilanswer
 

Ah ouais j avoue ca c mortel


---------------
Echange de 3000+ liens PR 3 -> 5, me pm urgent !
n°1557289
skeye
Posté le 09-05-2007 à 12:07:26  profilanswer
 

Shinuza a écrit :

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.


C'est vrai. M'enfin les modifs à faire restent minimes en général...


---------------
Can't buy what I want because it's free -
n°1557290
Shinuza
This is unexecpected
Posté le 09-05-2007 à 12:10:11  profilanswer
 

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/


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1557291
skeye
Posté le 09-05-2007 à 12:11:51  profilanswer
 

Shinuza a écrit :

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/


Tu veux quoi, des tableaux associatifs avec seulement des entiers comme clé?[:pingouino]
Du typage ok, mais pas supprimer ce genre de trucs super pratique...:o


---------------
Can't buy what I want because it's free -
n°1557295
Shinuza
This is unexecpected
Posté le 09-05-2007 à 12:17:24  profilanswer
 

Non non :

 
Code :
  1. $t = array("proot"=>"test" );
  2. echo $t[proot];
 


Devrait à mon sens generer plus qu'une simple notice. Ca doit être le seul language qui laisse passer ça.  [:pingouino]  [:pingouino]  [:pingouino]

 

JS et AS te pètent à la gueule
Ruby aussi

Message cité 3 fois
Message édité par Shinuza le 09-05-2007 à 12:26:55

---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1557307
skeye
Posté le 09-05-2007 à 12:46:02  profilanswer
 

Shinuza a écrit :

Non non :
 

Code :
  1. $t = array("proot"=>"test" );
  2. echo $t[proot];


 
 
Devrait à mon sens generer plus qu'une simple notice. Ca doit être le seul language qui laisse passer ça.  [:pingouino]  [:pingouino]  [:pingouino]  
 
JS et AS te pètent à la gueule
Ruby aussi


 
Ah. Je savais même pas qu'on pouvait faire ça.[:pingouino]


---------------
Can't buy what I want because it's free -
n°1557310
masklinn
í dag viðrar vel til loftárása
Posté le 09-05-2007 à 12:49:39  profilanswer
 

Shinuza a écrit :

Non non :
 

Code :
  1. $t = array("proot"=>"test" );
  2. echo $t[proot];


 
 
Devrait à mon sens generer plus qu'une simple notice. Ca doit être le seul language qui laisse passer ça.  [:pingouino]  [:pingouino]  [:pingouino]  
 
JS et AS te pètent à la gueule
Ruby aussi


Heuuu attends, c'est quoi cette chose infâme, ça écrit quand même pas "test" si? [:totoz]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1557331
Shinuza
This is unexecpected
Posté le 09-05-2007 à 13:39:07  profilanswer
 

skeye a écrit :

Ah. Je savais même pas qu'on pouvait faire ça.[:pingouino]


 
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? [:totoz]


 
Si bien sur, c'est php hein  [:shinuza]  
 
Allez, c'est ma tournée :
 

Code :
  1. $mail_subject = "Confirmation d'inscription Football Club Challenge";
  2.    //Headers
  3.    $prenom = $_POST[prenom];
  4.    $nom = $_POST[nom];
  5.    $club = array('', 'Bordeaux','Lyon','Marseille','Paris');
  6.    $club = $club[$_GET[club]];
  7.    $sql = "SELECT * FROM `calendrier` WHERE id_calendrier ='".$_POST[id_calendrier]."'";
  8.    $req = mysql_query($sql);
  9.    $dataCal = mysql_fetch_array($req);
  10.    $lieu = $dataCal[lieu];
  11.    $date= $dataCal[date];


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1557332
masklinn
í dag viðrar vel til loftárása
Posté le 09-05-2007 à 13:41:57  profilanswer
 

Shinuza a écrit :

T'as peut être la chance de bosser avec des gens qui codent proprement

  

Si bien sur, c'est php hein  [:shinuza]

 

Allez, c'est ma tournée :

 
Code :
  1. $mail_subject = "Confirmation d'inscription Football Club Challenge";
  2.    //Headers
  3.    $prenom = $_POST[prenom];
  4.    $nom = $_POST[nom];
  5.    $club = array('', 'Bordeaux','Lyon','Marseille','Paris');
  6.    $club = $club[$_GET[club]];
  7.    $sql = "SELECT * FROM `calendrier` WHERE id_calendrier ='".$_POST[id_calendrier]."'";
  8.    $req = mysql_query($sql);
  9.    $dataCal = mysql_fetch_array($req);
  10.    $lieu = $dataCal[lieu];
  11.    $date= $dataCal[date];



http://b.masklinn.net/do_not_want_1.jpg

 

(les lignes 6 et 7 sont tout spécialement génialissimes)


Message édité par masklinn le 17-01-2009 à 10:24:10

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1557338
skeye
Posté le 09-05-2007 à 13:50:28  profilanswer
 

Shinuza a écrit :


Code :
  1. $mail_subject = "Confirmation d'inscription Football Club Challenge";
  2.    //Headers
  3.    $prenom = $_POST[prenom];
  4.    $nom = $_POST[nom];
  5.    $club = array('', 'Bordeaux','Lyon','Marseille','Paris');
  6.    $club = $club[$_GET[club]];
  7.    $sql = "SELECT * FROM `calendrier` WHERE id_calendrier ='".$_POST[id_calendrier]."'";
  8.    $req = mysql_query($sql);
  9.    $dataCal = mysql_fetch_array($req);
  10.    $lieu = $dataCal[lieu];
  11.    $date= $dataCal[date];



[:hahaguy][:hahaguy][:hahaguy][:hahaguy][:hahaguy][:hahaguy][:hahaguy][:hahaguy][:hahaguy]


---------------
Can't buy what I want because it's free -
n°1557345
Shinuza
This is unexecpected
Posté le 09-05-2007 à 14:00:21  profilanswer
 

J'ai développé une immunité contre ces trucs  [:pingouino]  
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 [:cosmoschtroumpf] ) 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'  
in script.php on line x


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1557360
skeye
Posté le 09-05-2007 à 14:23:50  profilanswer
 

Shinuza a écrit :

Citation :

assumed 'proot'



lolilol.[:roane]


---------------
Can't buy what I want because it's free -
n°1557846
totoffe38
Posté le 10-05-2007 à 11:22:37  profilanswer
 

Shinuza a écrit :

Non non :
 

Code :
  1. $t = array("proot"=>"test" );
  2. echo $t[proot];


 
 
Devrait à mon sens generer plus qu'une simple notice. Ca doit être le seul language qui laisse passer ça.  [:pingouino]  [:pingouino]  [:pingouino]  


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?

n°1557853
skeye
Posté le 10-05-2007 à 11:28:28  profilanswer
 

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.:o


Message édité par skeye le 10-05-2007 à 11:31:02

---------------
Can't buy what I want because it's free -
n°1557860
MagicBuzz
Posté le 10-05-2007 à 11:30:22  profilanswer
 

à 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.

n°1557866
totoffe38
Posté le 10-05-2007 à 11:34:53  profilanswer
 

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...  :whistle:  
 
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.

Message cité 1 fois
Message édité par totoffe38 le 10-05-2007 à 11:37:02
n°1557868
Shinuza
This is unexecpected
Posté le 10-05-2007 à 11:36:28  profilanswer
 

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 :
  1. $t = array("proot"=>"test" );
  2.    echo $t['proot'];
 

Edit :HYPER BURNED [:mouais]

 
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...  :whistle:

 

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 [:mouais]²²²²²²²²²²²²²²

 

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. [:spamafote]


Message édité par Shinuza le 10-05-2007 à 11:40:15

---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1557871
totoffe38
Posté le 10-05-2007 à 11:38:46  profilanswer
 

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.

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  6
Page Précédente

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  CL4$H ~ ## MagicBuzz VS Masklinn ##

 

Sujets relatifs
blabla@fonctionnel : Taiche ne sert à rienun grand merci à Masklinn !! pb float
[C#] MagicBuzz qui se remet au .NET, ça va être bô tiens ![Resolu (Merci MagicBuzz)] Problème pour lire un flux de byte en C#
La vie très intéressante de MagicBuzz[Considérations d'ordre générales] Où est passé Magicbuzz
Plus de sujets relatifs à : CL4$H ~ ## MagicBuzz VS Masklinn ##


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR