トップページ⇒tech
41コメント10KB

変数や関数(メソッド)に付ける名前

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
create@` destroy@` enter@` leave@` draw@` get@` set@`...
0002デフォルトの名無しさんNGNG
わたしら日本人は、プログラムの変数、関数(メソッド)名を、言語の制約などでいつも英語で書いています。(アナグラム、ローマ字の人もいるでしょうが。)
こういった名前を考えるだけで、どうしても英語圏の人の開発速度から一歩遅れてしまっている様に感じます。
そこで、使えそうな名前をここで列挙し、みなで共有する事で、名前付けの時間の削減をするのが、このスレの目的です。
では最初の人、どうぞ。
0003デフォルトの名無しさんNGNG
ファイル名で迷う。
0004デフォルトの名無しさんNGNG

--- DestoryThread ----

EOF
00054NGNG
>>4
CompileError

Destroy(this);
0006デフォルトの名無しさんNGNG
create / destroy 生成/破壊
0007デフォルトの名無しさんNGNG
cat 連結 concatenate
ins 挿入 insert
rep 置換 replace
del 削除 delete
mov 移動 move
cmp 比較 comp
find 検索
swap 交換
eval 評価 evaluate
exec 実行 execute
00081NGNG
半角の開き括弧'('のせいでスレッド名が一覧でちゃんと表示されない様だ。
鬱だし嚢...
0009デフォルトの名無しさんNGNG
>>7
comp って語はないでしょ。compare
0010デフォルトの名無しさんNGNG
>>9
comp -> 伴奏する。
語はある。
0011デフォルトの名無しさんNGNG
>cmp 比較 comp

complete@` completionとかと、どう区別しましょう >cmp
0012デフォルトの名無しさんNGNG
>>10
それをへりくつという
001310NGNG
>>12
なるほど。知らなかった。
0014デフォルトの名無しさんNGNG
あー、クラス名やメソッド名はフルスペルでお願いしたいです。
BeanContextServicesSupport.BCSSServiceProviderとか。
0015デフォルトの名無しさんNGNG
>BeanContextServicesSupport.BCSSServiceProvider
やむを得ないと理性ではわかっているんだが、
僕の感情では「長すぎる」と思っている

# プログラムは芸術品でなくなり、工業製品になりつつある
0016デフォルトの名無しさんNGNG
>>15
>プログラムは芸術品でなくなり、工業製品になりつつある

これを目指しているのが、ソフトウェア工学です。
0017ボログラマーNGNG
>>11
そういうのは短縮しない。
>>7とか、標準ライブラリ、あとは一般的なもの(tmpとか)だけ短縮。
残りはフルスペルで書いて、エディタの機能に頼る。
・・・かと言って>>14はどうかと思うが。
工業製品にしたって、生産性悪いだろ。
0018デフォルトの名無しさんNGNG
Lispのcarとかcdrってなんの略語デスカ?
0019>18NGNG
car=Contents of the Address part of Register
cdr=Contents ofthe Decrement part of Register
当時のLISPはIBM 704というハード上に実装されていて、
そのハードのアーキティクチャからとった名前みたい。
0020デフォルトの名無しさんNGNG
>>19
即レス感謝。勉強になりました。

ところで、「カー」「クダー」と読むらしい。
0021デフォルトの名無しさんNGNG
>>18
cddr
cdddr
とかありますね。
アホちゃうか?
00221NGNG
なぜか上がってるな〜

init/term 初期処理/終了処理 initialize/terminate
ptr ポインタ pointer
cur カレント current
next/prev 次/前 next/previous
front/back 前/後
first/middle/last 最初/間/最後
dup 複製/二重化 duplicate
clone 複製 clone
0023デフォルトの名無しさんNGNG
いやそれがcadrとかけっこう便利だった覚えがある
最近はLisp書いてないので知らない。
0024デフォルトの名無しさんNGNG
head/tail リストの先頭/リストの末尾
succ/pred 後続ノード/先行ノード successor/predecessor
cond 条件 condition
suicide 鬱だ詩嚢
0025ボログラマーNGNG
>cur カレント current
MFC使ってると、Cursorもcurだなぁ。
00261NGNG
>>25
cursorはそのまんまcursorじゃないっすか?
0027デフォルトの名無しさんNGNG
どちかっていうと
cur -> cursor
current がそのまま currentな気がする。
省略するのどうせローカル変数だからどっちでもいいが。
00281NGNG
>>27
んじゃ好きな方って事で。

l/r 左/右 left/right
upper/lower 上(限)/下(限)
bound 境界
limit 制限
0029デフォルトの名無しさんNGNG
>>22
終了処理のことをtermなんて言うか?
とりあえず見たことないし、明らかに紛らわしいと思うんだが。
0030デフォルトの名無しさんNGNG
SIGTERM
0031デフォルトの名無しさんNGNG
>>29
init
uninit
とはどうですか?
0032デフォルトの名無しさんNGNG
initialize<->finalize じゃないのか?
0033デフォルトの名無しさんNGNG
どうでもいいことですけど、finalizeってなんか意味おかしくないですか?

ちなみに私がよくライブラリなどで見かけるのはterm terminate close
などですけど・・・
一般的に多く使われている終了処理の関数名って何でしょうね
0034デフォルトの名無しさんNGNG
finalize の方がちゃんと後始末をする感じが
出ているんではないでしょうか。
00351NGNG
>31
uninitなんて語があるの?

>29@`32
init/termと書いたのは単純に同じ4文字だからってだけでそれ以上の意味は無いです。
terminateだと、終端記号とかとも意味かぶるから、気持ち悪いかもね。
finalizeの方が意味が限定されてて良いかな?
0036デフォルトの名無しさんNGNG
uninitializeとかdeinitializeとかも同義で使われてるのを
見たことがある。それも、英語ネイティブの人のソースで……。

向こうの人も一貫されてないぐらいだから,どれでもいいのでは。
0037デフォルトの名無しさんNGNG
lookで調べたところ、uninitiateというのはあったが
uninitializeは無し。deinit...は全くマッチするもの無し。
という訳で、uninitialize/deinitializeという言葉は少なくとも
日常的な文脈では、あまり一般的じゃないようだ。
finalizeはちゃんとあった。

俺こういう用途でlookを使うことが結構多いので
会社のNTにも、findstr呼び出すだけの手抜きlook.batとweb2入れてる。
0038デフォルトの名無しさんNGNG
ところで、検査するサブルーチン名の最後に"Q"ってつけるのはどこの流派なのですか?
0039名無しさん@お腹いっぱい。NGNG
>>38
Mathematicaで見たことがあるなぁ
0040デフォルトの名無しさんNGNG
>>15

 何かを間に挟めんで両方やっちゃおう。
0041デフォルトの名無しさんNGNG
COMに、CoUninitializeという関数があるぞ。
■ このスレッドは過去ログ倉庫に格納されています