Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

Introdução a Programação Orientada a Objetos no PHP


Write
 Compartilhar

Posts Recomendados

Olá,

 

Bem neste tópico estarei falando um pouco sobre a programação orientada a objeto no php, mas antes vamos entender o que é o objeto pois a orientação a objetos e algo voltado a objetos.

 

Mas tem alguns pré-requisitos:

 

  • PHP Intermediário
  • Básico de Mysql
  • Básico de UML

 

O Que seria Objeto?.

Nós podemos definir objeto de uma maneira fácil de enteder seria, qualquer coisa que você pode atribuir características e ações.

 

Por exemplo, digamos que temos o objeto pessoa que tem suas características (altura, cor do cabelo, olhar enfim) e ela tem ações (falar, andar, comer enfim), provavelmente se você já procurou alguma coisa sobre a orientação ao objeto deve ter visto exemplos com carros, casa enfim.

 

Na teoria é interessante esse tipo de exemplo mas na prática nós podemos nos perder um pouco.

 

Para começar abra seu editor de php ou até mesmo o bloco de notas, e vamos criar uma classe.

Toda a definição de classe começa com a palavra-chave CLASS seguido pelo nome da classe (pode ser qualquer nome desde que não seja uma palavra reservada do PHP) , e um par de chaves.

 

Por Convenção o nome da classe sempre é iniciado por letra maiuscula, não é obrigatório.

 

É necessário se cadastrar para acessar o conteúdo.

 

Feito isso salve como NomeDaClasse.class.php , mas o por que do CLASS.PHP.

Bem isso é para melhor organização, para identificar do que se trata o arquivo, o CLASS para saber que é uma classe e que tambem é php.

 

Mas antes de tudo, o que seria a classe?

 

A classe é o molde do objeto, e nela vai conter todas as nossas características. Na orientação a objetos as características são nomeadas de atributos, ou seja, as características são os atributos da nossa classe, e as nossas ações que na orientação a objetos são nomeadas de Métodos.

 

Atributos, nada mais são do que variaveis dentro da classe.

 

É necessário se cadastrar para acessar o conteúdo.

 

Métodos, nada mais são do que funções dentro da classe.

 

É necessário se cadastrar para acessar o conteúdo.

 

Depois de entender isso vamos criar o nosso objeto.

 

É necessário se cadastrar para acessar o conteúdo.

 

O Código terá a saida:

Oi eu sou o Write, tenho uma altura de 1,75M.

 

Nesse caso instanciamos nosso objeto utilizando a palavra reservada NEW seguido do nosso objeto PESSOA e executamos o método DIGAOI.

 

Outra coisa, algumas pessoas vão reparar a pseudo-variável $this, ela referencia o objeto ATUAL e acessa suas propriedades.

 

Créditos:

Write or Leader ( EU)

 

Não Copie esse tutorial sem minha autorização!

 

Link para o comentário
Compartilhar em outros sites

No começo não se nota diferença pois isso é um exemplo básico. O Paradigma de programação orientada a objeto vai muito mais além do que isso.

 

Por exemplo, na procedural os mecanismos básicos são: Sequência, Decisão e Iteração.

 

Na OO te permite a reutilização do código, uma vez o código escrito não será necessário reescreve-lo. No máximo modificado através de algumas técnicas.

Facilidade na hora de modificar a estrutura interna de um código, sem alterar o resultado final.

Facilidade na manutenção do sistema, mesmo quando escrito por terceiro

 

No Seu caso, se eu quisesse fazer com o seu nome, eu teria que reescrever este código todinho novamente e alterar a variavel $nome na OO não. Você só precisa herdar as caracteristicas da pessoa:

 

 

É necessário se cadastrar para acessar o conteúdo.

 

Viu, herdei as caracteristicas (Atributos) da primeira classe PESSOA usando o extends e tambem os métodos. Não precisei criar outra variavel e nem nada.

 

Somente herdei e atribui os valores.

Link para o comentário
Compartilhar em outros sites

No começo não se nota diferença pois isso é um exemplo básico. O Paradigma de programação orientada a objeto vai muito mais além do que isso.

 

Por exemplo, na procedural os mecanismos básicos são: Sequência, Decisão e Iteração.

 

Na OO te permite a reutilização do código, uma vez o código escrito não será necessário reescreve-lo. No máximo modificado através de algumas técnicas.

Facilidade na hora de modificar a estrutura interna de um código, sem alterar o resultado final.

Facilidade na manutenção do sistema, mesmo quando escrito por terceiro

 

No Seu caso, se eu quisesse fazer com o seu nome, eu teria que reescrever este código todinho novamente e alterar a variavel $nome na OO não. Você só precisa herdar as caracteristicas da pessoa:

 

É necessário se cadastrar para acessar o conteúdo.

 

 

Viu, herdei as caracteristicas (Atributos) da primeira classe PESSOA usando o extends e tambem os métodos. Não precisei criar outra variavel e nem nada.

 

Somente herdei e atribui os valores.

Na verdade, não acho que nesse caso seria necessário reescrever o código novamente se eu quisesse mudar o nome... Bastaria só usar cookies, $_get[]`s, etc...

Mas, eu entendo que os objetos devem servir para muito mais coisas, e para facilitar a vida do programador... E espero conseguir entender um dia como eles funcionam ;P

Link para o comentário
Compartilhar em outros sites

No começo não se nota diferença pois isso é um exemplo básico. O Paradigma de programação orientada a objeto vai muito mais além do que isso.

 

Por exemplo, na procedural os mecanismos básicos são: Sequência, Decisão e Iteração.

 

Na OO te permite a reutilização do código, uma vez o código escrito não será necessário reescreve-lo. No máximo modificado através de algumas técnicas.

Facilidade na hora de modificar a estrutura interna de um código, sem alterar o resultado final.

Facilidade na manutenção do sistema, mesmo quando escrito por terceiro

 

No Seu caso, se eu quisesse fazer com o seu nome, eu teria que reescrever este código todinho novamente e alterar a variavel $nome na OO não. Você só precisa herdar as caracteristicas da pessoa:

 

É necessário se cadastrar para acessar o conteúdo.

 

 

Viu, herdei as caracteristicas (Atributos) da primeira classe PESSOA usando o extends e tambem os métodos. Não precisei criar outra variavel e nem nada.

 

Somente herdei e atribui os valores.

 

Também pode ser usado apenas o =& para herdar valores de uma outra o que deixaria o código bem mais simples.

"Percorri caminhos que apesar de serem caminhos não eram caminhos, ouvi ruídos do obscuro e calmamente reconfortante, de paleios passei a meros trechos de sabedoria e pura eloquência, perdido na sabedoria ainda não tão ampla mas também não mais tão compacta."

Link para o comentário
Compartilhar em outros sites

Olha não te estou a entender, porque para usar este código desta maneira tens de ter um objectivo.

Porque o seu código pode ser escrito desta maneira:

É necessário se cadastrar para acessar o conteúdo.

Ocupando apenas 11 linhas.

 

Então vou fazer-lhe uma pergunta, porquê insistes em escrever o código de uma maneira que deixa ele mais extenso ?

É porque o seu tutorial fala sobre o php orientado a objectos ?

"Percorri caminhos que apesar de serem caminhos não eram caminhos, ouvi ruídos do obscuro e calmamente reconfortante, de paleios passei a meros trechos de sabedoria e pura eloquência, perdido na sabedoria ainda não tão ampla mas também não mais tão compacta."

Link para o comentário
Compartilhar em outros sites

Olha não te estou a entender, porque para usar este código desta maneira tens de ter um objectivo.

Porque o seu código pode ser escrito desta maneira:

É necessário se cadastrar para acessar o conteúdo.

Ocupando apenas 11 linhas.

 

Então vou fazer-lhe uma pergunta, porquê insistes em escrever o código de uma maneira que deixa ele mais extenso ?

É porque o seu tutorial fala sobre o php orientado a objectos ?

 

Leia o tópico e leia este comentário -> http://www.webcheats.com.br/forum/web-programacao/1658986-introducao-programacao-orientada-objetos-no-php.html#post6508239

 

 

Não insisto em escrever, se eu juntar as linhas dará menos que isso.

 

Como eu disse na programação procedural será necessário criar 2 variavéis com 2 nomes ao invés de reutilizar uma mesma variável para o mesmo fim.

A programação orientada a objetos é muito mais prática e utilizada. Procure se informar melhor e como está no tópico ->

  • PHP Intermediário

 

E como eu disse no começo pode parecer que se utiliza mais códigos, mas com o tempo você vai perceber o que o PHP OO pode fazer.

 

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.