皆さん、こんにちは

ソフトブレインのまっちゃんです

いつも弊社ブログをご覧いただきありがとうございます

本日は、プログラミングの記法を2つほど、紹介したいと思います

■ヨーダ記法
ヨーダ記法は条件式の左辺に定数を置いて比較する方法です

ヨーダ記法を用いた条件式はこんな感じです

if(1==value)
ヨーダ記法を用いない条件式はこんな感じです

if(value==1)
メリットは、比較演算子「==」を代入演算子「=」で記述しても、定数への変更はできないため、コンパイラでエラー検知してくれます

しかし、ヨーダ記法を用いない場合、変数への代入のため、コンパイラによってはエラー検知してくれません

デメリットは、可読性が落ちることです

通常、「valueは1か?」と読むところを、ヨーダ記法の場合、「1はvalueか?」と読むことになるため、慣れていない人は、可読性が落ちます

そんなヨーダ記法ですが、名前の由来はスターウォーズのヨーダが、特殊な文法で話すことからきているそうです

命名者のセンスに脱帽です・・・
最近の言語は、条件式内での代入を許容しない作りになっているため、可読性が落ちるヨーダ記法は賛否が分かれているようです

■ハンガリアン記法
ハンガリアン記法は、変数名の頭に識別子としてデータ型の情報を付与する方法です

例えば、文字列を扱う変数は、str変数名にしたり、ポインタ型の変数は、p変数名にしたりします

メリットは、変数のデータ型が分かりやすくなるので、長めのコードを見るときも一々変数の定義へ飛ばなくても、データ型が読み取れることです

デメリットは、データ型の変更が発生したときに、変更箇所が多岐に渡ったり、新しいデータ型を扱うたびに、変数名の命名に頭を悩ませることでしょうか

最近では、開発環境によって、変数にカーソルを合わせるだけで、データ型を表示してくれたりするので、メリットよりデメリットが目立ち、非推奨のところも多いようです

以上、プログラミングの記法の紹介でした

1950年頃にFORTRANやCOBOLなどのプログラム言語が登場したらしいので、プログラム言語の登場から約半世紀

バグの少ない、見やすいコードを目指した先人達の創意工夫には頭の下がる思いです

それでは
