Вы находитесь на странице: 1из 6

Qual a diferença entre programação estruturada e

programação orientada a objetos?

A minha definição de programação estruturada é: uma forma de escrever os códigos


sem encapsular dados, ou seja, que em qualquer parte do código seja possível utilizar
um dado guardado em uma variável, sem a necessidade de permissão. Com o auxílio
de métodos estruturados pode-se modificar e retornar dados em variáveis. Não há
organização em camadas, que veremos logo mais neste artigo como funciona, assim
sendo, todos os tipos de códigos estão nos mesmos arquivos. Certamente é a mais fácil
de aprender e mais fácil de controlar o fluxo da estrutura do código, daí o nome de
programação estruturada.

Definição encontrada na internet


Programação estruturada é uma forma de programação de computadores que preconiza
que todos os programas possíveis podem ser reduzidos a apenas três estruturas:
sequência, decisão e iteração (esta última também é chamada de repetição),
desenvolvida por Michael A. Jackson no livro "Principles of Program Design" de 1975.
Leia também sobre a história da programação. Tendo, na prática, sido transformada na
programação modular, a programação estruturada orienta os programadores para a
criação de estruturas simples nos programas, usando as sub-rotinas e as funções. Foi à
forma dominante na criação de software anterior à programação orientada por objetos.
(Wikipédia).

Exemplos de liguagens: C. COBOL, Fortran, Perl

Definição de programação orientada a objetos (POO):


Minha definição de programação orientada a objetos: A orientação a objetos
se dá ao fato da escrita do código tentar trazer objetos do mundo real para se
tornar parte do código. Com o uso de classes, podemos encapsular estes objetos
e utilizá-los apenas se estivermos estas classes instanciadas e se ela permitir o
uso externo ou não. Outra parte importante da orientação é podermos usufruir de
camadas de programação. Na internet, por exemplo, podemos ter a camada de
interface, onde os métodos da linguagem base do site ou sistema conversam
através de métodos com a linguagem HTML. Então, temos a camada de interface,
a camada de métodos de união entre a interface e o backend (camada de
inteligência e mecanismo de manipulação dos dados).

Ainda podemos dizer que a linguagem de orientação a objetos é uma forma


melhor de se reaproveitar códigos, pois todos os métodos criados têm uma
finalidade e podem ser invocados toda vez que se fizer necessário. Exemplo: Um
método para inserir um registro no banco de dados. Esta função vai ser chamada
toda vez que você quiser inserir um registro em uma determinada tabela, desta
forma, precisa-se fazer uma vez o código e sempre reutilizá-lo.

Facilita para a organização do projeto, separar estes conjuntos de objetos em


classes.

Definição encontrada na internet: A orientação a objetos é um modelo de análise,


projeto e programação de sistemas de software baseado na composição e
interação entre diversas unidades de software chamadas de objetos. Em alguns
contextos, prefere-se usar modelagem orientada ao objeto, em vez de
programação. De fato, o paradigma "orientação a objeto", tem bases conceituais
e origem no campo de estudo da cognição, que influenciou a área de inteligência
artificial e da linguística, no campo da abstração de conceitos do mundo real.

Na qualidade de método de modelagem, é tida como a melhor estratégia para se


eliminar o "gap semântico", dificuldade recorrente no processo de modelar o
mundo real do domínio do problema em um conjunto de componentes de software
que seja o mais fiel na sua representação deste domínio. Facilitaria a
comunicação do profissional modelador e do usuário da área alvo, na medida em
que a correlação da simbologia e conceitos abstratos do mundo real e da
ferramenta de modelagem (conceitos, terminologia, símbolos, grafismo e
estratégias) fosse a mais óbvia, natural e exata possível.

Exemplos de linguagens: JAVA, C#, C++, Python.


Comparativo entre as formas de programação:

Reutilização de código:
PE: É possível reutilizar códigos na programação estruturada, porém em muitos
casos você será obrigado a utilizar o famoso "CTRL C + CTRL V".

POO: Com a POO você é capaz de elaborar um relacionamento entre diversos


componentes, estabelecendo comunicação entre eles e facilitando assim, e muito
a reutilização de código, além da facilidade de se herdar atributos e
comportamentos de outros objetos.

Manutenção do código:
PE: A manutenção do código se baseia no que o programador que criou o código fez
para deixar de comentários no próprio código ou se escreveu um roteiro sobre o que o
programa faz.
POO: Na POO, se o código seguir os padrões de construção, qualquer programador
que conheça os padrões pode facilmente encontrar problemas, utilizar o código escrito
ou até mesmo melhorá-lo se assim se fazer necessário.

Forma de execução:
PE: A forma de execução da programação estruturada se dá pelo uso de
resolução de tarefas, um código resolvendo um problema.

POO: A programação orientada a objetos tenta fazer com que os problemas


sejam resolvidos de forma que possamos resolvê-los futuramente com a mesma
eficiência.
Vantagens e desvantagens:

Vantagens PE:

 Provê um melhor controle sobre o fluxo de execução do código, quando


comparadacom a POO.
 É de fácil compreensão, sendo amplamente usada em cursos introdutórios de
programação.

Desvantagens PE:

 Ainda se foca em como a tarefa deve ser feita e não em o que deve ser feito.
 Tende a gerar códigos confusos, onde tratamento dos dados são misturados
como comportamento do programa.
Vantagens POO:

 Provê uma melhor organização do código.


 Contribui para o reaproveitamento de código.
Desvantagens POO:

 Pode não possui o mesmo desempenho de códigos estruturados similares.


 Seus conceitos são de difícil compreensão se comparados aos conceitos
daProgramação estruturada.

Вам также может понравиться