Paradigmas de Programação
6 de outubro de 2009Introdução
Um paradigma se define na forma como o programador lida com um determinado problema.
Muitos pensam que as linguagens de programação surgiram em uma escala linear, ou seja, que na primeira geração delas o homem se adaptava às máquinas e, depois de várias outras gerações, as linguagens evoluiram umas das outras e capacitaram as máquinas a fazer as necessidades humanas. Na verdade, as linguagens surgiram em diferentes trajetórias, cada uma seguindo um determinado paradigma. Além disso, não é verdadeira a proposição que diz que uma linguagem qualquer é, sem exceção, a evolução da linguagem anterior (historicamente).
As linguagens existentes hoje foram se adaptando a uma única forma de programação e às linguagens inseridas no mesmo paradigma. Dentre esses paradigmas, vou conceituar quatro, que são considerados os principais: paradigma imperativo, declarativo, funcional e orientado a objetos.
1. Paradigma imperativo
“Primeiro faça isso e depois faça aquilo.”
A frase acima resume o paradigma imperativo, também conhecido como paradigma procedural. O problema é analisado até que se encontre uma solução. Basicamente, é uma sequência de comandos que o computador executará, passo-a-passo, modificando dados e variáveis a fim de chegar ao resultado esperado. Algol, Basic, C e Pascal são algumas das linguagens de programação que seguem esse paradigma.
2. Paradigma declarativo
“Qual é o problema?”
O paradigma declarativo caracteriza-se pelo método preciso de descrever um problema, sem se preocupar com qual algoritmo será utilizado para resolvê-lo. A idéia é criar um algoritmo “universal”, capaz de solucionar qualquer problema. O problema se adapta a esse algoritmo, e não o contrário. É baseado em axiomas (verdades universais) e regras de inferência. Prolog é uma linguagem lógica que ilustra essa definição.
3. Paradigma funcional
Subdividir o problema em outras funções e resolver cada uma separadamente, pois os resultados encontrados serão utilizados posteriormente.
Sobre o paradigma funcional, é fácil ilustrar através de um fluxograma. Cada bloco recebe no topo uma entrada de dados e retorna, na base, os dados de saída. A solução geral é dividida em várias funções (daí o nome funcional) que, no final, se associam para mostrar o resultado na tela.

Exemplo simples de paradigma funcional
No (clássico) fluxograma acima, o problema – fazer a média das notas de N alunos -, é dividido em duas etapas: a soma das N notas e a atribuição da quantidade N de alunos à variável contador. Ambos os resultados, soma das notas e contagem dos alunos, são utilizados na operação final, que é dividir a soma das notas pelo número de alunos. É um exemplo muito simples, mas que, penso eu, foi útil para exemplificar o conceito.
4. Paradigma orientado a objetos
Um conjunto de classes faz a interação entre objetos (instâncias) e, com a troca de mensagens entre eles, forma-se o software como um todo.
Praticamente tudo é objeto, cada qual com estrutura e comportamento próprios. Esses objetos são classificados em classes e comunicam entre si. Cada uma dessas representa um determinado fenômeno e seus objetos são organizados hierarquicamente. O conjunto de classes faz a interação entre objetos e a troca de mensagens entre eles forma o software como um todo.
Esse paradigma vem ganhando cada vez mais popularidade. Isso se dá devido ao grande número de vantagens em trabalhar com orientação a objeto, como a flexibilidade do código quando se trabalha em sistemas de grande porte e com uma maior equipe de programadores.
Referência
BROOKSHEAR, J. Glenn. Ciência da Computação: uma visão abrangente . 5. ed
Descer
Ir para o topo
Sou estudante do curso de análise e desenvolvimento de Sistemas do Sistema de Ensino a distância, moro em Belém do Pará, gostei muito da forma simples, clara e objetiva que você abordou e explicou o assunto.
Espero no futuro poder contar com explicações, definições e conceitos sobre outros assuntos relativos a Linguagem de Programação de Computadores.
Muito Obrigado e fique com Deus.
JÂNIO MARQUES
BELÉM-PA