PARADIGMAS DE
PROGRAMAÇÃO
Prof.ª Ms. Eng.ª Elaine Cecília Gatto
Algoritmos e Estruturas de Dados
Engenharia de Computação
Universidade Sagrado Coração
Paradigmas de Programação
• Um paradigma de programação fornece e determina a visão
que o programador possui sobre a estruturação e execução do
programa.
Paradigma Imperativo ou
Procedural
• Primeiro faça isso e depois faça aquilo
• Sequência de comandos passo-a-passo
• Algol, Basic, C e Pascal
Paradigma Declarativo ou
Funcionais
• Qual é o problema?
• Descrever um problema, sem se preocupar com qual
algoritmo será utilizado para resolvê-lo.
• Algoritmo “universal”, capaz de solucionar qualquer problema.
O problema se adapta a esse algoritmo, e não o contrário.
• Baseia-se em verdades universais e regras de inferência.
• Linguagem Prolog;
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 que, no final, se
associam para mostrar o resultado na tela.
• Linguagem Haskell
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.
• Linguagem Java
Outros
•
•
•
•
•

Linguagens de scripts
Linguagens para banco de dados
Linguagens para simulação
Linguagens visuais
Etc
Linguagens de Baixo Nível
• Linguagem Assembly
• São linguagens simbólicas ou código de máquina
• Abstração de dados baixa
Linguagens de Médio Nível
• São linguagens dificieis de programar pois estão tanto na
camada mais alta quanto na mais baixa
• Abstração de dados média
• Linguagem C
Linguagens de Alto Nível
• São mais fáceis de programar
• O programador não precisa saber vários detalhes sobre o
computador para usar estas linguagens
• Abstração de dados alta
• Linguagem Java
Interpretação e Compilação
•
•
•
•

Ambos são tradutores de código
Interpretador não gera executável
Compilador gera executável
Interpretador interpreta as linhas de código e não mostram
erros
• Compilador analisa a gramática e sintaxe da linguagem e
aponta erros. Só funciona, de fato, depois que os erros são
eliminados.

Algoritmos - Paradigmas de Programação

  • 1.
    PARADIGMAS DE PROGRAMAÇÃO Prof.ª Ms.Eng.ª Elaine Cecília Gatto Algoritmos e Estruturas de Dados Engenharia de Computação Universidade Sagrado Coração
  • 2.
    Paradigmas de Programação •Um paradigma de programação fornece e determina a visão que o programador possui sobre a estruturação e execução do programa.
  • 3.
    Paradigma Imperativo ou Procedural •Primeiro faça isso e depois faça aquilo • Sequência de comandos passo-a-passo • Algol, Basic, C e Pascal
  • 4.
    Paradigma Declarativo ou Funcionais •Qual é o problema? • Descrever um problema, sem se preocupar com qual algoritmo será utilizado para resolvê-lo. • Algoritmo “universal”, capaz de solucionar qualquer problema. O problema se adapta a esse algoritmo, e não o contrário. • Baseia-se em verdades universais e regras de inferência. • Linguagem Prolog;
  • 5.
    Paradigma funcional • Subdividiro 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 que, no final, se associam para mostrar o resultado na tela. • Linguagem Haskell
  • 6.
    Paradigma orientado aobjetos • 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. • Linguagem Java
  • 7.
    Outros • • • • • Linguagens de scripts Linguagenspara banco de dados Linguagens para simulação Linguagens visuais Etc
  • 8.
    Linguagens de BaixoNível • Linguagem Assembly • São linguagens simbólicas ou código de máquina • Abstração de dados baixa
  • 9.
    Linguagens de MédioNível • São linguagens dificieis de programar pois estão tanto na camada mais alta quanto na mais baixa • Abstração de dados média • Linguagem C
  • 10.
    Linguagens de AltoNível • São mais fáceis de programar • O programador não precisa saber vários detalhes sobre o computador para usar estas linguagens • Abstração de dados alta • Linguagem Java
  • 11.
    Interpretação e Compilação • • • • Ambossão tradutores de código Interpretador não gera executável Compilador gera executável Interpretador interpreta as linhas de código e não mostram erros • Compilador analisa a gramática e sintaxe da linguagem e aponta erros. Só funciona, de fato, depois que os erros são eliminados.