web-dev-qa-db-ja.com

同じタイプの複数のオブジェクトを保持するオブジェクトに複数形の名前を付ける必要がありますか?

私はオブジェクトを持っています:

_const riders = {
    Dave: {
        gender: 'male',
        age: 13,
    },
    Nina: {
        gender: 'female',
        age: 16,
    },
    Mike: {
        gender: 'male',
        age: 12,
    }
};
_

オブジェクト名をrider(s)の複数形または単数形にする必要がありますか?配列は常に複数であることを知っているので、これを尋ねていますが、これはオブジェクトです。名前が複数形だからといって、それが配列であると誰にも思わせたくない。この点でのベストプラクティスは何ですか?可能な限り最良の方法で、読みやすく、理解しやすいものにしたい。少なくとも、一貫している必要があります。

コレクションは常に複数であると読みましたが、 この回答とそれが提供するソース によると、オブジェクトはコレクションとは見なされません。私がそれを採用する方法は、それをコレクションとして定義するでしょうか?

1
yaharga

混乱を招く複数形の使用は避けてください。

考慮してください:

  • 羊-羊
  • ライブラリ-ライブラリ
  • 人-人
  • データム-データ

場合によっては、たとえば、単数形を使用するSQLテーブルが一般的です。riderの場合、コンテキストが見えないため、言うのは難しいです。単語の追加を検討するPassengerListPassengersなど

0
Ewan

過度に一般的であるリスクがある...

すべてのオブジェクトがコレクションであるわけではありませんが、すべてのコレクションはオブジェクトです。

  • さて、誰かが言葉が異なって定義されている言語に言及します。

しかし、我々は人々にとって意味のある名前について話している。それで、ええと、ええ、ええ、人々がそれを同じようなもののコレクションとして見るならば、それに複数の名前を付けてください。または、KeySetやBookListなどのわかりやすいコレクション名を付けます。

単一の名前でコレクションに名前を付ける慣習は慣用的であり、SQLスキーマを設計する人々に人気があります。その環境では、コードがセット(コレクション)と個々のメンバー項目を区別する必要はあまりありません。可能な限り、常にセット操作を実行するように努めます。

SQLのように、クールな子供たちがセットに単数形を使用するという伝統がある場合、それはいい選択です。

OO言語では、たとえばCarsとCarを区別しなければならないことがよくあります。したがって、複数形と名付けられたコレクションを見るのがはるかに一般的です。

しかし、これに対する最も重要な答えは、ちょっと、それは本当に好みの問題です。最大のエラーは、私たち全員があなたの名前についてどう思うかについてあまりにも心配していることです。電話をかけ、しばらく一緒に暮らし、次回も同じようにやりたいかどうかを確認します。

ほとんどの経験豊富な開発者は、ほとんどの場合、特定の好みを無視し、スタイルが合理的に一貫しているかどうかに注意を払います。これにより、読者が毎回同じことを意味するのかどうか常に悩むことなくコードを学ぶことができます。

あなたはこれを考えすぎています。決定して次に進みます。

4
joshp

両方のタイプのネーミングについて議論があります。

  • いくつかのridersfor rider in ridersは非常に表現力豊かで正確です。
  • ただし、配列とマップ、つまりインデックス可能なコレクションの場合、riders[1]riders[2]は、個々の要素に対して複数形の誤った意味を与えます。
  • コレクションの種類ごとに異なる規則を使用する、またはそれらを一貫して使用しないと、非常に混乱するようです。

最終的に、2つのスキームのいずれにも決定的な利点がない場合、最も重要なのは混乱を避けることです。つまり、言語コミュニティの使用法に固執するか、チーム全体で一度決めるかです。


編集:一般的な使用法-一部は単数形、一部は複数形

  • RDBMSのコンテキストでは、単数形のテーブル名が非常に一般的です( この投稿の例を参照 )。しかし、複数が牽引力を獲得します。
  • MongoDBでは、コレクションの一般的な使用法は複数です( たとえば、この投稿を参照 )。 Googleの スタイルガイド によると、JSONについても同じです。
  • UMLモデリングでは、単数形が一般的です。おそらくモデリング段階で、多重度は急速な進化の影響を受けます( この投稿も を参照)。
  • OOP言語の場合、両方のアプローチの支持者を明確に見つけます(2つの主な回答に対する多数の投票を参照してください この質問では ここで、複数形と単数形は7だけ異なります)有権者の割合)
3
Christophe