Refonte de mon site en objet AIDE conception

cs_vega11 Messages postés 39 Date d'inscription lundi 24 avril 2006 Statut Membre Dernière intervention 15 juillet 2010 - 12 févr. 2007 à 15:26
phoenix1789 Messages postés 6 Date d'inscription mercredi 8 novembre 2006 Statut Membre Dernière intervention 26 mars 2007 - 18 mars 2007 à 22:11
Bonjour à tous, je suis actuellement en BTS informatique 2ème année et je m'amuse à créer pour une de mes activités un site de rencontre.
Je suis très passionné même si mon niveau peut encore se définir comme débutant et je suis donc motivé pour apprendre toujours plus.

Ce site dont je vous parle est actuellement concu en PHP4 et donc avec de beaux fichiers include etc.
Mais voila la programmation objet reste l'avenir de la programmation c'est un standard et il faut évoluer avec lui.

Je fais actuellement un stage et je programme en JAVA j'acquis donc quelques base surtout parce que mon tuteur est quelqu'un de très rigoureux dans son code et dans son architecture de classe.
Je souhaite donc refaire mon site (debut de source ici PhpMyCommunity) en objet.Mais voila je ne sais pas trop par ou commencer en php comment définir les objets (pas la synthaxe mais la conception) vais je avoir des objets pour des menus deroulants ??? c'est bête mais c'est un peu ca.

Mes bases serait (je fonctionne avec des noms anglais question de compréhension universelle):
une classe Member
une classe Database
une classe Message
une classe ConnectedMember Extends Member

je donne des exemples de ma comprehension.

par exemple en java mon projet gere des groupes et des utilisateurs il ya donc

une classe GroupManager (qui gere les groupes methode getGroupsWithCredit par exemple) qui traite une interface graphique GroupManagerView
une classe Group et une classe User extends CreditOwner car un CreditOwner peut etre un groupe ou un utilisateur.

Pour vous avoir expliqué mes acquis pouvez vous m'aiguiller dans la conception de mes classes pour mon site qui gere des membres qui peuvent envoyer des messages et des commentaires, peuvent avoir une galerie photo personnelle et un avatar, on peut voir les connectes et faire une recherche.

Qu'est qui va se traduire par une classe et qu'est ce qui va rester du code PhP brut à proprement parlé...
Je sais que mes questions sont vagues mais j'espere que vous pourrez m'aider.

Bon dev à tous ^^ ,Cordialement,

Laurent.

2 réponses

cs_vega11 Messages postés 39 Date d'inscription lundi 24 avril 2006 Statut Membre Dernière intervention 15 juillet 2010 1
16 févr. 2007 à 18:10
n'ayant que peu de reponses ^^ je me lance j'aurai une architecture simple qui separe les classes User, Message par ex et une classe Database qui traite les requetes et action sur la base.

je vous expose une base de ce que je compte faire dites moi si c'est le bon chemin.

public User(){

protected name;
protected firstname;

fonction getName(){
return $this->name;
}

fonction getFirstname(){
return $this->firstname;
}

fonction setName(String $name){
$this->name=name;
}

fonction setFirstname(String $firstname){
$this->firstname=firstname;
}

}

public Database(){

fonction addUser(User $user){
$db=new DB();
$result=$db->query($this-
<wbr>>addUserQueryString($user));

}

fonction addUserQueryString(User $user){
$query="INSERT INTO user VALUES('$user->getName','$user<wbr>->getFirstname')";
return $query;
}

}

excusez la synthaxe qui n'est peu etre pas exacte exacte (je suis sur java pour l'instant) c'est juste pour exposer la logique.
je sépare ainsi les objets et le traitement et j'envoi ces objets dans les methodes de database (ex addUser,deleteUser etc)

Pour la suite je compte mettre en place par ex une methode getAllUsers() dans la classe Database mais aussi dans une classe UserManager par ex qui gerera les utilisateurs, je ferai un singleton avec une methode statique dans Database (propre à la la classe database que je pourrais rappeler ds les autres classes)
Methode getCurrrent() qui renverra la database actuelle qui ne change pas.

Je suis debutant en objet donc tous les conseils sont le bienvenu.

Mci d'avance !
</wbr></wbr>
0
phoenix1789 Messages postés 6 Date d'inscription mercredi 8 novembre 2006 Statut Membre Dernière intervention 26 mars 2007
18 mars 2007 à 22:11
Je pense que si tu developpe déjà en java, le php objet sera une formalité pour toi.

Personnelement j'utilise une couche d'abstraction pour les base de données pour pouvoir faire évoluer plus facilement.

Sinon, tu peut chercher un framework qui t'offrira un cadre d'application (traduit) et donc t'aidera dans ton developpement.

Je suit de très près de le dev du framework de Zend (supporté par ibm) qui va bientôt sortir en beta puis 1.0...
0