Pythonのような言語で変数名を短くすることで、メモリとスピードの面で得られるものはありますか?
もしそうなら、どのような状況を考慮するのが合理的でしょうか?
ノート
私は決して短い変数名を主張しているわけではありません。疑問に思っているだけです。質問を(再)読んでください。
注 2 説明的な変数名の値は理解しています。短い名前よりもわかりやすい名前を好むように十分なコードを調べ、その価値を理解しました。単純な No は実際には役に立ちません。
Pythonのような言語で変数名を短くすることで、メモリとスピードの面で得られるものはありますか?
もしそうなら、どのような状況を考慮するのが合理的でしょうか?
ノート
私は決して短い変数名を主張しているわけではありません。疑問に思っているだけです。質問を(再)読んでください。
注 2 説明的な変数名の値は理解しています。短い名前よりもわかりやすい名前を好むように十分なコードを調べ、その価値を理解しました。単純な No は実際には役に立ちません。
いやいやいやいやいや。
短い名前ではなく、読みやすい名前を使用してください。パフォーマンスの違いはまったく無視できます。
$ python -m timeit "i = 5" "i *= i"
10000000 loops, best of 3: 0.0938 usec per loop
$ python -m timeit "is_there_anything_to_be_gained_from_short_variable_names = 5" "is_there_anything_to_be_gained_from_short_variable_names *= is_there_anything_to_be_gained_from_short_variable_names"
10000000 loops, best of 3: 0.0927 usec per loop
皮肉なことに、この PC で測定すると、長い変数名は実行ごとに約 0.001 マイクロ秒速く測定されました。
すべてのインタープリター言語が同じではないため、「like python」には問題があります。
純粋に解釈された言語では、事前コンパイルのステップがある Python のような言語よりも大きな影響があります。厳密には、これは言語の違いではありません (プリコンパイルする Javascript エンジンとプリコンパイルしない Javascript エンジンが存在する可能性があります) が、この質問への回答に影響します。
すべてのインタープリター言語を含めるために「python のように」拡張すると、答えは「はい、一部の言語については、少なくとも一部の場合は」と言えます。次の質問は「どれくらい」です。
1997 年から 1998 年初頭にかけて、私は Netscape Navigator 4 と Internet Explorer 4 の新機能のいくつかを利用するかなり複雑な JavaScript コードに取り組んでいました。これは、ダイヤルアップが普及した当時としては巨大な JavaScript ファイルでした。サイトの速度に関しては、すべてのキロバイトがカウントされることを意味しました。
このため、ミニマイザー スクリプトを使用しました。これが行った主なことは、変数を短く書き直すことでした(lastHeight
becmes a
、userSel
becmomesb
など)。
ダウンロード時間が短縮されただけでなく、重い機能の 1 つが大幅に高速化されました。しかし、あなたが一日中、他に何も見ずに過ごした人である場合にのみ、それはかなりの価値があります.
そうです、解釈に関する限り Javascript を「python のような」カテゴリに入れると、次の条件の下で違いが生じる可能性があります。
そして、それでもそれほど大きな違いはありませんでした。
そのため、他のいくつかのインタープリター言語も同様にわずかな程度で影響を受けると想定できます。
とはいえ、1997 年になっても、たまたま別の利点が得られなかったとしたら、気にすることはなかったでしょう。
「Pythonのような言語」という発言で解釈された言語を意味する場合、解析には多少時間がかかる可能性があるため、違いがあります。違いは私が言うほど目立たない。
私はナイトクラッカーに完全に同意します。しないでください。人間がコードを読めるようにします。パーサー/コンパイラーがマシンの可読性を処理できるようにします。
最適化に関するルールを覚えておいてください。
短い変数名は、短いループのインデックスと、変数の有効期間が短い場合にのみ使用する必要があります。
それ以外の場合はわかりやすい名前を使用しますが、やりすぎないでください。ハンガリアン記法は使用しないでください。
Pretty much none. Admittedly it might slow down finding the variable name the first time when python is precompiling your script. However, the time expended as a result of the confusion that results from short variable names generally far exceeds the amount of time saved in the execution of the script.