Boas Praticas de programação!

Enviada por Celio Cantalice 
Celio Cantalice
Boas Praticas de programação!
26 de February de 2016 às 07:35PM
Boa tarde pessoal!!

Depois de algumas vezes debatendo com um colega, e sem um consenso sobre o assunto, resolvi postar aqui o assunto que envolve nossa discussão.

O debate envolve os atribuição e recuperação de valores para propriedades instanciadas nas classes por meio de get e set como em toda POO.

Digamos que uma classe cliente tem 15 propriedades:

nome, endereço, bairro, cidade, estado, cpf ...

Em minha concepção, boa prática de programação é quando você escreve um código limpo, legível e de fácil manutenção, assim sendo a forma como eu trataria a atribuição e recuperação dos dados paras as propriedades seria da seguinte forma:

//Função para atribuir valores as propriedades da classe

public function setValor($propriedade, $valor){

$this->$propriedade = $valor;

}

//Função para recuperar valores das propriedades da classe

public function getValor($propriedade){

return $this->$propriedade;

}

Pois desta forma, reduzo a quantidade de código e ganho tempo. Sei que existem por ai outras formas de fazer isso. Até estive lendo e praticando algo com métodos mágicos, mas não cheguei a nada satisfatório, nem realizei uma pesquisa a fundo sobre o assunto.

Meu colega defende de pés junto que o que estou fazendo é errado. Que isso não é boa prática de programação. Que para ser boa prática eu deveria criar uma função get e set para cada propriedade. Mas não entra na minha cachola teimosa que boa pratica é escrever 30 linhas(por exemplo) se eu posso escrever 10.

Então por aqui eu paro. E aguardo as considerações desta comunidade que muito já me ajudou.
Jamesbond
Re: Boas Praticas de programação!
13 de December de 2016 às 05:39AM
Costumes, costumes e costumes. Você não está fazendo muito diferente dele já que por si o NetBeans escreve os getters e setters e você toda vez que quiser obter algo terá que escrever novamente:
$getValor($this->localhost);

Se você utilizar uma aplicação de 200 propriedades terá que repetir esse mesmo código 200 vezes.
E ele apenas $this->getValor();
Então não faz diferença alguma, um se adapta a um modo X.

Como existe pessoas que não usam getters e setters.

Eu pessoalmente costumo declarar um método para cada propriedade, até mais e obrigado pelo seu ponto de vista.
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.