Write 0 Postado 25 de Maio 2012 Compartilhar Postado 25 de Maio 2012 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. Entre ou Cadastre-se 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. Entre ou Cadastre-se Métodos, nada mais são do que funções dentro da classe. É necessário se cadastrar para acessar o conteúdo. Entre ou Cadastre-se Depois de entender isso vamos criar o nosso objeto. É necessário se cadastrar para acessar o conteúdo. Entre ou Cadastre-se 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! ᅠᅠMural de Coleçõesᅠᅠ Clique aqui e adquira suas medalhas Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
SergioRP 1 Postado 26 de Maio 2012 Compartilhar Postado 26 de Maio 2012 Mas qual é a vantagem disso? Não seria mais fácil fazer: É necessário se cadastrar para acessar o conteúdo. Entre ou Cadastre-se ᅠᅠMural de Coleçõesᅠᅠ Clique aqui e adquira suas medalhas Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
Write 0 Postado 26 de Maio 2012 Autor Compartilhar Postado 26 de Maio 2012 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. Entre ou Cadastre-se 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. ᅠᅠMural de Coleçõesᅠᅠ Clique aqui e adquira suas medalhas Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
SergioRP 1 Postado 26 de Maio 2012 Compartilhar Postado 26 de Maio 2012 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. Entre ou Cadastre-se 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 ᅠᅠMural de Coleçõesᅠᅠ Clique aqui e adquira suas medalhas Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
C£rberus 1 Postado 26 de Maio 2012 Compartilhar Postado 26 de Maio 2012 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. Entre ou Cadastre-se 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." ᅠᅠMural de Coleçõesᅠᅠ Clique aqui e adquira suas medalhas Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
Write 0 Postado 26 de Maio 2012 Autor Compartilhar Postado 26 de Maio 2012 Também pode ser usado apenas o =& para herdar valores de uma outra o que deixaria o código bem mais simples. Claro que não '-'. ᅠᅠMural de Coleçõesᅠᅠ Clique aqui e adquira suas medalhas Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
C£rberus 1 Postado 26 de Maio 2012 Compartilhar Postado 26 de Maio 2012 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. Entre ou Cadastre-se 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." ᅠᅠMural de Coleçõesᅠᅠ Clique aqui e adquira suas medalhas Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
Write 0 Postado 26 de Maio 2012 Autor Compartilhar Postado 26 de Maio 2012 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. Entre ou Cadastre-se 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. ᅠᅠMural de Coleçõesᅠᅠ Clique aqui e adquira suas medalhas Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
Posts Recomendados