Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
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/09/2006, 16h11   #1
Nouveau Membre du Club
 
Inscription : novembre 2005
Messages : 73
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 73
Points : 25
Points : 25
Par défaut [SQL] Nommer efficacement les fonctions, classes, etc.

Bonjour à tous,

J'aborde un sujet qui semblera dérisoire, mais que je trouve intéressant.

Comment nommer les différentes fonctions, classes, etc., et ce de manière efficace ? Par exemple, quelle nomenclature utilisez-vous pour vos fonctions, afin de travailler méthodiquement et rigoureusement, facilitant ainsi la mise à jour et la cohérences de vos différents programmes ?

(Pas forcément en PHP, mais dans la programmation en général.)

Merci à ceux qui me donneront leurs astuces et leurs conseils. ;-)

Bonne journée,
Metallic-84s
Metallic-84s est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/09/2006, 17h25   #2
Membre éclairé
 
Avatar de Orian
 
Inscription : août 2006
Messages : 372
Détails du profil
Informations personnelles :
Âge : 22

Informations forums :
Inscription : août 2006
Messages : 372
Points : 337
Points : 337
Envoyer un message via MSN à Orian Envoyer un message via Skype™ à Orian
De mon coté je faos du Java.

Pour commencer je met mes classes se rapportant au "mêmes types d'actions" dans un même package nommé avec un mot clé commun à toute ses classes.
Je nomme mes package entièrement en minuscule (c'est la conventionn en java je crois).

Pour mes classes je les nommes en fonction des méthodes qu'elles contiennent.

Mes classes sont nommé avec les premières lettres de chaque mot en majuscule et mes méthode avec la première lettre en minuscule et les premières lettres des autres mots en majuscule (encore une fois c'est la conventionn en java je crois).


Par exemple :

package configuration ==> package avec toutes mes classes servant à la config
Classe ConfigIni ==> Classe servant à écrire dans un fichier .ini
méthode readConfig ==> pour lire
méthode writeConfig ==> pour écrire


Evidemment c'est ma mèthode
__________________
iMac 27" 3.06 GHz Intel Core 2 Duo, 4Go DDR3, Mac OS 10.6.5
MacBook Pro 17", 2,3 GHz Intel Core 2 Duo, 2 Go DDR2, Mac OS 10.4.11
Orian est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/09/2006, 18h57   #3
Rédacteur
 
Homme Jean-Pierre
Inscription : août 2005
Messages : 333
Détails du profil
Informations personnelles :
Nom : Homme Jean-Pierre
Âge : 26
Localisation : Suisse

Informations forums :
Inscription : août 2005
Messages : 333
Points : 442
Points : 442
Bonjour,

Pour ce qui concerne les classes, j'ai des conventions assez uniformes :

Une seule classe par fichier
. Ceci te permet entre autres d'utiliser la méthode magique __autoload introduite en PHP 5.

Les conventions typograhiques :

Pour les classes :

MyExample.class.php

ou My_Example.class.php

ou encore myexample.class.php (moins lisible).

Pour les attributs :

Première lettre en minuscule ((nom de la classe*) + nom de l'attribut)

Exemples :

private myExampleId = NULL;

Pour les méthodes :

Verbe + (nom de la classe*) + attribut

Hésite pas à donner des (longs) noms explicites à tes méthodes.

*Ajouter une abréviation précise ou le nom de classe permet d'identifier plus rapidement l'attribut ou la méthode par rapport à son contexte.

Exemple... Si tu as plusieurs méthodes qui portent le même nom, mais qui sont déclarées dans plusieurs classes différentes sans aucun rapport, cela peut être difficile à comprendre lorsque elles sont instanciées les unes derrière les autres


Exemple de nom de méthodes :

getMyExampleById();

addMyExample();

editMyExample();

removeMyExample();

Par exemple, pour des méthodes spécifiques à une requête SQL :


insertMyExample();

updateMyExample();

deleteMyExample();

etc.

Pour le premier exemple : getMyExampleById() (littéralement "Obtient une instance de la classe Example par son attribut IDentifiant") : cette convention m'est inspirée du modèle DOM, je la trouve particulièrement explicite et uniformisable...

...Pour ce qui concerne les variables normales (hors contexte orienté objet) : elles sont en minuscules avec des sous tirets.

Exemple : l'attribut "myExampleId" deviendrait la simple variable $my_example_id.

De la même manière la méthode "getMyExempleById()" deviendrait "get_my_exemple_by_id()" si c'était une fonction classique.

Pour les constantes, toujours en majuscules avec sous-tiret(s) :

MY_CONSTANT_VALUE


Enfin, au niveau du nommage lui-même, moi ce que j'ai horreur de voir, c'est des pseudo-langages français-anglais (ou des abréviations du 3ème type).

du genre : "updateMonNom()" ou "modMonNom()" je préférerais encore "modifieMonNom()" ou au mieux "updateMyName()".

Pour ma part j'ai résolu l'ambiguïté : je code uniquement en anglais. (Ainsi mes scripts peuvent parcourir le monde si ça leur dit ).
Guardian_7 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 05h43.


 
 
 
 
Partenaires

Hébergement Web