Précédent   Forum des professionnels en informatique > PHP > Langage > Débuter
Débuter Forum d'entraide pour débuter en PHP. Avant de poster -> Cours PHP, FAQ PHP, Outils PHP, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/01/2012, 20h46   #1
Invité de passage
 
Inscription : janvier 2007
Messages : 15
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : janvier 2007
Messages : 15
Points : 1
Points : 1
Par défaut a quoi servent les class ?

Bonjour à tous !!

Je me décide a poster un message afin d'avoir quelques petits éclaircissements au sujet des class php.

ca fait quelques jours que je me renseigne sur cette facon de coder, je lis partout les facons de faire, les exemples et tout ça, mais je ne vois toujours pas en quoi ca pourra changer ma facon de voir le codage !

j'ai bien compris comemtn on creait des class, la n'est pas le souci.
mon probleme, c'est de savoir quand les utiliser...

j'ai bien trouver une class pour securiser les insertions bdd, ou une autre pour l'envoi de mail, ca ok, je comprends, et j'avoue que le code est plus clair.

mais la ou ca peche dans ma tete, c'est quand j'utilise les requetes avec une bdd.

Je m'explique.
je construis un site actuellement, ou j'ai un compte client, et des sondages.

je me dis que je pourrai creer des class pour les compte client, et pour le sondage.
mais je ne vois pas ce que changerai le fait de faire ma requete, et de boucler, ou de faire une requete et de boucler sur des class...

quel est pour moi l'interet (a part, c sure la clarté du code...) ?
habituellement, je fonctionne pas mal avec les fonctions...

Si vous pouvez m'eclairer ca m'avancerai beaucoup !
merci beaucoup d'avance !!
diice est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2012, 22h14   #2
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Même si je n'ai jamais codé en objet, je suis convaincu de l'intéret (et vais bientôt creuser la question) ; les mots-clé sont pour moi : réutilisabilité et maintenabilité.
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2012, 23h20   #3
Membre Expert
 
Avatar de Doksuri
 
Tiger Scott
Développeur Web
Inscription : juin 2006
Messages : 1 249
Détails du profil
Informations personnelles :
Nom : Tiger Scott
Âge : 42

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juin 2006
Messages : 1 249
Points : 1 510
Points : 1 510
les premiers arguments qui me viennent a l'esprit :

- securite : c'est quoi qui gere les attributs de ta classe (public, private, protected) et les methodes
=> tu fais tes getters/setters (comme ca t'es sur que l'attribut recoit bien le bon type de donnees, et la renvoie bien)

- lisibilite du code : c'est sur qu'au debut, c'est un peut complique a s'y retrouver, mais apres c'est tellement plus rapide/facile

- maintenabilite du code (comme dit plus haut) : autant pour toi que pour ceux qui reprendront ton code dans le futur.
par exemple, si t'as bien code la classe "client", le developpeur suivant, sans meme savoir comment t'as fait fera : $client->getName(); et hop, il aura le nom (c'est un exemple bien sur)

- la rapidite : une fois tes classes crees, c'est du gateau (cf exemple au dessus)

voila les principaux qui me passent par la tete...
apres, pour l'interet, ca se verra surtout avec les mvc (model vue controller)
si c'est pour un site vitrine, c'est peut etre pas la peine
__________________
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

N'oubliez pas le Le tag resolu.

Need_!
Doksuri est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2012, 23h31   #4
Invité de passage
 
Inscription : janvier 2007
Messages : 15
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : janvier 2007
Messages : 15
Points : 1
Points : 1
Citation:
Envoyé par laurentSc Voir le message
Même si je n'ai jamais codé en objet, je suis convaincu de l'intéret (et vais bientôt creuser la question) ; les mots-clé sont pour moi : réutilisabilité et maintenabilité.
Effectivement c 2 mots la me parlent tout de suite !!!
Comme le rajoute aussi Doksuri, effectivement, comme ça ca parait un peu flou, mais je pense que c'est en utilisant que je me rendrai vraiment compte !
mais dejà, betement, j'y vois un pue plus clair...
meme si le net manque d'exemples concrets qui me permettrai de mettr vraiment des solutions sur ce que j'ai a faire, je pense que je vais me tenter
Ce n'est pas un site vitrine, donc, je peux tester Doksuri

et en plus si, comme le dit vorace, ca donne la classe alors...

je laisse le message encore ouvert, pour avoir la possibilité d'avoir d'autres avis !
merci dejà a vous 3 !
diice est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 07h14   #5
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 727
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 727
Points : 3 294
Points : 3 294
Salut

Je rajouterais aussi que Php tend à être de plus en plus Objet, bien que la plupart du temps Php propose à la fois un objet (mode Objet) et la fonction correspondante (mode procédural).

Donc se mettre à la POO le plus tôt possible est à mon sens la meilleurs chose à faire ne serait-ce que pour profiter au mieux se que propose le langage, mais aussi ça permet de progresser, ce qui est bien plus intéressant que le projet en lui même, pour soit même.


Puis de toute manière, tous les projets Open Source, récents ou anciens mais qui évoluent bien, les plus intéressants en somme, sont Objets.
On risque donc de ne pas faire le bon choix si on est amener à en exploiter un, ou alors on ne parviendra pas à l'exploiter au mieux.

Même pire, on risque de mettre de coté un projet Open source qui répond pourtant tout ou en partie de ce qu'on envisage de faire, et créer de A à Z le projet, et ça en mode procédural.


Donc même si on fait un petit projet, le faire Objet (ou en partie) sera toujours utile, une expérience supplémentaire.


A l'inverse, s'obstiner à faire du procédural, on stagne, voir même on recule.


Pour ma part, je ne vois plus grand intérêt de faire du procédural.
C'est mon avis bien sûr.
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 08h07   #6
Invité de passage
 
Inscription : janvier 2007
Messages : 15
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : janvier 2007
Messages : 15
Points : 1
Points : 1
Je suis bien d'accord avec toi RunCodePhp !
Ca fait un bout de temps que j'en entends parler, et puis pas trop le temps de m'y mettre !

du coup la je developpe un projet perso, et j'en profite !
j'avance doucement... mais j'ai l'impression de revenir tout au debut qd j'etais obligé de faire 45 minutes de recherche avant d'ecrire 2 lignes ! c frustrant !
mais je suis convaincu que c'est ce vers quoi je dois aller...

merci pour ton aide
d'ailleurs j'ai posté un autre message au sujet de la poo et de la bdd, des boucles etc... si tu as un solution
c'est là http://www.developpez.net/forums/d11...e/#post6428539

merci encore !
diice est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 13h47   #7
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Citation:
Même si je n'ai jamais codé en objet
Pas tout-à-fait vrai, car à l'automne dernier, j'ai suivi un stage sur le framework Zend ; c'était très bien, on code en objet, et pour la maintenabilité, le lisibilité et la réutilisabilité, c'est le nec plus ultra. Mais justement, pour être capable d'appliquer ce qu'on m'a montré, je compte d'abord apprendre la POO standard (avec PHP) (car même si j'ai une petite connaissance qui permet de comprendre le code, elle ne suffit pas pour coder).(Ici le forum qui y est consacré)
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 21h14   #8
Membre Expert
 
Avatar de transgohan
 
Homme Baptiste ROUSSEL
Étudiant
Inscription : janvier 2011
Messages : 812
Détails du profil
Informations personnelles :
Nom : Homme Baptiste ROUSSEL
Localisation : France, Territoire de Belfort (Franche Comté)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2011
Messages : 812
Points : 1 533
Points : 1 533
Il y a un autre terme qu'on peut associer à la POO qui n'a pas été cité : la modularité

Exemple bateau : on a une class qui n'implémente pas tout ce que l'on souhaite mais qu'on ne peut modifier (nah nah cherchez pas pourquoi...), il suffit de faire une seconde class qui hérite de la première et d'y rajouter nos méthodes.
__________________
Toujours se souvenir que la majorité des ennuis viennent de l'espace occupé entre la chaise et l'écran de l'ordinateur.
transgohan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2012, 09h54   #9
Invité de passage
 
Inscription : janvier 2007
Messages : 15
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : janvier 2007
Messages : 15
Points : 1
Points : 1
Citation:
Envoyé par transgohan Voir le message
Il y a un autre terme qu'on peut associer à la POO qui n'a pas été cité : la modularité

Exemple bateau : on a une class qui n'implémente pas tout ce que l'on souhaite mais qu'on ne peut modifier (nah nah cherchez pas pourquoi...), il suffit de faire une seconde class qui hérite de la première et d'y rajouter nos méthodes.
comme c plus clair dit comme ça !! la théorie de certains cours, tutoriels y gagnerait beaucoup
merci de ton aide !
diice est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2012, 16h16   #10
Membre éprouvé
 
Développeur Web
Inscription : avril 2005
Messages : 395
Détails du profil
Informations personnelles :
Âge : 28

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 395
Points : 479
Points : 479
Salut,

Pour ma part je code tout le temps en objet et le gain de temps et incomparable. Quand tu penses objet, tu penses factorisation c'est à dire comment traiter un besoin d'une manière général et abouti qui sera facilement modulable et maintenable dans le cas d'une évolution de la demande.

Je m'explique, au début tu vas certainement passer du temps à identifier selon les besoins les classes que tu peux élaborer. Ensuite arrivera le moment de les créer et de s'habituer à les utiliser.

Mais ce temps pris sera très vite gagner par la suite. Une fois tes premières versions créées, tu pourra aisément les peaufiner, les adapter à d'autres besoins.

Par exemple : j'ai une classe pour la gestion de base de donnée, pour la session, pour l'envoi de mail, la gestion des formulaires, la gestion de la langue, la gestion d'un compte utilisateur, de génération de graphique (en flash, en html5), gestion de géolocalisation... etc

Enfin, selon les besoins du projet tu n'as plus qu'à piocher dans tes classes et tu peux avancer très rapidement. A la manière de briques indépendantes que tu empiles pour former un tout.
__________________
Zend PHP5 Certification
MySQL 4 Core Certification
Gats est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h46.


 
 
 
 
Partenaires

Hébergement Web