Jakie są standardy postępowania z pluralią tantum w twoim kodzie? [Zamknięte]


20

Kiedy używasz zmiennych, których liczba w liczbie mnogiej i liczba pojedyncza są takie same, jak je nazwiesz? Czy są jakieś standardy?

Na przykład:

Series[] series  // Plural
Series series    // Singular

Indepth:

Mówiąc konkretnie, moja kolekcja serii musi być nazywana serią (ze względu na formatowanie JSON). Czy zastanowiłbyś się nad nazwaniem pojedynczej formy serii, która zostanie dodana do kolekcji Series s?

Jak w:

List<Series> series = new List<Series>();
Series s;

while (someBool)
{
    s = new Series();
    s.Name = "Name";
    while (anotherBool)
    {
        s.AddValue(someValue);
    }
    series.Add(s);
}

4
I zazwyczaj odróżnić je dodając typ kolekcji są one przechowywane w do ich nazwy, takie jak seriesList, seriesArraylub seriesLinkedList. Nie sądzę, żeby istniał standard nazewnictwa.
Andy

8
+1 za pluralia tantum! Myślę, że to zależy od tego, co to seriesjest. Na przykład, jeśli byłby to serial telewizyjny (spekuluję tutaj), pojedynczy element mógłby być episode- chociaż to wydaje mi się trochę niechlujne. Czy są jakieś synonimy, które mają sens dla twojego modelu? Kiedyś natrafiłem na dość przerażające rozwiązanie w jakimś kodzie, który utrzymywałem - technicznie by to działało dla ciebie: użyj gollum-speak; np serieses. : Nie to, że sugeruję ci to zrobić - zdecydowanie nie! : D
Darragh Enright

3
@Darragh Gdy rozmawiam z kolegami o serialu, od czasu do czasu pojawiają się „serie”, gdy próbuję podkreślić, że mówimy o kolekcji;)
anthonytimmers

1
Ponieważ nie możesz zmienić nazwy swojej listy, w tej próbce nazwałbym ją nowąSeries
the_lotus

1
Czy można to nazwać Series[] serieses, czy to też Gollum-y?
Jules

Odpowiedzi:


18

Nie sądzę, aby istniał tu standard. Większość angielskich rzeczowników nie ma tego problemu. Jeśli więc nie chcesz dodawać terminu „lista” lub „kolekcja” do nazwy zmiennej, możliwym rozwiązaniem jest obejście tego problemu poprzez wybranie innego terminu.

W twoim przykładzie można użyć „sekwencji” zamiast „serii” (jeśli takie jest znaczenie „serii”, o której myślisz).

Oczywiście dla niektórych słów, takich jak „okulary” lub „spodnie”, znalezienie odpowiedniego synonimu, który pasuje do twojego kontekstu, może nie być łatwe. Dla tych osób prawdopodobnie najlepszym rozwiązaniem jest skorzystanie z sugestii @ DavidPacker, aby użyć słowa typu „spectaclesCollection” lub „pantsList”.


Unikałbym nazywania listy spodni od spodni, ponieważ mogłoby to wprowadzić w błąd typ za nią. Ponieważ C # jest oznaczony w pytaniu, myślę, że XxxCollection jest lepszy, ponieważ ICollection jest interfejsem, a nie konkretną implementacją.
Ziv,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.