What is the best way to split this Aluno
?
<?php
class Aluno{
private $nome;
private $sobrenome;
private $email;
private $telefone;
private $cep;
private $rua;
private $endereco;
private $numero;
private $logradouro;
private $cidade;
private $estado;
private $usuario;
private $senha;
public function getNome(){
return $this->nome;
}
public function setNome($nome){
$this->nome = $nome;
}
public function getSobrenome(){
return $this->sobrenome;
}
public function setSobrenome($sobrenome){
$this->sobrenome = $sobrenome;
}
public function getEmail(){
return $this->email;
}
public function setEmail($email){
$this->email = $email;
}
public function getTelefone(){
return $this->telefone;
}
public function setTelefone($telefone){
$this->telefone = $telefone;
}
public function getCep(){
return $this->cep;
}
public function setCep($cep){
$this->cep = $cep;
}
public function getRua(){
return $this->rua;
}
public function setRua($rua){
$this->rua = $rua;
}
public function getEndereco(){
return $this->endereco;
}
public function setEndereco($endereco){
$this->endereco = $endereco;
}
public function getNumero(){
return $this->numero;
}
public function setNumero($numero){
$this->numero = $numero;
}
public function getLogradouro(){
return $this->logradouro;
}
public function setLogradouro($lougradouro){
$this->lougradouro = $logradouro;
}
public function getCidade(){
return $this->cidade;
}
public function setCidade($cidade){
$this->cidade = $cidade;
}
public function getEstado(){
return $this->estado;
}
public function setEstado($estado){
$this->estado = $estado;
}
public function getUsuario(){
return $this->usuario;
}
public function setUsuario($usuario){
$this->usuario = $usuario;
}
public function getSenha(){
return $this->senha;
}
public function setSenha($senha){
$this->senha = $senha;
}
}
?>
Would it be relevant to separate some information in another class as a database table? Type:
Class Telefone{
private $ddd;
private $numero;
public function getDDD(){
return $this->ddd;
}
public function setDDD($ddd){
$this->ddd = $ddd;
}
public function getTelefone(){
return $this->telefone;
}
public function setTelefone($telefone){
$this->telefone = $telefone;
}
I need to apply these classes and methods in the state (% with% get and set state), city ( Class Estado
get and set city), address ( Class Cidade
containing number, cep, complement, lougradouro getters and setters etc).
Would this also apply with Class Endereço
and password create a class just for both?
Example:
Class Estado{
private $estado;
public function getEstado(){
return $this->estado;
}
public function setEstado($estado){
$this->estado = $estado;
}
}
Class Cidade{
private $cidade
public function getCidade(){
return $this->cidade;
}
public function setCidade($cidade){
$this->cidade = $cidade;
}
Etc.
NOTE: When I model something like this, do you have any specific techniques to separate correctly or depend on the programmer?