Boa noite a todos.
Estou com uma dúvida em relação a boas práticas de organização de código dentro de classe para melhor legibilidade, relacionado a:
- Posicionar métodos antes ou depois dos getters e setters;
- Organizar os getters e setters entre si.
Em relação ao primeiro item, tem alguma diferença ou recomendação entre os trechos abaixo?
public class Filme {
private String nome;
private int anoDeLancamento;
private int duracaoEmMinutos;
private boolean incluidoNoPlano;
private double somaDasAvaliacoes;
private int totalDeAvaliacao;
// getters e setters no inicio da classe?
// Demais métodos abaixo?
public void exibeFichaTecnica() {
// To do code
}
public void avalia(double nota) {
// To do code
}
public double pegaMedia() {
// To do code
}
}
Ou:
public class Filme {
private String nome;
private int anoDeLancamento;
private int duracaoEmMinutos;
private boolean incluidoNoPlano;
private double somaDasAvaliacoes;
private int totalDeAvaliacao;
// Demais métodos abaixo?
public void exibeFichaTecnica() {
// To do code
}
public void avalia(double nota) {
// To do code
}
public double pegaMedia() {
// To do code
}
// getters e setters no final da classe?
}
Em relação ao segundo tópico, para organização dos getters e setters, qual o mais recomendado?
Agrupados como a seguir:
// Getters em primeiro grupo
public String getNome() {
return nome;
}
public int getAnoDeLancamento() {
return anoDeLancamento;
}
// Setters em segundo grupo
public void setNome(String nome) {
this.nome = nome;
}
public void setAnoDeLancamento(int anoDeLancamento) {
this.anoDeLancamento = anoDeLancamento;
}
Ou agrupar por par de get e set para cada variável, conforme abaixo?
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public int getAnoDeLancamento() {
return anoDeLancamento;
}
public void setAnoDeLancamento(int anoDeLancamento) {
this.anoDeLancamento = anoDeLancamento;
}
Caso a questão tenha ficado confusa, só me avisar para esclarecer.