Sejam bem vindos ao meu desafio de projeto proposto pela DIO através de um bootcamp. Este desafio tem como objetivo nos ajudar na prática da Orientação a Objetos e seus principais conceitos: Abstração, Encapsulamento, Herança e Polimorfismo.
Com o intuito de facilitar o entendimento desse projeto, deixarei aqui algumas notas de aula sobre a Orientação a Obejtos.
-
Como definir a Orientação a objetos?
É um paradigma de análise, projeto e programação de sistemas de software baseado na composição e interação entre diversas unidades de softwares chamadas objetos.
Processo pelo qual se isolam características de um objeto, considerando os que tenham em comum certos grupos de obejtos.
É a capacidade de esconder complexidades e proteger dados.
É o relacionamento entre classes em que uma classe filha herda membros de uma classe mãe.
É a mesma ação (método) se comportando de maneiras diferentes.
É umas estrutura que abstrai um conjunto de obejtos com características similares. Uma classe defien o comportamento de seus obejtos através de métodos e os estados dos objetos através de atributos.
É o elemento de uma classe responsável por definir sua estrutura de dados. O conjunto destes será responsável por representar suas características e fará parte dos objetos criados a partir da classe.
Elas podem ser entendidas como uma caixinha, onde os dados são armazenados temporariamente ou em definitivo e que são manipuladas durante a execução do programa.
Um método é uma sub-rotina que é executada por um objeto ao receber uma mensagem. Os métodos determinam o comportamento dos objetos de uma classe e são análogos a funções ou procedimentos da programação estruturada. O envio de mensagens (chamada de métodos) pode alterar o estado de um objeto.
Um objeto é um elemento computacional que representa, no domínio da solução, alguma entidade (abstrata ou concreta) do domínio de interesse do problema sob análise. Objetos similares são agrupados em classes.
Uma instância de uma classe é um novo objeto criado dessa classe, com o operador new. Instanciar uma classe é criar um novo objeto do mesmo tipo dessa classe. Uma classe somente poderá ser utilizada após ser instanciada.
Espero que esses conceitos auxiliem no entendimento do projeto!! Deixem um star ⭐ caso gostarem, e relatem issues.