使用if else的最佳编码练习

时间:2013-05-08 06:11:18

标签: coding-style code-design

我对以下哪两种做法感到困惑, 我在下面提到了两种情况,请帮助我哪种风格看起来不错。

情景1:

风格1:

function xyz(int param)
{
  int val = TYPE1;
  if(param == some specific value)
  {
     val = TYPE2;
  }
}

风格2:

function xyz(int param)
{
  int val;
  if(param == some specific value)
  {
     val = TYPE2;
  }
  else
  {
    val = TYPE1;
  }
}

情景2:

风格1:

function xyz(int param)
{
  int val = DEFAULT_TYPE;
  if(param == some specific value)
  {
     val = TYPE2;
  }
}

风格2:

function xyz(int param)
{
  int val;
  if(param == some specific value)
  {
     val = TYPE2;
  }
  else
  {
    val = DEFAULT_TYPE;
  }
}

提前致谢。

3 个答案:

答案 0 :(得分:4)

这一个:

function(int param)
{
    return (param == some specific value) ? TYPE2 : TYPE1;
}

假设您的C语言支持条件(赋值)运算符。

答案 1 :(得分:2)

保持冷静,不要困惑

谈论javascript最佳实践 Douglas Crockford 会帮助你。

这是链接:

Code Conventions for the JavaScript Programming Language

    if (condition) {
        statements
    }

    if (condition) {
        statements
    } else {
        statements
    }

    if (condition) {
        statements
    } else if (condition) {
        statements
    } else {
        statements
    }

答案 2 :(得分:1)

对于方案1:  样式1足够好,因为它包含较少的行数并且避免不经常使用

else
{
 val = TYPE1;
}

在单行初始化中

int val = TYPE1;

在这种风格中,你在单行中做了两个style2,即初始化,然后是其他部分

对于方案2: 由于同样的原因,样式1再次出色。减少你输入更好的代码!!