140 likes | 243 Views
POO Utilizando PHP5. Prof. André Rabelo. Modelagem de Classes. Como identificar Classes Mé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
E N D
POO Utilizando PHP5 Prof. André Rabelo
Modelagem de Classes • Como identificar Classes • Mé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 gerado • Funcioná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
PHP5 com OO • Caracterí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 OO • Caracterí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 OO • CLASSES • Código para classe serHumano class serHumano{ private $nome; private $idade; function beber($bebida){ //instruções função } }
PHP5 com OO • INSTANCIANDO CLASSES $andre = new serHumano; $maria = new serHumano;
PHP5 com OO • CLASSES – CONSTRUTORES • Iniciar atributos e ações - __construct class 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 OO • INSTANCIANDO CLASSES $andre = new serHumano(“André”,33); $maria = new serHumano(“Maria”,28); $andre -> informaIdade();
PHP5 com OO • CLASSES – DESTRUTORES • Terminar atributos e ações - __destruct class 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 OO • MODIFICADORES 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 OO • HERANÇA • É o mecanismo que uma classe utiliza para herdar características de outra. class professor extends serHumano(){ private $instituto; private $formacao; }
PHP5 com OO • Herança • Vamos testar a herança em php utilizando como base um sistema simples de uma loja de CD’s: