JavaScript - Programação orientada a objetos
Apesar de não possuir a estrutura mais elementar de uma linguagem orientada a objetos, a classe, a linguagem JavaScript pode sim, ser orientada a objetos. Neste artigo, não pretendo ensinar programação orientada (POO) a objeto, vou demostrar o básico para programar de forma OO em JavaScript.
Introdução
A linguagem JavaScript, geralmente, é usada de forma estruturada, alguns provavelmente acreditam que essa seja a única forma (paradigma) possível, mas também, podemos programar de forma orientada a objetos (OO) em JavaScript.
A programação OO em JavaScript é um pouco diferente do que estamos acostumados. Diferente de Java, PHP, Ruby e outras, JavaScript não têm uma definição para uma classe, mas possui um recurso chamado Prototype (não confundir com o Framework), que podemos utilizar para programar de forma OO.
Vamos a um exemplo simples. Vou criar uma "classe" Pessoa. Pode parecer estranho, mas acredite, podemos escrever uma "classe" desse jeito:
Sim, você deve ter percebido que isso é uma função, mas podemos criar uma instância dela através do operador new (como nas outras linguagens) e simular uma classe, assim:
E agora, que temos uma instância de "Pessoa", podemos ter acesso aos atributos e métodos de um jeito bem intuitivo:
Com isso já temos uma "classe" e um objeto.
Nos próximos capítulos, vamos ver com usar encapsulamento e herança.
A programação OO em JavaScript é um pouco diferente do que estamos acostumados. Diferente de Java, PHP, Ruby e outras, JavaScript não têm uma definição para uma classe, mas possui um recurso chamado Prototype (não confundir com o Framework), que podemos utilizar para programar de forma OO.
Vamos a um exemplo simples. Vou criar uma "classe" Pessoa. Pode parecer estranho, mas acredite, podemos escrever uma "classe" desse jeito:
Sim, você deve ter percebido que isso é uma função, mas podemos criar uma instância dela através do operador new (como nas outras linguagens) e simular uma classe, assim:
E agora, que temos uma instância de "Pessoa", podemos ter acesso aos atributos e métodos de um jeito bem intuitivo:
Com isso já temos uma "classe" e um objeto.
Nos próximos capítulos, vamos ver com usar encapsulamento e herança.
Uma luz acendeu na minha cabeca ao ler esse seu artigo, eu ja uso o javascript por muitos anos ( mais nunca estudei a fundo ), nos poucos artigos que eu li sobre javascript eu sempre ouvi a palavra "Orientada a Objeto" mais nunca eu realmente entendi oque era isso, quando eu escrevia os meus javascripts sempre os fiz direto, linear... quando eu via os codigos mais complexos eu simplemente copiava e colava... agora depois desse artigo foi como um big bang na minha cabeca... agora as coisas ficaram claras, wow !!!!
Valeu cara, voce jogou o meu conhecimento em javascript em outro nivel, eu vou retornar aos meus scripts mais agora desvendando novas fronteiras (y)