Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de...

26
Caracterizaç ão e Objetivos das LP - Jorge Paulo

Transcript of Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de...

Page 1: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Caracterização e Objetivos das LP

- Jorge Paulo

Page 2: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

O que é CLP?

- Conceitos de Linguagens de Programação- Caracterização das linguagens de

programação de computadores e seus diferentes paradigmas de programação

- Estudo dos conceitos básicos de cada paradigma- Modelos computacionais- Semântica

Page 3: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Objetivos

- Proporcionar ao aluno uma visão geral dosconceitos envolvidos no projeto e no uso dos diversos paradigmas de linguagens de programação.

Page 4: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Por que estudar CLP?- Aumento da capacidade de expressar ideias

Page 5: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Por que estudar CLP?- Aumento da capacidade de expressar ideias- Maior embasamento para a escolha de linguagens apropriadas

Page 6: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Por que estudar CLP?- Aumento da capacidade de expressar ideias- Maior embasamento para a escolha de linguagens apropriadas- Capacidade aumentada para aprender novas linguagens

Page 7: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Por que estudar CLP?- Aumento da capacidade de expressar ideias- Maior embasamento para a escolha de linguagens apropriadas- Capacidade aumentada para aprender novas linguagens- Entender melhor a importância da implementação

Page 8: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Por que estudar CLP?- Aumento da capacidade de expressar ideias- Maior embasamento para a escolha de linguagens apropriadas- Capacidade aumentada para aprender novas linguagens- Entender melhor a importância da implementação- Aumento da capacidade de projetar novas linguagens

Page 9: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Por que estudar CLP?- Aumento da capacidade de expressar ideias- Maior embasamento para a escolha de linguagens apropriadas- Capacidade aumentada para aprender novas linguagens- Entender melhor a importância da implementação- Aumento da capacidade de projetar novas linguagens- Avanço global da computação

Page 10: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Introdução

- Comunicação com o computador- A programação de computadores começou na década de 30 com o surgimento dos computadores pré-modernos- Em 1948, surgiu a linguagem Plankalkül, mas logo foi esquecida por não ter muita utilidade na época

Page 11: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Introdução

- A partir da década de 50 foram criadas as primeiras linguagens modernas, como Cobol e Fortran- Entre as décadas de 70 e 80 foram criadas linguagens que são muito importantes até hoje, como C, Prolog, Pascal e C++, e paradigmas de programação junto com elas- Nos anos 90 surgiram Java e PHP

Page 12: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Linguagens mais utilizadas 2013

Page 13: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Domínios de Aplicação

Aplicações Científicas

- Estão relacionadas com computação de grandes dados. A primeira linguagem para aplicações cientificas foi o FORTRAN

- Curiosidade: Até hoje, nenhuma linguagem é significativamente melhor que FORTRAN

Page 14: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Domínios de Aplicação

Aplicações Comerciais

- Softwares para controlar e/ou gerenciar empresas em geral

Page 15: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Domínios de Aplicação

Inteligência Artificial

- É uma área abrangente das aplicações de computador caracterizada pelo uso de computações simbólicas ao invés de numéricas.

Page 16: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Domínios de Aplicação

Programação de Sistemas

- Desenvolvimento de Software básico. A programação de sistemas exige linguagem de execução rápida.

Page 17: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Domínios de Aplicação

Linguagens de Scripting- As linguagens de script servem para estender a funcionalidade de um programa e/ou controlá-lo e são frequentemente usadas como ferramentas de configuração e instalação em sistemas operacionais. São também frequentemente usadas em jogos, como por exemplo, os jogos Impossible Creatures e Tibia, que usa a linguagem Lua para controlar as ações dos personagens e o ambiente de batalha.

Page 18: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Características das LP

Writability (Capacidade de Escrita)

- Refere-se à facilidade de escrever código fonte para a linguagem de programação. O desenvolvedor deve expressar a suanecessidade de uma forma natural

Page 19: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Características das LP

Readability (Capacidade de Leitura)

- Facilidade de seguir a lógica de um programa e descobrir erros apenas lendo o código fonte.Dividir o programa em módulos usando boaspráticas de programação, facilita a leitura docódigo.

Page 20: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Características das LP

Simplicity (Simplicidade)

- Ajuda a manter o programador confiante comrelação ao fonte sendo construído. Pode seralcançada minimizando os recursos utilizados deuma determinada linguagem.

Page 21: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Características das LP

Safety (Segurança)

- Uma linguagem não deve prover formas deescrever códigos que possam gerar resultados danosos. Ex.: Go to, ponteiros e acesso direto àmemória.

Page 22: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Características das LP

Robustness (Robustez)

- Refere-se à facilidade de tratamento deexceções em determinada linguagem.

Page 23: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Características das LP

Factoring (“Fatoração”)

- Refere-se à facilidade de o programadormodificar a estrutura de um código sem alterar a forma como o código fonte é utilizado

Page 24: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Características das LP

Locality (Localidade)

- Uma alteração feita em determinada parte docódigo não deve alterar todo o funcionamentodo código. (Uso de funções)

Page 25: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Características de C

- Writability- Readability- Simplicity- Safety- Robustness- Factoring- Locality

Page 26: Caracterização e Objetivos das LP - Jorge Paulo. O que é CLP? - Conceitos de Linguagens de Programação - Caracterização das linguagens de programação.

Dúvidas????