@kmizu isPossiblle()の説明として,isEnableがtrue/falseのときはtrue/falseと記述したいか,isEnableと等価と記述したいかという違いな気がします.
2021-06-17 09:35:27@TypedTypelessTy そこがわからないんです。どっちで書こうがプログラムとしては、「常に」等価になるはずで、後は可読性の問題に落ちると思いますが、変数名で既に意図が説明してある以上、if(...) ... else ... にしても、可読性が上がるという感覚がわからないといいますか。
2021-06-17 09:39:10@kmizu はい.可読性の問題だと思います. PossiblleとEnableは意図が微妙に違うはずで,だからisPossibleと関数にしているのではないでしょうか. とすれば,isEnableのとりうるすべての状態に対してisPossibleを列挙するという書き方も理解できなくはありません.
2021-06-17 09:46:12isPossibleの戻り値とisEnabledが文脈的に別の値であることをコード上で表現したいんだとしても、結局関数化しちゃうなら呼び出し側からは関係ないよなあ 「将来的にisPossibleの条件にisEnabled以外の条件が追加されたときの修正範囲をif条件の中に限定する」以上の価値はない気がする twitter.com/kmizu/status/1…
2021-06-17 09:48:07これと同型の意見を複数拝見したので、素朴な疑問なのですが、結局、どっちで書こうが「内部実装の問題に過ぎない」ので、別の書き方をする意味がわかってないです。boolean get*isPossiblle()だとしても、私ならreturn isEnabled; をそのまま返します。 自然言語に一対一対応させると妙に見える❓ twitter.com/kurema_makoto/…
2021-06-17 09:24:28PHPの場合、isEnabledは「なにかしらの文字列、0以外の数値」等々の値が入っており、内容にかかわらず中にtrueと判定できるデータがセットされているかを見る場合に使います。 フォームの必須チェックなどでよく見かけます。 自分はこの辺を見ながら精度を調整しますね。 php.net/manual/ja/type… twitter.com/kmizu/status/1…
2021-06-17 09:51:12関係ない話題。初学者のみならず、仕事でコード書いてる人でも、 if(isEnabled) { return true; } else { return else; } と書いちゃう人と時々遭遇するのだけど、これはなんでなんだろう。 ↓
2021-06-17 00:13:47@kmizu ただ,ぼくもreturn isEnableで「isPossibleはisEnableと同じだよ」ぐらいの抽象度の方が読みやすいと判断します.
2021-06-17 09:53:29isEnabledの名前に引っ張られてる気がするけど、言いたいことは↓こういう書き方はセンスないよっていうだけですよね。 if (x == 1) { return true; } else { return false; }
2021-06-17 10:02:02もしやるとしたら本来ならisEnabledでなにかやる処理があるけど諸事情で今はない、ここではないんだけど他のコードの箇所とスタイルを合わせるために同じように書いてる、とかかなぁ・・・ twitter.com/kmizu/status/1…
2021-06-17 10:06:40