よくきたはてダ このページをアンテナに追加 RSSフィード Twitter

2008-06-11

人間って疲れる生き物なのですよ

PLAIN TEXT

PHP:

1.

2. if (hoge()) {

3. }

4. if (!hoge()) {

5. }

と書けば良いのでは、という事です。

PHP 意図を伝えるコーディング | Shin x blog

人間疲れると「!」を見逃すことが少なくありません.

個人的にはここがどうしても気になるのでTPOありつつも可能な限り比較条件を書くようにしています.

yandodyandod 2008/06/11 16:57 冗長ですけど僕も if ($hoge === true) と書きます。
逆でも!もけっこうミスになりがちなので if ($hoge === false) ですね。

elfelf 2008/06/11 17:44 id:yandod>>

仰るとおりですね.しいていうと==でやっていたid:elfは中途半端

iakioiakio 2008/06/11 19:01 if (!!!hoge()) なら見逃さない!!!(見間違う可能性はあるけど)

通りすがり通りすがり 2008/06/11 22:09 個人的にはそこは見落とさないので!使って書きたいですね。
何かのコーディング規約でもこのような冗長な比較を禁じているものを見たことがあるので、二つの流派がある模様です。
=に書き間違えないように true == $hoge って書こうって言う流派もありますよね。

shin1x1shin1x1 2008/06/12 10:05 なるほど。見間違えないように、という話は聞いたことあります。
個人的には!を見落とすというのはあまり無いですけど。

ただPHPの===は「厳密に型まで見る」という意図が込められている気がして私はちょっと抵抗があったりします。

elfelf 2008/06/12 13:41 > ただPHPの===は「厳密に型まで見る」という意図が込められている気がして私はちょっと抵抗があったりします。

僕は可能な限り型変換されないように努力して実装するようにしています(するときは明示的strvalなどをかます).
ので自分コーディング規約的には問題ないという.

elfelf 2008/06/12 13:42 shin1x1 さん>>

名前抜けてた(何

通りすがり さん>>

> =に書き間違えないように true == $hoge って書こうって言う流派もありますよね。

これは確かに!! まずは覚えておきます.

elfelf 2008/06/12 13:42 iakio さん>>

> if (!!!hoge()) なら見逃さない!!!(見間違う可能性はあるけど)

おもしれー!!

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/elf/20080611/1213170486