Paradigmas de Linguagem de Programação
O Papel de LPs no PDS
O objetivo de LPs é tornar mais efetivo o Processo de Desenvolvimento de Software (PDS)
PDS visa geração e manutenção de softwares de modo produtivo e com garantias de padrões de qualidade
Propriedades desejadas em um Software:
•Confiabilidade
•Manutenibilidade
•Eficiência
Desempenho
Propriedades desejáveis em LPs
•Legibilidade
•Marcadores de Blocos
if (x>1)
if (x==2)
x=3;
else x=4;
Desvios Incondicionais (goto)
•Facilidade de Aprendizado
•Excesso de Características é Prejudicial
c = c + 1;
c+=1;
c++;
++c;
•Eficiência
•Verificação Dinâmica de Tipos
•Confiabilidade
Tratamento de Exceções
•Reusabilidade
•Redigibilidade
•Tipos de Dados Limitados (FORTRAN)
•Ausência de Tratamento de Exceções
•Portabilidade
•Rigor no Projeto
Pode Contrastar com Eficiência
Conceitos Básicos
•Paradigma
•Léxico
•Sintaxe
Semântica
Paradigma
•Conjunto de regras que estabelecem fronteiras (domínios) e descrevem como resolver os problemas dentro destas fronteiras.
•Exemplo ou modelo que servem de norma.
•Forma de representar e manipular o conhecimento.
Léxico e Sintaxe
•Léxico: é o conjunto de palavras que compõem a linguagem (também chamadas de palavras reservadas)
•Sintaxe: em LPs é a forma de suas expressões, de suas instruções e de suas unidades de programas.
Semântica
•Em LPs é o significado das expressões, instruções e definição de unidades de programas:
•Exemplo: a sintaxe do IF no Pascal é:
IF <expressão condicional> THEN
<instrução>
•Significado: se o resultado da expressão condicional for verdadeiro, executa a instrução, do contrário não.
Implementação de LPs
•Compilação
•Eficiência
•Problemas com Portabilidade e Depuração
•Interpretação Pura
•Flexibilidade, Portabilidade e Facilidade de Depuração
•Problemas com Eficiência
•Híbrido
•Une Vantagens dos Outros Métodos
•JVM
Paradigmas de LPs
•Imperativo
•Processo de Mudanças de Estados
•Variável, Valor e Atribuição
•Células de Memória
•Declarativo
•Especificações sobre a Tarefa a Ser Realizada
•Abstrai-se de Como o Computador é Implementado