Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
O conhecimento do conceito de tipos abstratos de dados estimula a utilizao desse mtodo de programao mesmo em LPs que no possuem mecanismos especficos para a sua implementao.
Introduo
Introduo
Linguagens de Programao
PDS visa gerao e manuteno de software de modo produtivo e garantia de padres de qualidade
Introduo
Linguagens de Programao
Introduo
Linguagens de Programao
Introduo
Linguagens de Programao
Introduo
Introduo
11
Facilidade de Aprendizado
Excesso de Caractersticas Prejudicial c = c + 1; c += 1; c++; ++c;
Modificabilidade
const float pi = 3.14;
Introduo
Linguagens de Programao
12
Linguagens de Programao
Introduo
Linguagens de Programao
15
Especificao de LPs
Lxico (vocbulos) x Sintaxe (regras) x Semntica (significado)
a = b;
O lxico estabelece que a, =, b e ; fazem parte do vocabulrio da LP. O sinttico indica que a sentena formada pelo identificador a, o smbolo =, o identificador b e o smbolo ; designa um comando vlido de atribuio. A semntica indica que o comando deve ser executado de modo a substituir o valor de a pelo valor atual de b.
Introduo
Linguagens de Programao
16
Especificao de LPs
Sintaxe (BNF Backus-Naur Form)
expresso valorvaloroperadorexpresso valor nmerosinalnmero nmero semsinalsemsinal.semsinal semsinal dgitodgitosemsinal dgito 0123456789 sinal + operador +*
Introduo
Linguagens de Programao
17
Especificao de LPs
Semntica
Enfoque Operacional
Necessidade de Padronizao
ISO, IEEE, ANSI, NIST
Introduo
Linguagens de Programao
18
Implementao de LPs
Compilao Interpretao Pura Hbrido LP Fonte LP Fonte LP Fonte
Compilao Interpretao L.M. L.M. Dados Dados Execuo Dados Execuo Execuo L.M.
Compilao
Cdigo Intermedirio
Interpretao
Introduo
Linguagens de Programao
19
Implementao de LPs
Compilao
Eficincia Problemas com Portabilidade e Depurao
Interpretao Pura
Flexibilidade, Portabilidade e Facilidade para Prototipao e Depurao Problemas com Eficincia e Maior Consumo de Memria Raramente Usada
Hbrido
Introduo
Paradigma
Introduo
Linguagens de Programao
21
Paradigmas de LPs
Paradigmas
Introduo
Linguagens de Programao
22
Paradigmas de LPs
Imperativo
Processo de Mudanas de Estados Varivel, Valor e Atribuio Clulas de Memria
Estruturado
Refinamentos Sucessivos Blocos Aninhados de Comandos Desestmulo ao uso de desvio incondicional
Introduo
Linguagens de Programao
23
Paradigmas de LPs
Orientado a Objetos
Abstrao de Dados
Concorrente
Processos Executam Concorrem por Recursos Simultaneamente e
Introduo
Linguagens de Programao
24
Paradigmas de LPs
Declarativo
Especificaes sobre a Tarefa a Ser Realizada Abstrai-se de Como o Computador Implementado
Funcional
Programa Composto por Funes
Lgico
Predicados Deduo Automtica
Introduo
Linguagens de Programao
25
Evoluo de LPs
Dificuldade de Programao em Linguagens de Mquina Foco de Primeiras LPs era Eficincia de Processamento e Consumo de Memria Baixa Produtividade de Programao
Programao Estruturada Tipos Abstratos de Dados Orientao a Objetos
Introduo
Linguagens de Programao
26
Origem de LPs
FORTRAN (1957)
aplicaes numricas
LISP (1959)
programao funcional
ALGOL (1960)
programao estruturada
COBOL (1960)
aplicaes comerciais
Introduo Linguagens de Programao 27
Origem de LPs
BASIC (1964)
ensino para leigos ensino de programao estruturada simplicidade
PROLOG (1972)
implementao de UNIX
programao lgica
Linguagens de Programao 28
Introduo
Origem de LPs
SMALLTALK (1972) ADA (1983) C++ (1985)
programao orientada a objetos programao concorrente disseminao da programao orientada a objetos mais simples e confivel que C++ Internet
Linguagens de Programao 29
JAVA (1995)
Introduo