isHogeってメソッドから返ってくるのがfalseだった時の条件を書く場合 (! isHoge) と書くのと (false == isHoge) って書くのはどちらがいいのだろうとかふと思ったんだけど、どちらの方がいいのでしょうか?
2010-06-19 17:48:51@akineko わたしは後者ですね。trueの時に処理したいときは(isHoge)って書いちゃうときもありますが、なるべく(isHoge==True)と、比較対象を書くようにしてます。(isHoge)と(!isHoge)を見間違いそうになるのと、条件増えたときに見難そうなので。
2010-06-19 17:54:30@bleis あーなるほど、今回はライブラリのメソッドなのですが自作の場合はそれが良さそうですね。あと、やっぱ好みですか。僕も ! よりも == でやった方が見やすいと思うのでこっちにしときますw
2010-06-19 17:54:42@_hitsugi やっぱそうですよね。いつもは ! って書いてたんですけど、これ==で書いた方がわかりやすいよなーと思ったので
2010-06-19 17:55:49@osapon そうですよね。trueの場合は僕もそのまま==とかせずに書いちゃう時はありますけど、ちゃんと書いた方がわかりやすくていいですよね
2010-06-19 17:56:46あと、条件式で null == hogehoge と hogehoge == null の2種類の書き方を見かけるのですが、 null とかを先に持っていく意味はなんなのだろう? 普段は後者の hogehoge == null とかって書き方なんだけど前者の方がいいの?
2010-06-19 17:59:10@akineko 私個人でプログラミングするのであれば一目で分かりやすい後者を選びますが、実務の場合はその環境でのコーディング規約に合わせますね。
2010-06-19 17:59:16@akineko 間違えて 変数 = 定数 って書くとエラー吐かないけど、 定数 = 変数 って書いたらエラー吐いてくれるからだったような
2010-06-19 18:00:15@akineko 定数値への代入はコンパイルエラーとなるから、間違えて=にしてもコンパイル時点で気付くってやつですかね? 結構言われてますが、TLの方々だと、そもそも変数をconstにしとけば問題ないとか・・・
2010-06-19 18:00:59@akineko 後者だと、typoして hogehoge = null になってしまった時にデバッグでハマルから前者にしよう!みたいなのを見かけますね。わたしは後者で書いちゃいますが。(そしてtypoしてハマル)
2010-06-19 18:02:03@akineko 「定数を先に持って行くと=を一つ書き忘れてもエラーになるから安全(変数が先だと=が一つでもエラーにならない)」って話を聞いたことがあります。個人的には定数があとの方が好きですが
2010-06-19 18:02:09後ろに変数を持っていくのは、誤った代入が発生しないようにと聞いたことあります。それ以前に誤った代入が発生すること自体がバグのようにも感じますがwもっと深いわけもあるのでしょうかね? RT @akineko: null == hogehoge と hogehoge == null
2010-06-19 18:02:22@akineko hogehoge = null と誤記したときにバグになるのでその対策ですね。最近はIDEが優秀だったり言語的に不可だったりであんまり気にしなくてもよくなってきました。
2010-06-19 18:03:40. @kyubuns @rofi @aetos382 @osapon @kyo_ago @ryo_haduki なるほど、typoして = になった時の代入を防ぐ為だったんですね。ありがとうございます
2010-06-19 18:04:04