22
33

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

変数や関数に名前を付けるときによく使われる省略形

Last updated at Posted at 2018-02-07

初カキコ…ども…

初心者の方がだんだんプログラミングできるようになってくると、次に他人が書いたコードを見る or 他人にコードを見せるケースが増えてくると思うんです。
そうなると人のコードの理解を速くしたい!、分かりやすいコードを書きたいってなりますよね?私はそうでした。
そこで今回は変数や関数に名前を付けるときに参考になるような省略形をまとめてみました。

変数によく使われるもの

略称 元になった単語、由来 用途
c, ch Character 1文字扱う変数
s, str String 文字列を入れるとき
i, j, k fortranの暗黙の型宣言 整数。特にループのカウントによく使われる
buf, buff Buffer バッファ。一時的にデータを保存する場所
temp temporary とりあえず、仮の
n, num Number of ~ 整数、何らかの数を指す
x, y, z (x,y,z) 座標
r Radius 半径
p Pointer ポインタ変数とそうでない変数を区別したいとき
rect Rectangle 長方形
func function 関数
arg argument 引数

これらの表現がよく使われます。
またよく使われるがゆえに他の関数でも頻繁に使用するので、使用する際にはスコープ(変数が使用できる範囲)をローカルに留めておくのを強くお勧めします。
例えば略し方によってはstrがstringかもしれないし、startかもしれない…混乱しますね。

システムハンガリアン記法

変数や関数の型が分かるようにつける接頭語。今では非推奨。

略称 単語 意味
b BOOL型 true/falseを返す論理型
by BYTE バイト型 符号なし1バイト整数
n,i Number,Integer 整数型
ui unsigned int 符号なし整数
w WORD ワード型
dw DWORD ダブルワード型
h HANDLE ハンドル型

ただし現在では、
・修正の際にデータ型を変更すると変数名も変えなきゃいけなくなるので面倒。保守の障害になる。
・Microsoftでは過去に採用されたが.NET Framework で廃止。
と今ではあまり使われなくなりました。過去のソースを読むときに役立てるくらいでちょうどいいかも。
そもそもVisual StudioなどのIDEでは変数にマウスを乗せれば型が表示されますしおすし。不必要な情報は追加しないというのもプログラミングでは大事な考え方です。

母音を消して略すパターン

略称 単語 用途
ctr Control 制御、指令(値)
trgt Target 対象、目標(値)
cmd Command 指令
msg messege (処理に関する)メッセージ
spd Speed 速度
mv Move 動作
cnst Constant 一定、定速
md Mode モード
sts Status ステータス
cnfg configure (設計)構造

母音を消しても良く使われる単語なら何を指しているのか把握しやすいので、これらの表現も良く使われます。

まとめ

よく使われるパターンを覚えておくと人のコードを読むのが楽になる、自分が書くときに統一感が出る、名前が冗長じゃなくなる、といいことずくめです。
上記に挙げた以外にも命名規則はありますし、2(to)や4(for)などのスラングも使えます。
自分でも色々調べてみてください。

参考文献

22
33
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
33

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?