Programação Estruturada e Programação Orientada a Objetos by Rafael Santos

Posted: dicembre 29, 2021 By:

Normalmente, os substantivos encontrados na definição do problema se tornam classes diretamente no programa.E da mesma forma, os verbos se tornam métodos. Uma comparação muito clara entre a programação estruturada e a programação orientada a objetos no que diz respeito aos dados, pois no paradigma estruturado, têm-se procedimentos (ou funções) que são aplicados globalmente em nossa aplicação. No caso da orientação a objetos, têm-se métodos que são aplicados aos dados de cada objeto. Essencialmente, os procedimentos e métodos são iguais, sendo diferenciados apenas pelo seu escopo. Então, a POO é um modelo de programação baseado na aproximação do mundo real com o mundo virtual por meio da criação e interação entre objetos, atributos, códigos, métodos e vários outros fatores. A programação estruturada é um paradigma de programação que segue uma lógica e sequência de pensamentos de uma máquina para resolver problemas computacionais.

Procuramos a classe onde o método esta definido, e assim alterando somente aqueles métodos. Um objeto possui atributos, que são as características que o definem, e métodos, que são os comportamentos ou ações que ele pode realizar. Por exemplo, podemos considerar um objeto “Fusca 1964” com atributos como “ano de fabricação” e “formato arredondado”, e métodos como “locomover-se” e “transportar pessoas e cargas”. Antes de decidir qual linguagem ou paradigma usar para resolver um problema, é necessário ter conhecimento da forma como irá resolver o problema, ou seja, criar o algoritmo, que
é independente de linguagem de programação. A partir daí, a linguagem poderá ser escolhida de acordo com a
afinidade ou gosto do programador.

Encapsulamento

O princípio do
encapsulamento é a forma pela qual o programa é divido a ponto de se tornar o mais isolado possível, ou seja, cada método pode ser executado isoladamente e
retornar um resultado satisfatório ou não para cada situação. Sendo assim, o
objeto não necessita conhecer qual forma cada método foi implementado. Agora vamos criar um
objeto para que o mesmo possa ser utilizado, como mostra a Listagem 2. Vamos começar exemplificando uma classe carro utilizando a
linguagem C#, como mostra a Listagem 1. É considerado desnecessário e contra-produtivo o uso de goto, uma estrutura de controle que permite pular instruções incondicionalmente, o que pode gerar código espagueti, muito mais difícil de acompanhar e de manter, e é fonte de numerosos erros de programação.

diferença entre programação estruturada e orientada a objetos

C# é um exemplo de linguagem imperativa que está cada dia mais funcional, mas nunca deixará de ser predominantemente imperativa, e manterá sua orientação a objeto (mas que tem papel cada vez menos importante, desde o 2.0 isso vem caindo). Complementando de acordo com os comentários abaixo, os conceitos são ortogonais, e se não ficou https://badevalor.com.br/desenvolvimento-web-criatividade-tecnica-e-outros-desafios/ claro, em linguagens do “mundo real” ou elas são funcionais ou são imperativas com características orientadas a objeto. Na prática, a maioria das linguagens orientadas por objeto seguem o paradigma imperativo, e da mesma forma muitas linguagens funcionais (como Lisp) incluem características não funcionais – como variáveis de estado.

Exemplos de Uso em Python

Além dos getters e setters clássicos, a classe Produto contém outros
métodos especializados para manipular o atributo estoque, que são os métodos entradaEstoque() e saidaEstoque() (linhas 41 a
47). Estes possibilitam adicionar ou remover uma certa quantidade de produtos ao estoque, oferecendo uma
forma mais intuitiva para manipular a variável relacionada (estoque). Dando continuidade ao exemplo orientado a objetos, na Listagem 9 é declarada a classe Vendedor, que segue o mesmo padrão, concentrando os atributos e métodos relativos ao
conceito de vendedor. Uma constatação que pode ser feita sobre o exemplo apresentado é que para que determinado cliente seja acessado, é
necessário percorrer a lista de clientes até que se encontre o cliente com o código informado. Felizmente existem
outras formas de efetuar essa busca, como usando SQL sobre um banco de dados.

  • Como visto na Listagem 18, a classe Pessoa contém os atributos e métodos que são comuns às classes Cliente e
    Vendedor.
  • Isso acontece porque se trata de um padrão que tem evoluído muito, principalmente em questões voltadas para segurança e reaproveitamento de código, o que é muito importante no desenvolvimento de qualquer aplicação moderna.
  • Atualmente, grande parte das linguagens modernas utilizam os conceitos da programação orientada a objetos, e o POO trouxe novas práticas e conceitos que revolucionaram a escrita dos códigos modernos.
  • É considerado desnecessário e contra-produtivo o uso de goto, uma estrutura de controle que permite pular instruções incondicionalmente, o que pode gerar código espagueti, muito mais difícil de acompanhar e de manter, e é fonte de numerosos erros de programação.
  • Todavia, o seu encapsulamento é um pouco diferente devido à implementação dos métodos getter e setter, além de possuir herança simples e a utilização de interfaces.

Em relação a abstração, o C++ implementa classes, assim como qualquer linguagem orientada a objetos, além de possuir o sentido de privado e público, que é utilizado para encapsulamento. Esse encapsulamento é curso de desenvolvimento web realizado através de métodos getter e setter, muito similar ao visto em Java e C#. Ao lidar com um sistema ou software de uma empresa, é importante pensar quais os objetivos e o que ele planeja resolver.

AUTHOR

admin

All stories by: admin