Pergunta

Como é que é importante para facilitar a leitura que o código seja desta forma:

public void DoStuff()
{
    var v = new Object();
    v.PropertyID = "abc";
    v.Type = "abc";
    v.Style = "abc";
    v.SetMode(Mode.Abc);
    v.Draw();
}

vs.

public void DoStuff()
  {
    var v = new Object();
        v.PropertyID = "abc";
        v.Type = "abc";
      v.Style = "abc";
       v.SetMode(Mode.Abc);
   v.Draw();
    }

I tendem a gostar do primeiro estilo melhor, isso torna as coisas fáceis de ler, como você gentilmente orientar as pessoas para o primeiro e longe do último? Ou será que você não?

Foi útil?

Solução

As pessoas realmente escrever o código que se parece com o último? Isso é um pesadelo de manutenção.

Eu diria que não é tão importante que seu código convenções de formatação são - mais que você segui-las de forma consistente. O exemplo anterior não é consistente e, portanto, ilegíveis e insustentável.

Se você está tendo problemas orientar as pessoas em direção a consistência, tê-los imaginar voltando para manter o código altamente inconsistente em um ano.

Outras dicas

O formato é muito importante, embora não essencial. I tendem a ficar um pouco irritado se eu ver o código como este último. Se você está tomando o tempo para escrever o código, certifique-se de tomar o tempo para formatá-lo corretamente.

Se fosse o meu código, eu faria assim:

public void DoStuff()
{
    var v = new Object();

    v.PropertyID = "abc";
    v.Type       = "abc";
    v.Style      = "abc";

    v.SetMode(Mode.Abc);
    v.Draw();
}

Desta forma, fica claro que as linhas são atribuições de propriedade e quais são chamadas de método.

Eu também concordo com a resposta de Jamie, que disse que "formato é muito importante, embora não essencial." O que importa é que a formatação não é tão ruim que prejudica a capacidade dos outros para lê-lo. Eu não acredito que um punhado de guias extra ou novas linhas vai fazer uma enorme diferença para um programador competente na maioria das vezes .

No segundo exemplo, suas chaves não são igualmente recuado.

O espaçamento é importante para mim ler o código. Se você escrever o código na minha empresa - Eu provavelmente vou ter que lê-lo em algum ponto. Se você não formatar seu código -. Vou usar um autoformatter para conseguir o que eu preciso

O estilo é extremamente importante quando se trabalha em equipe. Por isso, não importa o estilo que você escolher, apenas certifique-se todos concordam sobre ele .. e, em seguida, fazer cumprir o acordo. Defina o seu IDE para auto-format seu código .. e fazer IDE certeza de todos é definir o mesmo.

Se você quer ser gentil, dar-lhes código completo para ler. Se você quer ser mau, introduzem erros sublte como este em seu código:

if (x==y);
   DoSomething(); else
DoSomethingElse();
while(Whatever)
SomeFunction();

(Se eles encontrarem o bug em menos de um dia, você não está sendo sublte suficiente.)

Eu prefiro o seu espaçamento, embora eu faria um pouco diferente. Eu acredito que a pergunta mais importante é como convencer alguém a sua abordagem é melhor: Código de formatação pode ser muito subjetiva. Algumas pessoas se opõem, porque leva muito tempo para obter direito. Outros objeto porque a equipe não tem nenhum padrões de codificação. Alguns objeto porque a sensação é amontoados em seus pescoços.

O melhor método é trabalhar com sua equipe para construir consenso de que a sua abordagem particular é a melhor prática. Isso é verdade se você é o chumbo, ou se você é um contribuinte individual.

Uma vez que o consenso da equipe é geralmente aceite (pode não ser universal), então eu acho que as revisões de código são o melhor lugar para garantir que a equipe práticas sejam seguidas. Eu sugiro que você vai encontrar a pressão social é a maneira mais eficaz para encorajar outras pessoas a seguirem uma melhor prática aceita. O encurralamento muitas vezes é verdade; é difícil para uma pessoa para conduzir esse tipo de coisa na equipe sem consenso.

Aqui estão algumas das minhas respostas StackOverflow relacionados

Como já foi dito, o primeiro exemplo é a norma; o segundo difere dele.

Além disso, certifique-se todos os que trabalham no mesmo conjunto de arquivos tem a mesma convenção para o que é um 'guia' é. É melhor para definir isso como um número de espaços e para garantir que todos de editores de texto e de IDE concordar.

Ele fica chato quando três ou quatro pessoas estão trabalhando no mesmo repositório SVN e editar cada arquivos com diferentes convenções de espaçamento.

A segunda maneira realmente não guia bem. Evitá-lo.

Eu também acho que as pessoas tendem a se empolgar com a formatação assim. Em um mês, um outro cara vai vir e quer este formato

public void DoStuff()
  {
    var v                = new Object();
        v.PropertyID     = "abc";
        v.Type           = "abc";
        v.Style          = "abc";
        v.SetMode        (Mode.Abc);
        v.Draw           ();
  }

Esta chega a ser muito bobo e bastante difícil de trabalhar.

Se as pessoas estão de codificação assim, pergunta o seu raciocínio e programação habilidade.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top