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.

[ Hits: 15.224 ]

Por: Paulo Dias em 24/07/2012 | Blog: http://naotenhosite.eu.nao.tenho


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:

function Pessoa( nome, idade ) { this.nome = nome; this.idade = idade; this.digaOi = function() { alert( "oi" ); } }


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:

var eu = new Pessoa( "paulo", "25" );


E agora, que temos uma instância de "Pessoa", podemos ter acesso aos atributos e métodos de um jeito bem intuitivo:

alert( eu.nome ); eu.digaOi();


Com isso já temos uma "classe" e um objeto.

Nos próximos capítulos, vamos ver com usar encapsulamento e herança.

    Próxima página

Páginas do artigo
   1. Introdução
   2. Encapsulamento - Herança - Prototype
Outros artigos deste autor

Programação com Shell Script

MathML - Mathematical Markup Language

Zoneminder: Substituindo um Unifi NVR

Bitwise - Escovando os bits

AWK - Manipulação de arquivos de texto

Leitura recomendada

Introdução ao Jython

CSS - Manual de Estilo (parte 2)

Extensões imperdíveis para quem usa o Git (e o GitHub) no Brackets

Automação de tarefas com Gulp

AJAX - Parte 1

  
Comentários
[1] Comentário enviado por m4iir1c10 em 26/07/2012 - 17:53h

Caramba!!!!!!

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)


Contribuir com comentário