Bom dia caros!
Gostaria de perguntar a vocês, qual a melhor forma de indentar o código seguindo padrões como pattern design?
Alguém teria um bom material sobre indentação?
Nestes exemplos abaixo, qual seria forma correta?if (codicao){
}
ou
if(codicao)
{
}
Quando devo pular linha?
Muito obrigado,
Att, André Vieira
As IDE não segue o padrão :!: :?:
NetBeans :arrow: SHIFT + ALT + F
Eclipse :arrow: CTRL + SHIFT + F
:thumbup:
Depende de:
[list]Empresa que você trabalha. Cada empresa tem (ou deveria ter) um guia das convenções que devem ser utilizadas.[/list][list]Projeto que você está contribuindo. Projetos opensource tbm tem suas guidelines.[/list]
Agora, se nenhum dos dois itens acima se aplicarem, depende de você. O que você mais gosta? O que facilita sua leitura? O importante é seguir a convenção adotada no projeto inteiro.
Eu gosto de:
[code]/**
/
// linha em branco
package foo;
// linha em branco
// imports em ordem alfabética
import java.io.;
import java.util.*;
// linha em branco
public class Teste {
// linha em branco para separar o miolo da classe de sua definição
// métodos com corpo pequeno sem linhas em branco
// do contrário, separar igual à classe
// () do método junto ao seu nome
// espaço para abrir o bloco ({)
public void teste() {
// faz alguma coisa (máximo 3 linhas)
}
// separar TUDO que estiver dentro de parênteses com espaco
// depois do parêntese de abertura e antes do parêntese de fechamento.
// ↓ ↓
public void teste2( int parametro ) {
// declarar uma variável por linha
// agrupar por tipos ou por propósito
int a = 1;
int b = 2;
int c = 3;
int[] d = new int[]{ 1, 2, 3 };
// SEMPRE usar chaves em ifs, fors, etc. com apenas uma linha
if ( a != 2 ) {
System.out.println( "a não é 2!" );
}
if ( a == 1 ) {
// índices de arrays sem espaços.
// eu usei por muito tempo com espaços, mas de uns 2 anos para cá
// eu tenho preferido sem espaço
System.out.println( d[0] );
// mas quando existe alguma expressão, eu ainda prefiro espaços
System.out.println( d[ ( 1 + 3 / 2 ) ] );
}
// separar operandos com espaços
System.out.println( 1 + 2 + 3 );
}
// linha em branco para separar o miolo da classe de sua definição
}[/code]
Essas são apenas algumas práticas q eu lembrei agora de bate pronto, mas tem mais.
Outra coisa legal é seguir o Java Code Conventions.
Muito Obrigado Galera!
Solucionou minha dúvida.
Até mais ver.
tem o Checkstyle não sei se sever …