Cristofer Sousa | Front-end Developer

JavaScript além do DOM.

Beatles and JavaScript, qual a ligação disso.

Pense em uma biblioteca, agora imagine cada livro da biblioteca, para que eu possa ter uma biblioteca é necessário que exista livros e desses livros, autores e uma editora, isso é o “básico” que toda biblioteca deve ter para que ela seja denominada de biblioteca.

Agora e se quisermos transformar isso para o cenário da computação. Cada livro se trata de um objeto, essa abstração faz com que seja possivel que possamos adotar padrões que são caracteristicas do mundo real, assim como seu objeto e suas funções.

Os 04 principais conceitos de Orientação a Objetos:

Abstração

Abstração é o processo de você conseguir abstrair uma estrutura que contenha as condições necessárias daquele objeto do mundo real, para o contexto da programação.

Ex: Biblioteca é constituida por livros.

Herança

Se pensar no cenário do mundo real, você está herdando alguma coisa de alguém certo? Na programação o cenário é o mesmo, podemos assumir que um objeto é elemento Pai e que os elementos filhos herdam comportamentos e métodos do pai.

Ex: Autores possuem uma herança de livros, isto é posso saber de um determinado autor quais livros foram escrito por ele.

Polimorfismo

É a caracterisitca (comportamento) da qual seres podem assumir mais de uma forma, de modo geral obejtos que contém níveis mais altos de abstração e instanciam níveis mais baixos de abstração.

Ex: Editora pode ter livros somente de informática, como depois pode ter livros ligado a gastronomia.

Encapsulamento

Pense, todo livro possui sua estória e seu contexto, mas necessariamente você não precisa ler o livro todo para saber do que se trata, a contra-capa fornece essa informação, e como seria isso para a computação? Esse é o conceito de encapsulamento, o objeto deve expor somente o necessário, sem a necessidade de contar como algo foi realizado, você apenas o consome. ;)