アカウント名:
パスワード:
昔のコンパイラには識別子の長さについて制限のやたらきついものがあったので、無理やり短縮した名前にせざるを得なくなって自分でも何が何やらわけのわからない名前になってしまうことがありました。まぁアセンブラのニーモニックだってそのアーキテクチャに精通してない人にはたとえ規則性があったとしてもなんじゃこりゃ~なわけで、まぁあんな感じです。MASMだって識別子は確か31文字くらいに制限されていた時代があったはず。もっと古いアセンブラのラベルなんて8文字に制限されているものもあったり。
というわけで、「無理やり短縮した識別子」は「もうやらなくていい昔のコーディングテクニック」です。
それ自体に大した意味があるわけではない変数に大仰しい名前を付けると却って可読性が悪くなるような。
「i, j, k といったら整数変数」のような古き良きお約束は、お約束が通じる状況でお約束を守っている分には理解の助けになるので、それ自体は現役のスタイルだと思う。
でも、変数名に意味が無い i とか j とかを文脈無視して使いまわすのは勘弁な!
>「i, j, k といったら整数変数」のような古き良きお約束
同感。なのだけど、グリフ的な問題として、iとjをミスタイプした挙句、ソースを眺めてもなかなか気づかなかった、という経験はしたことありませんか?いい解決案はないですかね。i の次は ii にするとか?
別の角度からの解決策として、単語を検索したりハイライトしたりするのが得意なエディタ/IDEを使え、ってのもあります。
たとえばvimなら「i」にカーソル合わせて「*」キーを叩けば、「i」が黄色とかにハイライトされます。むろん「j」はされません。「*」で捕捉されるのは単語単位なので「ii」とかもハイライトされません。
ちょくちょく「*」で確認する癖をつけると、変数名取り違えの事故がだいぶ減りました。ていうか殆ど起こさなくなりました。これはかなり劇的な効果があったなあと思っています。
Eclipse(のJava環境)でも、ある単語というか識別子にカーソルを合わせると、同じ識別子が灰色っぽくなりますね。
1. * または # で検索履歴に「\」を拾う。2. / でキーワード検索に入り、Ctrl+P で「\」を呼び出す。3. 後ろの「\>」を消して再検索する。
# ちょっと手順長いですかね?# でも g* ではダメなんですよね?
よくわからないんですが、vimの「*」は「\」というパターンを検索バッファに入れるだけなのだから、「「\」を拾う」だけなら単に「/を叩いて\を入力する」だけでいいんじゃないでしょうか?
おっと失敬、化かしてしまいました。
> 1. * または # で検索履歴に「\」を拾う。> 2. / でキーワード検索に入り、Ctrl+P で「\」を呼び出す。
履歴に取り込んで再利用するのは「¥<aVar>¥」です。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
吾輩はリファレンスである。名前はまだ無い -- perlの中の人
わかりやすい(無理やり短縮されていない)識別子 (スコア:3, 参考になる)
昔のコンパイラには識別子の長さについて制限のやたらきついものがあったので、無理やり短縮した名前にせざるを得なくなって自分でも何が何やらわけのわからない名前になってしまうことがありました。まぁアセンブラのニーモニックだってそのアーキテクチャに精通してない人にはたとえ規則性があったとしてもなんじゃこりゃ~なわけで、まぁあんな感じです。MASMだって識別子は確か31文字くらいに制限されていた時代があったはず。もっと古いアセンブラのラベルなんて8文字に制限されているものもあったり。
というわけで、「無理やり短縮した識別子」は「もうやらなくていい昔のコーディングテクニック」です。
屍体メモ [windy.cx]
ループ変数 (スコア:0)
#とか、わざと書いてみる。
Re: (スコア:0)
それ自体に大した意味があるわけではない変数に大仰しい名前を付けると却って可読性が悪くなるような。
「i, j, k といったら整数変数」のような古き良きお約束は、お約束が通じる状況でお約束を守っている分には理解の助けになるので、それ自体は現役のスタイルだと思う。
でも、変数名に意味が無い i とか j とかを文脈無視して使いまわすのは勘弁な!
Re: (スコア:0)
>「i, j, k といったら整数変数」のような古き良きお約束
同感。
なのだけど、グリフ的な問題として、iとjをミスタイプした挙句、ソースを眺めてもなかなか気づかなかった、
という経験はしたことありませんか?
いい解決案はないですかね。i の次は ii にするとか?
Re: (スコア:1, 参考になる)
別の角度からの解決策として、
単語を検索したりハイライトしたりするのが得意なエディタ/IDEを使え、
ってのもあります。
たとえばvimなら「i」にカーソル合わせて「*」キーを叩けば、
「i」が黄色とかにハイライトされます。
むろん「j」はされません。
「*」で捕捉されるのは単語単位なので「ii」とかもハイライトされません。
ちょくちょく「*」で確認する癖をつけると、
変数名取り違えの事故がだいぶ減りました。
ていうか殆ど起こさなくなりました。
これはかなり劇的な効果があったなあと思っています。
Eclipse(のJava環境)でも、ある単語というか識別子にカーソルを合わせると、
同じ識別子が灰色っぽくなりますね。
Re: (スコア:0)
でもあれ、一画面を超える範囲で使われてる名前のミススペルを探すには使いにくいんですよね。
あと、aVar に対して aVar_variant みたいな名前も柔軟に引っ掛けて欲しいときにちょっと困る。
Re: (スコア:2)
1. * または # で検索履歴に「\」を拾う。
2. / でキーワード検索に入り、Ctrl+P で「\」を呼び出す。
3. 後ろの「\>」を消して再検索する。
# ちょっと手順長いですかね?
# でも g* ではダメなんですよね?
名物に旨いものなし!
Re:ループ変数 (スコア:0)
よくわからないんですが、
vimの「*」は「\」というパターンを検索バッファに入れるだけなのだから、
「「\」を拾う」だけなら
単に「/を叩いて\を入力する」だけでいいんじゃないでしょうか?
Re:ループ変数 (スコア:2)
おっと失敬、化かしてしまいました。
> 1. * または # で検索履歴に「\」を拾う。
> 2. / でキーワード検索に入り、Ctrl+P で「\」を呼び出す。
履歴に取り込んで再利用するのは「¥<aVar>¥」です。
名物に旨いものなし!