Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fiz esses modelos de class simples, eu queria saber se estou no caminho certo??
Class: Olho
class olho{
private $cor,$estado;
public function __construct($cor = null, $estado = null){
if(is_null($cor))
$this->cor = 'castanho';
if(is_null($estado))
$this->estado = 'fechado';
}
public function abrirOlho(){
return $this->estado = 'aberto';
}
public function fecharOlho(){
return $this->estado = 'fechado';
}
public function piscaOlho(){
echo $this->abrirOlho().'<br />';
echo $this->fecharOlho().'<br />';
$this->estado = 'piscando';
}
}class boca{
private $tamanho,$cor,$halito,$estado;
public function __construct($cor,$tamanho,$halito,$estado){
$this->cor = $cor;
$this->tamanho = $tamanho;
$this->halito = $halito;
$this->estado = $estado;
}
public function abrirBoca(){
return $this->estado = 'fechada';
}
public function fechaBoca(){
return $this->estado = 'abertada';
}
public function mastigar(){
echo $this->abrirBoca().'<br />';
echo $this->fechaBoca().'<br />';
$this->estado = 'mastigando';
}
public function fala(){
echo $this->abrirBoca().'<br />';
echo $this->fechaBoca().'<br />';
$this->estado = 'falando';
}
}1) Estou respeitando os princípios do SOLID na class 'olho' e 'boca'??
2) Poderia me dá um exemplo de uma (ação/método) onde não cabe a responsabilidade da class 'olho' e 'boca'??
3) Eu não criei método 'get' para pegar o atributo 'estado' e 'cor', pois 'get' não seria uma ação do 'olho'. Seria certo eu colocar um get nessa class para pegar os atributos 'estado' e 'cor' do olho?? Obs.: Não referenciei o método 'set' pois acredito que o abrirOlho(), fecharOlho() e piscaOlho() são métodos do tipo 'set'
Carregando comentários...