web-dev-qa-db-ja.com

良い名前が思いつかないときは、関数/変数/その他にどのような名前を付けますか?

関数/変数/などを定義していて、それを何と名付けるのかわからない場合、どのような名前を付けますか?どうやって名前を思いつくの?

temporaryの名前を実際の名前になるまでプレースカードとして使用する場合、どの一時的な名前を使用しますか?


更新

WILL_NAME_LATERNEEDS_NAMETO_BE_NAMEDなどを使用しています。私は、採用された規約があることを望んでいました。実際に、この採用された規約を使用した場合、変更するまで、私のIDEが名前を強調表示することを望みました。

13
JD Isaacks

設計したいアーティファクトの名前が思いつかないことはほぼ不可能です。簡潔でもセクシーでもないので、思いつく名前は気に入らないかもしれませんが、あまりに考えすぎると、名前の付いていない成果物になってしまいます。

オブジェクトを構築するのに役立つものがあるとしましょう。しかし、これが通常ファクトリーと呼ばれていることを知りません。それをObjectCreatorと呼ぶだけです。鈍感に聞こえますが、少なくともはっきりしています。

ホスト名をIPアドレスに変換する辞書があるとします。先に進んで、それをHostnamesToIpAddressesと呼びます。確かに長いですが、それが何をするかを正確に述べています。

何かに名前を付けることができないということは、それが何をしているのかわからないことを意味します。これはまた、あなたの前により大きな問題があることを意味します。

29
Mark Canlas

私は常に変数と関数素晴らしい名前を与えるようにしています。

素晴らしい名前が思いつかない場合は、良い名前で解決します。

良い名前が思いつかない場合は、大丈夫な名前を使用します。

15年間のプロフェッショナルプログラミングで、まともな名前を思いつくことができませんでした。

34
Portman

変数や関数の適切な名前が思いつかない場合は、自分が何をしているのか理解できないか、デザインが貧弱です。どちらの方法でも、 "x"のような任意の名前を叩いても(座標を扱っていない限り)、ジレンマを解決できません。悪化させるだけでなく、維持するための痛みも大きくなります。

12
gablin

この質問、特にその答えは私を無意味に怖がらせます。誰かが変数「Cup」に名前を付けただけのコードを維持する必要がありますね。あなたが運が悪いと、誰かがあなたになります!

変数があります。それは事です。とにかく、それはものを表しています。そして、物には名前があります。 それがあなたがそれらが物であることを知っている方法です!あなたは実際に物事の名前を思い付くことができないので物事に次々と名前を付ける必要があると私に言っていますか?

イテレータはiと呼ぶ必要があります。ネストされたイテレータは間違いである可能性が高いですが、必要な場合は、残りの母音を順番に調べてください(a、e、o、u、そして神が私を助けてくれる、そうです、時にはy)。

それとは別に、それをそれとは何かと呼んで、それで完了してください!

5
Dan Ray

すぐに素晴らしい名前が思いつかない場合は、一時的に「大丈夫」な名前を使用してから、コーディングを続けます。 十分でなくても、少なくとも十分はアイテムを説明するものになります。ほとんどの場合、その特定のコードチャンクの最初のドラフトを書き終える頃には、より完璧な名前が思い浮かぶでしょう。コーディングの過程を通じて、その特定の変数に対する私の意図がより明確になります。 (その一方で、変数toが最初は間違った考えであり、他のものを優先してそれを削除することが時々あります。)

4
Nick Spreitzer

私は、関数が何をすべきかを考えています。多かれ少なかれ意図を伝えるものです。関数の本体が記述されたら、それを何と呼ぶか​​は明らかであり、戻って必要に応じて名前を変更します。

3
Adam Lear

fooおよびbar。関数/変数に名前を付けることにはまだ意味がないので、私はFooやBar、あるいはその両方を、定義しようとしているものと組み合わせて使用​​しています。

これにより、後で名前を付ける必要があるものについて理解が深まったときに、簡単に検索/検索できます。

WikipediaのFoobar も参照してください。

Foob​​ar、foo、bar、およびbazという用語は、コンピュータープログラミングまたはコンピューター関連のドキュメントでプレースホルダー名(メタ構文変数とも呼ばれる)として使用されることがあります。これらは、変数、関数、コマンドなどの目的が重要ではなく、概念を示すためにのみ役立つエンティティに名前を付けるために使用されています。この使用法では、単語自体には意味がありません。 Foobarは時々単独で使用されます。複数のエンティティが必要な場合、foo、bar、bazがこの順序で使用されることがあります。

2
spong

変数に名前を付けるのが難しいと思うものは何でも、//TODO find a better nameコメントなので、後で戻って名前を変更できます

通常、私は変数/関数/クラスを使い始めたときに、それらのより良い名前を見つけます。

1
user1041

関数の前に何かを付け、今のところベストショットの名前を付けます。たとえば、選択したユーザーのデータベースにすべての製品を保存する関数はRENAME_SaveAllProductsForTheSelectedUserToTheDatabase()

1
HardCode

時々zzzzを一時的に使用します。

あなたを助ける良いルールはこれです:

  • ブール値を返し、副作用はありませんか?次に、形容詞(is、isで始まる)を使用しますが、未来時制は使用しません。
  • 別の型を返し、副作用はありませんか?次に名詞を使用します。
  • それは何かを返すだけで何も返しませんか:次に動詞を使用します。
  • クラスですか:名詞を使用してください。
0
ctrl-alt-delor

わかりやすい説明的な名前を見つけるのに問題はほとんどありませんが、クラスと変数の名前が非常に似ているため、名前が冗長になることがあります。 WebClient webclient = new Webclient(uri); ...など。

0
Zaz

コードを念頭に置いている間は、すぐに適切な名前を付けることをお勧めします。適切な名前を付けたいと思うようになるまで待つのではなく、

0
Jon Onstott