- PR -

空のIF文を書きますか?

投票結果総投票数:260
許容できる 85 32.69%
許容できない 148 56.92%
どちらでもよい 27 10.38%
  • 投票は恣意的に行われます。統計的な調査と異なり、投票データの正確性や標本の代表性は保証されません。
  • 投票結果の正当性や公平性について、@ITは一切保証も関与もいたしません。
投稿者投稿内容
rain
ぬし
会議室デビュー日: 2006/10/19
投稿数: 549
投稿日時: 2008-11-04 12:08
あ、大事なこと忘れてた。

言語はVB.NETとのことですが、私は勝手に Option Strict On という前提を置いて回答しちゃいましたが、問題ないですか?
たぶん回答された皆さんも同じだと思っていますが。
まりも
ベテラン
会議室デビュー日: 2006/08/19
投稿数: 77
投稿日時: 2008-11-04 12:12
日本語(自然言語)で、

もし(条件)ではなかったら(処理)する。

ではなく、

もし(条件)だったら何もしなくてそうじゃなければ(処理)する。

と表現したほうがわかりやすいと、コードを書いた人間が力説できるならあえて直す必要はないと思います。
よって許容できる。

ただし、自分でそういう状況に遭遇したことはこれまで一度もないし、
考えても具体的な状況は想像できませんでした。
にー
常連さん
会議室デビュー日: 2006/04/30
投稿数: 35
投稿日時: 2008-11-04 22:05
私は許容できます。

理由は、
  if (条件) { 処理A } else { 処理B }
とあるのを、処理Aが必要でなくなった場合に、
  if (条件) { //処理A } else { 処理B }
と、私はします。

この格好は、今回の話題の形と然程変わらないと私は思うので、
「許容できる」です。

脱線しますが、
  if (!条件) { 処理B }
といった処理に、条件に合致する処理Aを追加する時に、
  if (!条件) { 処理B } else { 処理A }
とする方が、私は許容できないかなぁ。
cordwainer
常連さん
会議室デビュー日: 2007/04/21
投稿数: 34
投稿日時: 2008-11-04 23:23
許容に一票。

にーさんとほとんど同じです。

違うところは、処理を追加する時、if文を書き換えてしまう場合が多い(一人メンテの時は特に)。多人数メンテの時は、よほど汚い時以外はしませんが。



未記入
常連さん
会議室デビュー日: 2007/02/21
投稿数: 29
投稿日時: 2008-11-04 23:59
却下じゃ〜!

Visual StudioのC#では、整形すると
if (条件)
{
}
else
{
 処理
}
になるが気にならない?1画面に表示できる行数が限られているのに!
Optionを変更すればどうにでもなるけど、標準がこれだからね〜。
ついでに標準だとTabも空白4つに変わっちゃうんだもん、プンプン!

if (条件) {}
else
{
 処理
}
でも括弧の位置が揃ってないのでムズムズする。

if (条件) {
} else {
 処理
}
これで何となくきれいに見えるけど、間違えて行を消したのかと不安になる。

基本、ifを書きたくない。処理を出来るだけ直列に書くことで処理を単純化し、
メンテしやすくしたいな〜と思う今日この頃。
将来の並列処理を考えて...れっつご〜F#


にーさんの
>if (条件) { //処理A } else { 処理B }
って文法エラーではないかと。
判る人だけに向けて書いているのだと思いますが、みんなが判っているわけでは
ないので...。お願いします、初心者にも理解しやすく。
R・田中一郎
ぬし
会議室デビュー日: 2005/11/03
投稿数: 979
投稿日時: 2008-11-05 09:57
許容できません。
理由は、if 分はなるべく短く簡潔に書くことにしているからです。
if ブロックを冗長化する方が、バグを作りこみそうで怖いです。
_________________
R・田中一郎 -  R.Tanaka.Ichiro’s Blog
冬寂
ぬし
会議室デビュー日: 2002/09/17
投稿数: 449
投稿日時: 2008-11-05 10:19
コード:
if (条件) {
    // 現状、影響無いけど、本当はここになんたらコードを入れたいんだが思いつかん。
    // 誰か思いついたら入れておいてよ。
} else {
   コード
}


という事があるので、許容派。

でも、そんなの許していたらコードがごちゃごちゃして読みにくくなるから削除するべし!という意見もうなずけるので、結局どちらでもいい派。

# 大きくなったら、wikiのtodoあたりに放り込んで削除しておいた方がスッキリしていいのかね。
rain
ぬし
会議室デビュー日: 2006/10/19
投稿数: 549
投稿日時: 2008-11-05 10:32
引用:

冬寂さんの書き込み (2008-11-05 10:19) より:

# 大きくなったら、wikiのtodoあたりに放り込んで削除しておいた方がスッキリしていいのかね。


そういう場合、コメントとして
コード:
' ToDo: ここに確認処理を追加!(VB)
// ToDo: ここに確認処理を追加!(C#)


というふうに書いておけば、VisualStudio のタスク一覧ウィンドウに載るので、それで把握できそうです。

スキルアップ/キャリアアップ(JOB@IT)