You are on page 1of 11

SISTEMA DE ENSINO PRESENCIAL CONECTADO

CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E


DESENVOLVIMENTO DE SISTEMAS
SINCERO ZEFERINO FILHO

PARADIGMAS DE PROGRAMAÇÃO

Santa Luzia
2010
SINCERO ZEFERINO FILHO

PARADIGMAS DE PROGRAMAÇÃO

Trabalho apresentado a disciplina Seminário 1 da


Universidade Norte do Paraná - UNOPAR

Profas.: Denise Dias de Santana e Veronice de Freitas

Santa Luzia
2010
SUMÁRIO

1 INTRODUÇÃO...........................................................................................................3

2 PARADIGMAS............................................................................................................4

2.1 Paradigma de programação procedural ou imperativo.......................................4


2.1.1 Vantagens em um contexto generalista.......................................................4
2.1.2 Desvantagens em um contexto generalista..................................................4
2.1.3 Principais linguagens adaptadas a este paradigma.....................................5
2.1.4 Conclusão.....................................................................................................5

2.2 Paradigma de programação funcional.................................................................5


2.2.1 Vantagens em um contexto generalista.......................................................5
2.2.2 Desvantagens em um contexto generalista..................................................5
2.2.3 Principais linguagens adaptadas a este paradigma.....................................6
2.2.4 Conclusão.....................................................................................................6

2.3 Paradigma de programação lógico......................................................................6


2.3.1 Principais linguagens adaptadas a este paradigma.....................................6
2.3.2 Conclusão.....................................................................................................7

2.4 Paradigma de programação orientada a objeto ou poo......................................7


2.4.1 Vantagens em um contexto generalista.......................................................7
2.4.2 Desvantagens em um contexto generalista..................................................8
2.4.3 Principais linguagens adaptadas a este paradigma.....................................8
2.4.4 Conclusão.....................................................................................................8

3 CONCLUSÃO.............................................................................................................9

REFERÊNCIAS...........................................................................................................10
1 INTRODUÇÃO

A finalidade deste estudo é desenvolver uma pesquisa, sobre os


paradigmas da programação de computadores. Nas páginas seguintes é descrito,
em separado e de forma detalhada, cada um, daqueles que são hoje os mais
comuns.

3
2 PARADIGMAS

O dicionário dá para a palavra paradigma, o significado de padrão ou


modelo, podemos então dizer que: “paradigmas de programação”, são nada mais
que “maneiras de programar”, de se elaborar um programa de computador.
Vejamos cada um deles, mais detalhadamente.

2.1 PARADIGMA DE PROGRAMAÇÃO PROCEDURAL OU IMPERATIVO

Um programa feito neste formato nada mais é que uma sequência


de comandos principal, que possui em um ou mais pontos desta sequência,
comandos de chamada a procedimentos. Os procedimentos são blocos de
programa, nomeados e delimitados, que podem ser usados repetidas vezes, sem
que para isto, tenham que a cada vez que forem necessários, fazerem parte da
sequência principal e portanto tenham que ser rescritos em todos os trechos, onde
serão executados. Geralmente os procedimentos são escritos (declarados), no início
do programa e em cada ponto da sequência principal, onde um deles seja
necessário é colocado um comando de chamada, neste ponto passa a ser
executada a sequência de comandos daquele bloco de código referente ao
procedimento, finalizando-se esta sequência, o programa continua a sequencia
principal, chamando qualquer outro procedimento, que seja necessário.

2.1.1 Vantagens em um contexto generalista

a) Economia na digitação de código;


b) Relativa simplicidade em sua estrutura;
c) Modularidade;
d) Estrutura bastante intuitiva.

2.1.2 Desvantagens em um contexto generalista

a) Complexidade excessiva em programas grandes;


b) Indução a erro, em programas complexos.

4
2.1.3 Principais linguagens adaptadas a este paradigma

ALGOL;
Cobol;
Basic;
Pascal.

2.1.4 Conclusão

Simplicidade, modularidade, economia de código, entre outras tantas


vantagens, fazem com que a programação procedural, tenha grande eficiência na
resolução de grande parte dos problemas. O que lhe garante “vida eterna”.

2.2 PARADIGMA DE PROGRAMAÇÃO FUNCIONAL

A programação funcional opera basicamente como se o programa


inteiro fosse uma função matemática, composta por outras funções, sendo que, uma
função escrita pelo programador é tratada como uma função: “sin()” (função
trigonométrica que calcula o seno de um ângulo), que já é parte da linguagem. O
que permite que uma função seja parâmetro, de outra função, ou dela própria.
Na programação funcional, devemos transformar o problema em
uma função, que muitas vezes, de acordo com a complexidade, se torna uma função
composta de muitas outras.

2.2.1 Vantagens em um contexto generalista

Percebe-se claramente que este tipo de programação se aplica com


grandes vantagens, nas ciências exatas, matemática, física, astrofísica, etc.

2.2.2 Desvantagens em um contexto generalista

São programas visualmente complexos, não são de percepção


instintiva como os de alguns outros modelos, de programação.

5
2.2.3 Principais linguagens adaptadas a este paradigma

APL
LISP
ML
Haskell

2.2.4 Conclusão

Todo aquele problema que pode facilmente ser convertido em uma


função, será facilmente resolvido com a programação funcional.
Todo aquele programador que tem facilidades com as funções, será
bem sucedido com a programação funcional.

2.3 PARADIGMA DE PROGRAMAÇÃO LÓGICO

Indicado e aplicado, especialmente nos problemas relativos à assim


chamada inteligência artificial. Em vez de se ater ao: “Em quais passos se resolve
este problema?” este paradigma se atem ao: “O que exatamente é este problema?”.
Baseado em axiomas lógicos (proposições evidentes por si
mesmas), para o que é conhecido e regras de dedução para obter o que não é
conhecido. Vejamos um exemplo:
a) Conhecimento: Zé é Mineiro;
b) Regra: Todo mineiro é Brasileiro;
c) Dedução: Zé é Brasileiro.

2.3.1 Principais linguagens adaptadas a este paradigma

Prolog
Visual Prolog
Mercury
Ether

6
2.3.2 Conclusão

Não existem propriamente vantagens ou desvantagens na


programação lógica, o que se percebe é a especificidade da aplicação deste
paradigma, como no ramo da inteligência artificial e sistemas especialistas.

2.4 PARADIGMA DE PROGRAMAÇÃO ORIENTADA A OBJETO OU POO

Este paradigma consiste de se criar objetos capazes de resolver o


problema em questão e não por acaso, existe um, único objeto capaz de explicar,
com eficiência, a orientação a objetos é um exemplo, vamos a ele:
a) Problema: “devo ir ao polo da UNOPAR, para a aulas
presenciais”, esta descrição do problema, nos incita a pensar
nos diversos objetos envolvidos;
b) Objetos: Seguindo a sequência de apropriação dos mesmos,
bolsa com material de estudos, chave do automóvel, automóvel,
controle remoto do portão, …;
c) Detalhes: Não importa, na verdade, como funcionam estes
objetos mas apenas que eles funcionem, apanho a bolsa, com a
chave abro a porta do veículo e ligo o motor, com o controle
remoto abro o portão, o automóvel me transportará até o polo e
assim por diante, até terminar a solução do problema.
Um problema é solucionado, seguindo uma serie de operações, aqui
nada mais se faz, que transformar estas operações em objetos, como os objetos
reais, cada qual com suas propriedades, então este problema terá sua solução
facilitada.

2.4.1 Vantagens em um contexto generalista

Neste ponto em que estamos, esta é a possibilidade de mais


extrema modularização, que conseguimos, também temos aqui a máxima
possibilidade de reutilização de código.

7
2.4.2 Desvantagens em um contexto generalista

Sendo necessário um maior estudo do problema e a produção de


um projeto mais elaborado, o trabalho neste paradigma se torna maior que nos
outros.

2.4.3 Principais linguagens adaptadas a este paradigma

Java
C++
Python
Ruby

2.4.4 Conclusão

Por ser necessário um bem elaborado projeto e pela capacidade de


lidar com grandes problemas, que são muitos nos tampos atuais, na área de
programação de computadores, este paradigma tem uma popularidade crescente.

8
3 CONCLUSÃO

Como demonstram diversos estudos, existem apenas diferenças


entre os diversos paradigmas, que trazem vantagens e desvantagens, dependendo
da aplicação que se fará daquele programa, ou do tipo de problema, o que torna um,
mais eficiente que outro, de acordo com o problema a resolver. Não dando margem
portanto, para indistintamente dizer que um é melhor, ou pior, que outro. Assim um
paradigma, ao mesmo tempo que impõe certo tipo de abordagem de um problema,
também oferece condições para determinadas técnicas de programação, na solução
do problema.

9
REFERÊNCIAS

TUCKER, Allen B.; NOONAN Robert E.. Linguagens de programação, princípios


e paradigmas. Editora McGraw Hill, ISBN: 9788577260447.

EXPED, Expansão Editorial S.A.. Enciclopédia Século XX. Terceira Edição. Rio de
Janeiro: Livraria José Olympio Editora, 1977.

FERREIRA, Aurélio Buarque de holanda. O minidicionário da língua portuguesa.


Quarta edição. Rio de Janeiro: Editora Nova Fronteira S.A., 2000.

10

You might also like