SlideShare uma empresa Scribd logo
1 de 16
Javascript Orientado a Objetos
Javascript OO - Definição
• “A linguagem Javascript suporta programação
  orientada a objetos (OOP). É mais apropriado
  dizer que Javascript é uma linguagem capaz de
  simular muitos dos fundamentos de OOP,
  embora não plenamente alinhada com todos
  os conceitos de orientação a objeto.”

(Maurício Samy – Javascript Guia do Programador, 2010 )
Javascript OO - Classe
• Javascript difere-se de linguagens clássicas
  orientadas a objeto como Java e C++
  principalmente por não possuir uma definição
  formal de classe.
Javascript OO - Classe
Exemplo:
Javascript OO – Instância/Objeto
• O operador unário new destina-se a criar uma
  instância de um objeto nativo ou de um
  objeto que tenha sido previamente definido.
Exemplo:
     NomeObjeto = new construtor(args);
NomeObjeto: Nome escolhido do Objeto a Criar.
construtor: Expressão que constitue em uma
função construtora, seguido de zero ou mais
argumentos
Javascript OO – Atributo e Método
• A palavra-chave this deve ser usada em uma
  função ou método com a finalidade de criar
  uma referência para o objeto que define o
  método. Isso quer dizer que this deve estar
  contido no corpo da função.
• Métodos em Javascript são funções invocadas
  por objetos.
Javascript OO – Atributo e Método
Exemplo:
Javascript OO – Atributo e Método
• Acessando
Para acessar as propriedades ou métodos de um
objeto você deve utilizar o operador “.” que deve
ser precedido de uma referência ao objeto e
sucedido pelo nome de uma de suas
propriedades.
Exemplo:
Javascript OO – Atributo e Método
• Diferente das linguagens clássicas orientadas a
  objeto, Javascript permite que propriedades
  sejam adicionadas a qualquer momento
  durante a execução do código.
Javascript OO – Modificadores de
                Acesso
• O Javascript não é tipado, e não há
  modificadores de acesso em Javascript.
  Contudo conseguimos atraves da sintaxe da
  linguagem simular o que seria um metodo
  privado declarando uma variavel, exemplo:
Javascript OO – Constantes
• A implementação atual de const é uma extensão do
  Mozilla específica e não faz parte do ECMAScript 5.
  Ele é suportado no Firefox e Chrome (V8) e
  parcialmente suportada no Opera 9 + e Safari. Não é
  suportado no Internet Explorer 6-9, ou na
  visualização do Internet Explorer 10. A palavra-chave
  const atualmente declara a constante no escopo da
  função (como variáveis ​declaradas com var).
  Exemplo:
  const numero = 7;
Javascript OO – Herança
• Em Javascript a herança ocorre por meio de
  objetos protótipos, que é referenciado pela
  propriedade prototype.
Javascript OO – Herança
• Exemplo:
Javascript OO – Polimorfismo
• Em Javascript a melhor forma de fazer
  Polimorfismo seria usando o método da
  Prototipagem , Exemplo:
Javascript OO – Literais de Objeto
• Os literais de objeto possibilitam criar e iniciar
  objetos de uma maneira diferente.
      Sendo um tipo de dado constituído por
uma coleção de dados, ou seja, é uma unidade
que armazena dados formatados em pares
nome/valor, em definição formal, podemos dizer
que é uma coleção não ordenada de
propriedades e métodos constituída por pares
nome/valor.
Javascript OO - Literais de Objeto
Exemplo:

Mais conteúdo relacionado

Mais procurados

DOMinando JavaScript
DOMinando JavaScriptDOMinando JavaScript
DOMinando JavaScriptThiago Poiani
 
Introdução às Bibliotecas jQuery/ jQuery UI
Introdução às Bibliotecas jQuery/ jQuery UIIntrodução às Bibliotecas jQuery/ jQuery UI
Introdução às Bibliotecas jQuery/ jQuery UILenon Fachiano
 
Desenvolvendo com Dojo Toolkit
Desenvolvendo com Dojo ToolkitDesenvolvendo com Dojo Toolkit
Desenvolvendo com Dojo ToolkitFlávio Lisboa
 
Introdução básica ao JavaScript
Introdução básica ao JavaScriptIntrodução básica ao JavaScript
Introdução básica ao JavaScriptCarlos Eduardo Kadu
 
Javascript para CSharpers 3 - Conceitos
Javascript para CSharpers 3 - ConceitosJavascript para CSharpers 3 - Conceitos
Javascript para CSharpers 3 - ConceitosWesley Lemos
 
Mapa de aprendizado Front End
Mapa de aprendizado Front EndMapa de aprendizado Front End
Mapa de aprendizado Front EndCaio Vaccaro
 
JavaScript: Introdução e Operadores (aula 1)
JavaScript: Introdução e Operadores (aula 1)JavaScript: Introdução e Operadores (aula 1)
JavaScript: Introdução e Operadores (aula 1)Gustavo Zimmermann
 
Introdução JavaScript e DOM
Introdução JavaScript e DOMIntrodução JavaScript e DOM
Introdução JavaScript e DOMRomualdo Andre
 
Agilizando o desenvolvimento com j query
Agilizando o desenvolvimento com j queryAgilizando o desenvolvimento com j query
Agilizando o desenvolvimento com j queryPHPRio
 
JavaScript: uma visão geral da linguagem e seu ecossistema
JavaScript: uma visão geral da linguagem e seu ecossistemaJavaScript: uma visão geral da linguagem e seu ecossistema
JavaScript: uma visão geral da linguagem e seu ecossistemaFabio Agostinho Boris
 
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISCCriando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISCFlávio Lisboa
 

Mais procurados (18)

DOMinando JavaScript
DOMinando JavaScriptDOMinando JavaScript
DOMinando JavaScript
 
Introdução às Bibliotecas jQuery/ jQuery UI
Introdução às Bibliotecas jQuery/ jQuery UIIntrodução às Bibliotecas jQuery/ jQuery UI
Introdução às Bibliotecas jQuery/ jQuery UI
 
Javascript + jQuery
Javascript + jQueryJavascript + jQuery
Javascript + jQuery
 
jQuery
jQueryjQuery
jQuery
 
Desenvolvendo com Dojo Toolkit
Desenvolvendo com Dojo ToolkitDesenvolvendo com Dojo Toolkit
Desenvolvendo com Dojo Toolkit
 
Introdução básica ao JavaScript
Introdução básica ao JavaScriptIntrodução básica ao JavaScript
Introdução básica ao JavaScript
 
Javascript para adultos
Javascript para adultosJavascript para adultos
Javascript para adultos
 
Javascript para CSharpers 3 - Conceitos
Javascript para CSharpers 3 - ConceitosJavascript para CSharpers 3 - Conceitos
Javascript para CSharpers 3 - Conceitos
 
Mapa de aprendizado Front End
Mapa de aprendizado Front EndMapa de aprendizado Front End
Mapa de aprendizado Front End
 
JavaScript: Introdução e Operadores (aula 1)
JavaScript: Introdução e Operadores (aula 1)JavaScript: Introdução e Operadores (aula 1)
JavaScript: Introdução e Operadores (aula 1)
 
Introdução JavaScript e DOM
Introdução JavaScript e DOMIntrodução JavaScript e DOM
Introdução JavaScript e DOM
 
Introdução ao Ruby on Rails
Introdução ao Ruby on RailsIntrodução ao Ruby on Rails
Introdução ao Ruby on Rails
 
Codelab: TypeScript
Codelab: TypeScriptCodelab: TypeScript
Codelab: TypeScript
 
Aula javascript
Aula  javascriptAula  javascript
Aula javascript
 
Agilizando o desenvolvimento com j query
Agilizando o desenvolvimento com j queryAgilizando o desenvolvimento com j query
Agilizando o desenvolvimento com j query
 
JavaScript: uma visão geral da linguagem e seu ecossistema
JavaScript: uma visão geral da linguagem e seu ecossistemaJavaScript: uma visão geral da linguagem e seu ecossistema
JavaScript: uma visão geral da linguagem e seu ecossistema
 
Aula06 - JavaScript
Aula06 - JavaScriptAula06 - JavaScript
Aula06 - JavaScript
 
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISCCriando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
 

Semelhante a Javascript OO

Java Básico :: Orientação a objetos
Java Básico :: Orientação a objetosJava Básico :: Orientação a objetos
Java Básico :: Orientação a objetosWesley R. Bezerra
 
Poo slides01
Poo slides01Poo slides01
Poo slides01jmtofoli
 
Aula 1 - Linguagem III
Aula 1 - Linguagem IIIAula 1 - Linguagem III
Aula 1 - Linguagem IIIJuliano Weber
 
Java e orientação a objetos - aula 01
Java e orientação a objetos - aula 01Java e orientação a objetos - aula 01
Java e orientação a objetos - aula 01John Godoi
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetosCleyton Ferrari
 
Programação orientada a objetos – II
Programação orientada a objetos – IIProgramação orientada a objetos – II
Programação orientada a objetos – IIGabriel Faustino
 
Plone total#3 Conhecendo o Zope
Plone total#3 Conhecendo o ZopePlone total#3 Conhecendo o Zope
Plone total#3 Conhecendo o ZopeLucas Aquino
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a pooSedu
 
Javascript para CSharpers 4 - POO
Javascript para CSharpers 4 - POOJavascript para CSharpers 4 - POO
Javascript para CSharpers 4 - POOWesley Lemos
 
Javascript - Aplicações Interativas para a Web
Javascript - Aplicações Interativas para a WebJavascript - Aplicações Interativas para a Web
Javascript - Aplicações Interativas para a WebAdriano Lima
 
Desenvolvimento iOS - Aula 1
Desenvolvimento iOS - Aula 1Desenvolvimento iOS - Aula 1
Desenvolvimento iOS - Aula 1Saulo Arruda
 
Prototype1 - thiago
Prototype1 - thiagoPrototype1 - thiago
Prototype1 - thiagotceufrasio1
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Daniel Brandão
 
Apresentação Banco de Dados - Caché
Apresentação Banco de Dados - CachéApresentação Banco de Dados - Caché
Apresentação Banco de Dados - CachéRenzo Petri
 

Semelhante a Javascript OO (20)

Java Básico :: Orientação a objetos
Java Básico :: Orientação a objetosJava Básico :: Orientação a objetos
Java Básico :: Orientação a objetos
 
Aula orientação a objetos
Aula orientação a objetosAula orientação a objetos
Aula orientação a objetos
 
10 - JS OOP.pptx
10 - JS OOP.pptx10 - JS OOP.pptx
10 - JS OOP.pptx
 
Poo slides01
Poo slides01Poo slides01
Poo slides01
 
Java7
Java7Java7
Java7
 
Aula 1 - Linguagem III
Aula 1 - Linguagem IIIAula 1 - Linguagem III
Aula 1 - Linguagem III
 
Poo padadigmas
Poo padadigmasPoo padadigmas
Poo padadigmas
 
Java 00 Poo
Java 00 PooJava 00 Poo
Java 00 Poo
 
Java e orientação a objetos - aula 01
Java e orientação a objetos - aula 01Java e orientação a objetos - aula 01
Java e orientação a objetos - aula 01
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
 
Programação orientada a objetos – II
Programação orientada a objetos – IIProgramação orientada a objetos – II
Programação orientada a objetos – II
 
Curso ruby on rails
Curso ruby on railsCurso ruby on rails
Curso ruby on rails
 
Plone total#3 Conhecendo o Zope
Plone total#3 Conhecendo o ZopePlone total#3 Conhecendo o Zope
Plone total#3 Conhecendo o Zope
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a poo
 
Javascript para CSharpers 4 - POO
Javascript para CSharpers 4 - POOJavascript para CSharpers 4 - POO
Javascript para CSharpers 4 - POO
 
Javascript - Aplicações Interativas para a Web
Javascript - Aplicações Interativas para a WebJavascript - Aplicações Interativas para a Web
Javascript - Aplicações Interativas para a Web
 
Desenvolvimento iOS - Aula 1
Desenvolvimento iOS - Aula 1Desenvolvimento iOS - Aula 1
Desenvolvimento iOS - Aula 1
 
Prototype1 - thiago
Prototype1 - thiagoPrototype1 - thiago
Prototype1 - thiago
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)
 
Apresentação Banco de Dados - Caché
Apresentação Banco de Dados - CachéApresentação Banco de Dados - Caché
Apresentação Banco de Dados - Caché
 

Javascript OO

  • 2. Javascript OO - Definição • “A linguagem Javascript suporta programação orientada a objetos (OOP). É mais apropriado dizer que Javascript é uma linguagem capaz de simular muitos dos fundamentos de OOP, embora não plenamente alinhada com todos os conceitos de orientação a objeto.” (Maurício Samy – Javascript Guia do Programador, 2010 )
  • 3. Javascript OO - Classe • Javascript difere-se de linguagens clássicas orientadas a objeto como Java e C++ principalmente por não possuir uma definição formal de classe.
  • 4. Javascript OO - Classe Exemplo:
  • 5. Javascript OO – Instância/Objeto • O operador unário new destina-se a criar uma instância de um objeto nativo ou de um objeto que tenha sido previamente definido. Exemplo: NomeObjeto = new construtor(args); NomeObjeto: Nome escolhido do Objeto a Criar. construtor: Expressão que constitue em uma função construtora, seguido de zero ou mais argumentos
  • 6. Javascript OO – Atributo e Método • A palavra-chave this deve ser usada em uma função ou método com a finalidade de criar uma referência para o objeto que define o método. Isso quer dizer que this deve estar contido no corpo da função. • Métodos em Javascript são funções invocadas por objetos.
  • 7. Javascript OO – Atributo e Método Exemplo:
  • 8. Javascript OO – Atributo e Método • Acessando Para acessar as propriedades ou métodos de um objeto você deve utilizar o operador “.” que deve ser precedido de uma referência ao objeto e sucedido pelo nome de uma de suas propriedades. Exemplo:
  • 9. Javascript OO – Atributo e Método • Diferente das linguagens clássicas orientadas a objeto, Javascript permite que propriedades sejam adicionadas a qualquer momento durante a execução do código.
  • 10. Javascript OO – Modificadores de Acesso • O Javascript não é tipado, e não há modificadores de acesso em Javascript. Contudo conseguimos atraves da sintaxe da linguagem simular o que seria um metodo privado declarando uma variavel, exemplo:
  • 11. Javascript OO – Constantes • A implementação atual de const é uma extensão do Mozilla específica e não faz parte do ECMAScript 5. Ele é suportado no Firefox e Chrome (V8) e parcialmente suportada no Opera 9 + e Safari. Não é suportado no Internet Explorer 6-9, ou na visualização do Internet Explorer 10. A palavra-chave const atualmente declara a constante no escopo da função (como variáveis ​declaradas com var). Exemplo: const numero = 7;
  • 12. Javascript OO – Herança • Em Javascript a herança ocorre por meio de objetos protótipos, que é referenciado pela propriedade prototype.
  • 13. Javascript OO – Herança • Exemplo:
  • 14. Javascript OO – Polimorfismo • Em Javascript a melhor forma de fazer Polimorfismo seria usando o método da Prototipagem , Exemplo:
  • 15. Javascript OO – Literais de Objeto • Os literais de objeto possibilitam criar e iniciar objetos de uma maneira diferente. Sendo um tipo de dado constituído por uma coleção de dados, ou seja, é uma unidade que armazena dados formatados em pares nome/valor, em definição formal, podemos dizer que é uma coleção não ordenada de propriedades e métodos constituída por pares nome/valor.
  • 16. Javascript OO - Literais de Objeto Exemplo: