>>979

> done が bool であるならば
重要な一言でましたね。

> if(done) .. は書くけど
こう書くにはdoneがboolであると知っていなければならない。
だけど、さっきの一言でわかるように、この行を見ただけでdoneがboolなのかはわからない。

> if( price > 100) .. は書くけど
これはこの行を見ただけでifの中がboolだと明確。

> if((price > 100) == true) .. とは書かない。
だからこうは書かない。当然。

> if(done) .. は書くけど
だけど、この行はこれを見ただけではわからない。

> if(done == true)
だからこう書くほうがいい。これはdoneがboolであることをこの行で明確化するのが目的。
目的を考えると、なにかと言ってくる、if((done == true) == true) を使っての反論は的外れ。
("明確でないもの"を明確にするのと、"明確になっているもの"を明確にするのとでは、意味がぜんぜん違う)