vem em uma avaliacao a pergunta sobre o que e POO, o que e heranca, o que e polimorfismo etc ... Eu devo apenas definir? Explicar? Exemplificar?Compartilho abaixo o enunciado de uma dessas avaliacoes e as minhas respostas.Conceitos teoricos 1) Quala importancia da utilizacao da programacao orientada a objetos? Cite algumastecnicas.R.: A programacao orientada a objetos, associada aoutras boas praticas de programacao, favorece um codigo mais coeso e menosacoplado, facilitando o reaproveitamento de codigo e a manutenibilidade domesmo.Na programacao orientada a objetos, dados e acoesque pertencem a uma mesma entidade ou unidade logica sao agrupados em umaclasse, que e um tipo de objeto. Uma classe pode ser instanciada, ou seja, ter umobjeto de seu tipo criado, e esse objeto contera os dados da classe e asoperacoes que atuam sobre esses dados. A programacao orientada a objeto, quando bemaplicada, permite codigo menor, menos repetitivo e mais eficiente, por meio daabstracao.Alguns conceitos importantes em POO sao heranca,polimorfismo, abstracao, composicao e agregacao. Heranca permite que dados e comportamentos sejamtransmitidos de uma classe base para uma derivada sem que codigo sejareescrito. Polimorfismo permite que haja diferentes implementacoes de um mesmometodo nos diferentes objetos que implementem uma mesma interface (ou tenham umancestral em comum). Por exemplo, ao teruma variavel a da interface i diferente de nulo, quando executamos o metodometodo(), o codigo executado sera o do objeto instanciado que implemente amesma assinatura de metodo().Composicao e a ligacao, atraves de construtores ousetters, de varios objetos compondo um todo. O todo, nesse caso, e maior do queas partes e nao deve existir ou funcionar sem uma de suas partes. Comcomposicao se adiciona novos comportamentos a um objeto por adicionar maispartes que interagem entre si.Agregacao e uma interacao mais fraca que acomposicao. Objetos e colecoes de objetos podem ser ligados uns aos outroscriando um todo com comportamento proprio, mas as partes podem existirseparadamente. Um exemplo de composicao e um Carro e suas Rodas,ou aproveitando o exemplo de e-commerce desse teste, o Pedido e seus itens.Embora os produtos podem existir sem nunca serem comprados, um Pedido naoexiste sem os itens, e um carro nao tem proposito sem suas rodas. Um exemplo de agregacao seria um computador, poisCPU e perifericos, embora trabalhem juntos tambem funcionam separadamente, e oCarrinho e seus itens. Diferentemente do Pedido, um carrinho pode estar vazio,no momento do comeco das compras. 2) Descrevaos principios SOLID e porque eles sao importantes.R.: SOLID e uma abreviacao de outras 5 abreviacoes.Essas abreviacoes, em ingles sao:SRP (Single responsibility principle), significa que uma classe deve ter apenas umaresponsabilidade e por consequencia disso apenas um motivo para mudar.OCP (Open/Closed principle), significa que umaclasse deve ser fechada para modificacao e aberta para extensao. Esse conceitoe uma extensao do conceito acima e quer dizer que uma classe nao deve sermodificada, mas deve ter seu comportamento extendido atraves de heranca oucomposicao. LSP (Liskov substitution principle) e o principio de substituicao de liskov, quesignifica que um objeto esperado pode ser substituido por qualquer objeto deuma classe descendente. Quando uma classe filha altera o comportamento padraode um metodo ou omite uma propriedade, entao o principio de liskov esta sendoviolado. ISP