"lista de itens "ou"lista de itens"
o inglês não é a minha língua materna e eu não consigo entender como escrever as amostras especificadas corretamente. Quando você diz algo que agrega objeto plural, como "coleção de selos", você pode dizer alternativamente:" coleção de selos", estou certo? Se disser "colecção de selos", significa" colecção", que é um único"selo".
mas muitas vezes eu vejo classes com nomes como" ItemList " - não significa que tal classe é uma lista que é um item de outra coisa? Tal a amostra é mais flamejante:
class ItemList: List<Item>
Não tem de ser assim?:
class ItemsList: List<Item>
Porque é que raramente está escrito assim? Ou é uma convenção de nomes de linguagens de programação? Ou apenas frases em inglês? :)
3 answers
Em inglês, uma "coleção de selos" é uma "coleção de selos".(Na melhor das hipóteses, entende-se por "colecção de selos").
Na programação, não sei bem porquê, mas ...1 do {[14] } às vezes use o formulário "StampsCollection".
Pode ser porque tentamos usar uma linguagem mais precisa e lógica do que o inglês tradicional prevê; começamos com o nome "Item", pluralizamo-lo para "itens", Então ser preciso, afirmando que nossa coleção de" itens "é uma" lista "ao invés de um" Array " ou alguma outra implementação.
Mas é provável que vejas ambas as variantes, e não importa.Certamente, nem em inglês nem na programação {[[0]} implicaria uma lista de colecções de Items
, pelo menos não para a maioria das pessoas.
1 ... por algum valor de "nós". As escolhas de nome são, naturalmente, de preferência pessoal. No entanto, eu pessoalmente vi isso como uma tendência.
list
de objetos do tipo Item
.
Por outro lado, se você tivesse uma coleção de objetos Item
, você poderia chamá-lo de Items
, e ItemsList
designaria um list
de coleções.
class Items: List<Item>
E mais legível, em geral eu faço um typedef
typedef List<Item> Items;
Com uma classe mais especializada que esconde a lista
class Encapsulation
{
Items m_items;
}
"Prefer composition by aggregation over inheritance" is common idiom in OOP (quoting Sutter/Alexandrescu)
Encapsulamento de uma coleção é na maioria das vezes uma boa prática que reduz a complexidade da chamada de código.