naming conventions - snake - ¿Nombra tus matrices de forma plural o singular?
snake case naming (12)
Cuando estoy nombrando variables tipo array, a menudo me enfrento a un dilema: ¿nombro mi array de forma plural o singular?
Por ejemplo, digamos que tengo una matriz de nombres: en PHP diría: $names=array("Alice","Bobby","Charles");
Sin embargo, digamos que quiero hacer referencia a un nombre en esta matriz. Para Bobby, yo diría: $names[1]
. Sin embargo, esto parece contrario a la intuición. Prefiero llamar a Bobby $name[1]
, porque Bobby es solo un nombre.
Entonces, puedes ver una ligera discrepancia. ¿Hay convenciones para nombrar matrices?
El nombre siempre debe transmitir la mayor cantidad de información posible en caso de que un lector no esté familiarizado con la declaración de tipo. Por lo tanto, una matriz o colección debe nombrarse en plural.
Personalmente, me parece que $ name [1] es engañoso, ya que significa "el primer elemento de nombre", que no tiene sentido en inglés.
Lo que dijeron los demás: plural.
Es aún más flagrante en PHP:
$name = ''Bobby'';
echo $name[1];
mostrará o . :-)
Debo admitir que me hice la misma pregunta hace algunos años, pero mostrar la naturaleza plural de la matriz o colección era más importante que el significado en inglés al acceder a un miembro ...
Normalmente le doy algo al final como lista para que sea
nameList
De lo contrario, lo hago plural.
Plural aunque te enseñe a hacerlo singular en la escuela para que puedas decir:
value[0] = 42;
y realmente, si lo piensas, tiene más sentido que:
values[0] = 42
dilo en voz alta si no me crees. A pesar de que uso plurales para que pueda decir fácilmente cuando estoy escaneando el código. Ese también parece ser el estándar que las personas están usando en estos días.
Plural para mi
Por todas las razones expuestas anteriormente y porque las convenciones acordadas donde trabajo (que contribuí a crear) requieren plurales para matrices / listas / vectores, etc.
Aunque la denominación plural puede causar algunas anomalías en algunos casos, la mayoría es que proporciona una claridad mejorada y un código que es más fácil de leer sin la molesta sensación de que su mente capta una construcción extraña e interrumpe el flujo mientras vuelve a desconectar su cerebro de lo que sea que lo haya estropeado.
Plural.
sort(name)
sort(names)
Claramente, solo el plural tiene sentido aquí.
Y luego, aquí:
name[1]
names[1]
Ambos tendrían sentido en este contexto.
Por lo tanto, el plural es el único que tiene sentido cuando se hace referencia a toda la colección y cuando se hace referencia a un elemento de la colección.
Siempre plural. De esa manera no hay confusión cuando lo hago ...
for each (string person in people)
{
//code
}
Siempre plural. Lo mismo para listas de cualquier otro tipo de datos que pueda contener más de un elemento.
Yo uso la forma plural Entonces puedo hacer algo como:
$name = $names[1];
Normalmente utilizo la forma plural, o a veces de la misma manera que se cita aquí, agregando lista al nombre ...
Trabajo en muchos idiomas diferentes, una cosa que no se considera son idiomas que tienen más que una matriz. es decir, persona: persona; personas: Diccionario. la gente no es necesariamente una matriz, podría ser de otro tipo y causar un error. Además, en algunos idiomas, los diferentes tipos tendrán un mejor rendimiento en diferentes operaciones o posiblemente tengan diferentes métodos disponibles para ellos.
Por eso en estos días, en todos los idiomas, hago los nombres con el sustantivo singular seguido del tipo como personArray o person_arr si lo prefieres. Generalmente también incluyo el alcance al principio si es relevante. Los nombres de las variables deben ser lo suficientemente explícitos como para que no necesite autocompletar o ctrl + f para saber de qué se trata.
Yo siempre iría por
appleList
appleArray
nameAppleDict
Al hacer la convención de nomenclatura correcta, se ahorrará un montón de tiempo para que otra persona lea el código. Ya que no tienen que regresar y verificar el tipo de variable para entenderlo.
Tener un nombre de variable como:
apples
podría ser confuso a veces (lista, matriz o conjunto?)