O “estilo” de código é o padrão (ou a falta de um) que você segue quando está escrevendo código fonte. Existem diversos padrões de escrita de código e a linguagem Java, inclusive, tem uma definição própria sobre como é o seu padrão de escrita de código.
O Frank Sommers faz alguns comentários sobre estilo de código e como “obrigar” pessoas a trabalhar com isso e termina com uma questão, você usa alguma ferramenta de controle de estilo de código? Você tem regras de estilo de código ou cada um na equipe escreve do jeito que quer?
Respondendo ao título do tópico: Sim, eu valorizo, e muito, o estilo do código. Acredito que o código se torna Muito mais legível quando segue um padrão mínimo. Particularmente eu discordo (e portanto não sigo) algumas das diretrizes do Code Conventions da Sun, mas primo pela boa organização, apresentação e disposição dos códigos nos arquivos. Não utilizo ferramentas (existem?) para isso, apenas sigo umas regrinhas básicas que com certeza fazem muita diferença.
Meu pensamento é basicamente como o colega acima, valorizo, talvez até demais o estilo e arrumação da coisa.
A cada projeto sempre busquei um melhor estilo de código, e já mudei/melhorei bastante.
Depois que vi a convenção da Sun, muita coisa seguia o meu padrão, algumas eu assimilei e outras eu ignorei
Agora, sobre ferramentas… utilizo tipo um netbeans da vida que tem suas identation engines da vida. Mas isso não é nada que arrume tudo automaticamente também né.
No Eclipse tem um esquema chamado Templates se eu não me engano. Você cria um padrão para praticamente tudo no seu código, como identação, posição das chaves, cor, variáveis, etc. Não sei como funciona, mas sei que existe
Depois é só usar o atalho (SHIFT + CTRL+F) para ele organizar de acordo com o seu template. Acho que até nome de variável de acordo com o tipo você pode selecionar.
Acho bem interessante existir um padrão sim, pelo menos pra cada projeto.
Eu de ferramenta só costumo usar a formatação automática do eclipse mesmo, junto com o Ctrl+Shift+F hehehe, e junto com um perfil do formatter do eclipse ajustado para mais colunas pra ocupar melhor minha tela. O que indica no serviço umas 115 colunas e em casa umas 140 ±.
Seguir um padrão no código é muito importante para a continuidade do projeto, não adianta você ser “o cara”, se no dia que você abandonar o projeto o seu sucessor não conseguir entender nada do que você fez.
Sempre assumo o padrão do Java, e também uso os comentários javadoc, mesmo que eu gaste 1/4 do meu tempo comentando o que eu fiz. Uma vez eu peguei um projeto que não tinha uma identação muito boa e tinha 0% de cometários, ai foi foda… :?
O atalho CTRL + SHIFT + F também funciona no NetBeans :lol:
O que menos gosto, é ter o limite das linhas de 80 caracteres, mas isto é bom para evitar a scrollbar horizontal, mas em blocos de códigos com muitos ifs e loops, fica dificil manter a tabulação dos 80 caracteres…
Também dá os alertas de que esta faltando javadoc… ou q o comentario para o javadoc ta mal feito…
Até espaços a mais nos finais das linhas, primeira letra maiuscula em nome de métodos e variaveis… ifs esquisitos ele acusa também… acho ele idel para manter um código padronizado, e para isto tem q ser chato, não tem outro jeito…
O checkstyle realmente é muito bom… mas infelizemente ele não resolve tudo…
Segundo Brian W. Kernighan e Rob Pike em “A Prática da Programação”: “o propósito do estilo é facilitar a leitura do código para você e para as outras pessoas, e o bom estilo é crucial para a boa programação.”
E de cara no início do capitulo ele apresenta um exemplo em que o código fonte deve ter sofrido atualização e o comentário não (vocês já sabem das conseqüências…).
O fato é que bons programadores, acabam programando para eles próprios e esquecem que nem todos são ou estão iluminados pela mesma luz (risos).
Conforme o livro, fazem parte deste assunto:
Nomes - identificadores em feral, o Java já possui e influência bons padrões para nomes de pacotes, classes, métodos e para por aí. Os programados que definem os padrões para variáveis locais, parâmetros etc.
Expressões e declarações - depende novamente do conhecimento do programador, acrescentado aqui o conhecimento de matemática… neste tópico a ausência de comentários no código é quase regra geral.
Consistência e idiomas - melhor não comentar… quem aqui não pegou classes com nomes BrasUSA!!!
Macros - não se aplica…
Números mágicos - se comentar é castigo, imaginem o uso de constantes… para quê ou para quem?
Comentários
Esta parte é fabulosa… vocês tem que ler os exemplos, até parece que ele andou lendo algumas APIs ou frameworks populares… vou dar uma colher de chá:
/* retorna SUCESS */
return SUCESS
E entre as conclusões…
“(…) o código bem escrito é mais fácil de ler e entender. Ele contém menos erros e provavelmente é menor que o código que foi jogado sem cuidado e nunca foi aperfeiçoado. (…)”
Eu sempre formato o meu código direitinho, aliás sou super chato com isso!!!
Tem que estar tudo sempre muito bem indentado.
A pessoa que, por acaso precise mecher no código futuramente agradece…mesmo sem muitos comentários, torna mais fácil a visualização e o entendimento, o famoso ‘decifrar’ o código alheio.
Fico impressionado com a quantidade de códigos-lixo que existem por aí…
A identação de código é automática, vc pode usar Ctrl + Shift + F para identar o código… só um estágiário muito descuidado pra não conseguir identar no NetBeans.
Inclusive vc pode controlar o estilo de geração de listener como:
:arrow: Classes Internas Anônimas;
:arrow: Classe Interna Única;
:arrow: Classe principal.