Prévia do material em texto
Ao longo da unidade estudamos as características da programação Orientada a Objetos e Programação Estruturada. Podemos compreender os fundamentos de orientação a objeto como uma evolução da programação estruturada. A orientação a objeto tem como objetivo trazer uma visão mais próxima da realidade para o desenvolvimento de sistemas de informação, pois tudo a nossa volta pode ser considerado um “objeto”. Estes objetos interagem entre si formando assim a base de desenvolvimento de sistemas orientados a objeto. Considerando o conteúdo apresentado em forma de leitura, vídeos e os pesquisas realizadas, elabore um texto dissertativo argumentativo, de 20 a 25 linhas que compare os fundamentos da programação estruturada e os fundamentos da programação orientada a objeto. Faça uma análise detalhada de cada um (baseando-se na sua pesquisa atual e realizada em atividades anteriores) e justifique, sob o seu ponto de vista, se existe uma abordagem (estruturada ou orientada a objeto) que você considere mais interessante. Descreva a sua análise e justifique porque uma abordagem pode ser mais interessante do que a outra.. Na Programação Estruturada, construímos procedimentos ou funções que serão aplicados de maneira global no nosso programa, é mais simples de criar e contém uma programação de fácil entendimento. Por outro lado, apresenta uma manutenção de código mais trabalhosa pois segue uma sequência única de programação, logo, alterar uma linha impactará diretamente nas demais, outro ponto é que não há reaproveitamento de código na PE, o que gera uma demanda maior de tempo para criação e alteração de um programa. Quando se trata de POO (programação orientada a objetos) identificamos objetos e criamos métodos que irão interagir com os objetos. Pode-se modelar o problema de uma forma que fique mais natural e parecido com o mundo real. Objetos são instâncias de classes, que determinam qual informação um objeto contém e como ele pode manipulá-la. Um programa desenvolvido com uma linguagem de programação orientada a objetos manipula estruturas de dados através dos objetos da mesma forma que um programa em linguagem tradicional utiliza variáveis. É sustentado por 4 pilares – • Abstração - abstrai a complexidade de um sistema e se concentrar em apenas partes desse sistema, consiste em um dos pontos mais importantes dentro de qualquer linguagem Orientada a Objetos. Como estamos lidando com uma representação de um objeto real (o que dá nome ao paradigma), temos que imaginar o que esse objeto irá realizar dentro de nosso sistema. • Encapsulamento - técnica que faz com que detalhes internos do funcionamento dos métodos de uma classe permaneçam ocultos para os objetos. Por conta dessa técnica, o conhecimento a respeito da implementação interna da classe é desnecessário do ponto de vista do objeto, uma vez que isso passa a ser responsabilidade dos métodos internos da classe. • Herança - O reuso de código é uma das grandes vantagens da programação orientada a objetos. Muito disso se dá por uma questão que é conhecida como herança. Essa característica otimiza a produção da aplicação em tempo e linhas de código. • Polimorfismo - Na natureza, vemos animais que são capazes de alterar sua forma conforme a necessidade, e é dessa ideia que vem o polimorfismo na orientação a objetos. Como sabemos, os objetos filhos herdam as características e ações de seus “ancestrais”. Entretanto, em alguns casos, é necessário que as ações para um mesmo método seja diferente. Em outras palavras, o polimorfismo consiste na alteração do funcionamento interno de um método herdado de um objeto pai. Baseado nas descrições de PE e POO acima, na minha opinião, penso que a POO seja mais interessante para se programar, pois com o reuso de código a economia de temo e praticidade para se dar manutenção no código sejam pontos importantes na escolha entre os dois métodos.