roger-melo-treinamentos / curso-de-js-roger-melo

Repositório de informações do CJRM
491 stars 170 forks source link

Resumo da Aula 02-05 da etapa 14 #7847

Closed FillipeDiord closed 9 months ago

FillipeDiord commented 9 months ago

Orientação a Objetos

É um paradgma no qual dados são capsulados em objetos, esse objetos são trabalhados no decorrer da aplicação, usando métodos. O javascript é uma linguagem fortemente orientada em objetos, ele é baseado em prototypes. Não necessariamente é necessário programar em orientado a objetos, com javascript é possível programar em orientado em objetos, imperativo, funcional ou até combinar estes paradgmas, para extrair o melhor desses mundos. Combinando o melhor da orientação objetos com o melhor da programação funcional.

Construtores embutidos

São objetos ou funções que criam novos objetos. São basicamente os tipos de dados que o javascript tem, para criar um novo objeto de um determinado objeto, é preciso usar o new antes da invocação do construtor para que um novo objeto seja criado. É aconselhável sempre criar objetos de forma literal, sem usar os construtores na criação, sendo mais rápido na criação. O legal de invocar o construtor é que podemos converter um valor para o determinado construtor do objeto que foi invocado.

Wrapper Objects

Os construtores utilizam o wrapper objects para envolver todos os tipos de dados, mesmo sendo apenas temporariamente para converter ou usar métodos ou propriedades, podendo ser usados em até tipos primitivos.

Propriedade Prototype / proto

É a propriedade que se encontra em todos os objetos que contém as propriedades e métodos que podem ser utilizados naquele determinado objeto dependendo do tipo dele.

Null / undefined

São os únicos que não possui métodos e propriedades.

Tudo em javascript é objeto?

Não, mas quase todo valor pode se comportar como um objeto temporariamente quando é envolvido por baixo dos panos por um Wrapper Objects usando um construtor para conveter um determinado valor.