Artigo PHP
Por: Vinicius Pereira da Silva • 31/10/2016 • Trabalho acadêmico • 1.042 Palavras (5 Páginas) • 255 Visualizações
PHP e Orientação à Objeto
1 Orientação à Objetos
1.1 - Definições
1.1.1 - Objeto:
É a entidade que desejamos generalizar e pode ser uma pessoa, um lugar, um evento, etc, ou seja, pode ser qualquer qualquer coisa do mundo real que pode ser descrita em ações e características - métodos e atributos - em uma classe.
1.1.2 - Classe:
É a abstração do objeto do mundo real, um modelo para qual os objetos podem ser criados. Enquanto o objeto representa uma coisa real e somente uma coisa em um determinado instante, uma classe é a generalização deste, mostrando os suas características (Dados) e suas funcionalidades.
1.1.3 - Atributos:
Entende-se como atributos, as características aderidas aos objetos. Como em uma classe Pessoa, teremos os possíveis atributos: nome, endereço, telefone. Como se pode perceber, esses atributos definem o objeto Pessoa, toda pessoa tem um nome, um endereço, e possivelmente um número de telefone.
1.1.4 - Métodos:
Já o termo método de uma classe se refere às ações que determinado objeto pode realizar, ainda usando como referência a classe Pessoa, podemos utilizar os seguintes métodos, getNome(), correr(), andar(). Essas ações, métodos, são realizadas por todas as pessoas e são abstratas na classe, de forma aproximar um pouco do mundo real.
1.1.5 - Herança:
No desenvolvimento de sistemas, diversas situações precisamos de construir classes que muitas vezes são similares à já existentes. Usamos nesses casos o conceito de Herança, herdando o conteúdo de outras classes, utilizando o código e poupando esforço. A classe pai Pessoa, é uma classe genérica, ou seja, contém as características e algumas ações que todos os tipos de pessoas. Entretanto no âmbito jurídico, existem dois tipos de pessoas, pessoa fisica e juridica, em uma construção de um sistema de cadastro de clientes, usamos esses conceitos para diferenciar, a pessoa física contém CPF e a pessoa jurídica contém CNPJ, só que os dois tipos contém nome, endereço, telefone. Podemos criar duas classes filhas e herdar da pai os métodos, conforme o exemplo abaixo:
1.1.6 - Poliformismo:
Entende-se como uma característica polifórmica, poder passar a mesma mensagem de várias formas. No conceito de objeto, existem as superclasses e a subclasses, classes mãe e filhas, em que contém comportamentos e resultados diferentes. Podemos reescrever esses comportamentos e apresentar os resultados desejados.
1.1.7 - Acoplamento:
Em um aspecto global acoplamento é o grau de dependência entre dois "artefatos". Onde artefatos podem ser entidades, métodos, componente, tabelas, enfim qualquer coisa que esteja na outra. Quando maior é o índice de acoplamento, mais complicado é as ações para manter e testar. Uma classe que depende pouco ou não depende de outras é considerada como classe com fraco acoplamento, uma classe com alto acoplamento possui os seguintes problema
» Entendimento prejudicado;
» As alterações são em geral mais complexas;
» A reusabilidade é prejudicada.
Seria ótimo fazer um código altamente fraco de acoplamento, entretanto isso é impossível, existem classes que necessitam de acoplamento, podemos somente minimizar, reduzir ao máximo necessário o acoplamento.
1.1.8 - Coesão
Mede o grau que uma classe ou seus métodos fazem sentido, ou seja, o quão claro é o entendimento do que a classe ou método faz. Uma função é altamente coesa se realiza uma e somente uma função. Por exemplo, a classe Pessoa contém métodos que contém somente uma função, o método getNome() faz o getter do atributo nome, e somente isso, diferente da classe Funcionario:
...