ヨーダ記法

https://ja.wikipedia.org/wiki/%E3%83%A8%E3%83%BC%E3%83%80%E8%A8%98%E6%B3%95
プログラムのコーディングスタイルの一種。
変数を何らかのリテラル値と比較する条件式を書くとき、左側にリテラル値を書き、右側に変数を書くというスタイル。
スターウォーズヨーダがこういう普通とは逆転した感じの英語を喋っていたことから名付けられたらしい。

利点:条件式と変数への代入を間違えてしまうことが無くなる

value == true  // value が true と等しいかが評価結果になる
value =  true  // value に true を代入して、代入された値(true)が評価結果になる

利点:NullPointerExceptionを防止できる (主にjavaの文字列比較の際のメリット)

value.equals("test") // valueが"test"と等しいかが評価結果になる。ただし、valueの内容がnullの場合、nullのequalsメソッドを呼ぼうとするためNullPointerExceptionが発生する。
"test".equals(value) // valueが"test"と等しいかが評価結果になる。valueの内容がnullでも問題ない。

欠点:可読性が悪い

メリットが上の2点しかないわりに、可読性が低い。
環境によっては上の2点の問題はIDEコンパイラで検出可能であるため、可読性を悪くして問題に対処するというトレードオフが成立しない。