Post on 02-Feb-2016
description
Clique para editar o estilo do subtítulo mestre
POO Utilizando PHP5
Prof. André Rabelo
Modelagem de Classes
Como identificar ClassesMétodo Dirigido a Dados
Identificação da estrutura dos conceitos relevantes para o negócio
Destacar todos os nomes ou frases nominais dos requisitos do sistema
Destacar candidatos que não sejam apropriados por alguma razão.
Renomear classes caso necessário
Exemplo: Caso de uso Cadastrar Usuário
RESPONSÁVEL INSERE DADOS REFERENTES AOS QUESTIONÁRIOS
Modelagem de Classes
Identificar as classes dos seguintes requisitos:Proprietário da empresa cancela o questionário
geradoFuncionário responsável pela elaboração insere
informações diversas sobre questões do questionário
Funcionário realiza cancelamento ou alterações em questões inseridas.
Funcionário insere informações sobre as possíveis respostas as questões cadastradas.
O proprietário libera o questionário para entrevistas
Entrevistado acessa o sistema que exibe informações sobre questionários, o entrevistado escolhe o questionário que irá responder
Modelagem de Classes
PHP5 com OOCaracterísticas
Nomes fixos para construtores e destrutores
__construct & __destruct(duas underlines)
Acesso public, private e protected a atributos e métodos
Facilita o encapsulamento por exemplo
Métodos e classes finais
Indica por exemplo que uma classe não poderá ser herdada
Operador instanceof
Identifica a classe que gerou o objeto
PHP5 com OOCaracterísticas
Atributos e métodos static
Atributos e métodos que acessamos sem a necessidade de instanciar a classe
Classes e métodos abstratos
Não se podem instanciar somente funcionam nas heranças
Constantes de Classes
Função __autoload
Chamar arquivos de classes automaticamente
Clonagem de objetos
PHP5 com OOCLASSES
Código para classe serHumano
class serHumano{
private $nome;
private $idade;
function beber($bebida){
//instruções função}
}
PHP5 com OOINSTANCIANDO CLASSES
$andre = new serHumano;
$maria = new serHumano;
PHP5 com OOCLASSES – CONSTRUTORES
Iniciar atributos e ações - __constructclass serHumano{
private $nome;
private $idade;
function __construct($nome,$idade){
$this -> nome = $nome
$this -> idade = $idade
}
function informaIdade(){
return $this -> nome . “tem ” . $this -> idade . “ anos”;
}
}
PHP5 com OOINSTANCIANDO CLASSES
$andre = new serHumano(“André”,33);
$maria = new serHumano(“Maria”,28);
$andre -> informaIdade();
PHP5 com OOCLASSES – DESTRUTORES
Terminar atributos e ações - __destructclass serHumano{
private $nome;
private $idade;
function __construct($nome,$idade){
$this -> nome = $nome
$this -> idade = $idade
}
function informaIdade(){
return $this -> nome . “tem ” . $this -> idade . “ anos”;
}
function __desctruct(){
echo “Acabo de destruir “ . $this->nome
}
}
PHP5 com OOMODIFICADORES DE ACESSO
Ajudam no encapsulamento de características internos de objetos.
public(default) – Informa que o atributo ou método está liberado para acesso “externo”
private – Indica que o atributo ou método somente poderá ser usado pelo próprio objeto
protected – Indica que o atributo ou método somente poderá ser usado pela superclasse e suas subclasses
PHP5 com OOHERANÇA
É o mecanismo que uma classe utiliza para herdar características de outra.
class professor extends serHumano(){
private $instituto;
private $formacao;
}
PHP5 com OOHerança
Vamos testar a herança em php utilizando como base um sistema simples de uma loja de CD’s: