Eu poderia deixar somente a função validaNome, já que ela atribui valor para $nome assim que a função da certo?
Eu estava olhando aqui e achei meio repetitivo já que assim que a função validaNome da certo ela atribui o valor para $this->nome.
estou usando php 8.3
Antes
public function __construct(Cpf $cpf, string $nome, Endereco $endereco)
{
$this->cpf = $cpf;
$this->validaNome($nome);
$this->nome = $nome;
$this->endereco = $endereco;
}
private function validaNome(string $nome)
{
if(mb_strlen($nome) < 5){
echo "Nome precisa ter mais de 5 caracteres";
exit();
}
$this->nome = $nome;
}
-------------------------------------------------------------------------------------------------------
Depois
public function __construct(Cpf $cpf, string $nome, Endereco $endereco)
{
$this->cpf = $cpf;
$this->validaNome($nome);
$this->endereco = $endereco;
}