Question

Je suis obsédé par les meilleurs noms de tableaux et de variables que j’utilise, je vais chercher des mots dans le dictionnaire des synonymes, le dictionnaire, etc.

J'essaie donc de nommer ce tableau / cette structure:

$nameMe = array(
    '392' => TRUE,
    '234' => TRUE,
    '754' => TRUE,
    '464' => TRUE,
);

et il est utilisé pour vérifier si cet identifiant a une certaine propriété, comme si

if(isset($name[$id])) {
    doSomething();
}

Le problème, c'est que je reçois des noms de variables très longs, comme

.
$propertyNameArrayIdIndexed

Avez-vous des idées sur la manière de mieux nommer cette fonction de array? ou de meilleurs noms en général

Était-ce utile?

La solution

$hasProperty[$id]

ou

$isSomething[$id]

Quelle est la propriété exactement?

$isOdd[$id]
$isWriteable[$id]
$hasAssociatedFile[$id]

Autres conseils

Rien de mal avec les noms de variable longs, tant qu'ils décrivent ce que fait la variable, plutôt que la façon dont elle est déclarée ou définie.

Je déposerais & "Tableau &"; à partir de noms de variables.

Une fonction utilisant le tableau peut s'appeler de la manière suivante:

IsPropertyAvailable? ($ id)

ou juste

IsAvailable? ($ id)

lorsqu'il est correctement encapsulé.

La structure de données associée à l'interrogation pourrait donc être nommée

$ availableIds

Nommez les variables par leur " rôle " (au sens UML) pas leur type. Ainsi, le nom propre de la variable devrait dépendre beaucoup de l'endroit et de la manière dont il est utilisé. Il ne suffit pas de connaître le type de structure de données pour lui donner un nom approprié. Donc, supposons que vous ayez une énumération de propriétés, chacune d’elles pouvant être rendue sous forme d’icône. Je laisserais de côté toute indication de type et déclarerais quelque chose comme Set<Property> displayableIcons.

Même si vous utilisez la notation hongroise, le type réel ne devrait pas faire partie du nom, mais un qualificateur de type ou une indication d'un sous-type informel serait correct, comme String b64JpgMugshot.

Vous voulez que votre code se lise autant que possible en anglais simple. En clair, vous vous retrouveriez avec quelque chose comme:

Si la voiture est rouge   Faire les trucs de voiture rouge

Donc, ma recommandation est d'éviter d'introduire des langages informatiques inutiles ('array', 'property', 'index' etc.) dans la dénomination de la variable. Votre langage de programmation impose & Quot; isset & Quot; sur toi. C'est bien, cela indique clairement que vous avez un tableau de booléens et que vous pouvez simplement dire:

if (isset (red [car_idx]))   dosomething ();

Résumé: Je pense que le tableau doit être nommé simplement comme la propriété que vous essayez de tester. Si le nom de la propriété est un adjectif en anglais qui s'applique à un nom ou non, la nature booléenne du tableau est évidente même sans isset (). Si simplement;

Rouge [], Oblong [], Grand []

Non IsRed [], IsOblong [], IsLarge [] car le supplément & "Is &"; en plus de celui de isset () est redondant.

propertyNameable, IspropertyNameable.

votre tableau ne contiendra-t-il que true? Si oui, je dirais de changer votre structure de données en quelque chose comme ceci:

$availableIds = array(392, 234, 754, 464);

et ensuite vos if déclarations sont beaucoup plus significatives:

if (in_array($myId, $availableIds)) { ... }

Je viens d'utiliser dah [].

Je conviens avec d’autres commentateurs que la question semble manquer de contexte pour une nomination précise et concise, mais un élément générique tel que capable ['foo'], activé ['bar'] ou prêt ['ack'] peut fonctionner.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top