Caracterização e Objetivos das LP - Jorge Paulo
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
Objetivos - Proporcionar ao aluno uma visão geral dos conceitos envolvidos no projeto e no uso dos diversos paradigmas de linguagens de programação.
Por que estudar CLP? - Aumento da capacidade de expressar ideias
Por que estudar CLP? - Aumento da capacidade de expressar ideias - Maior embasamento para a escolha de linguagens apropriadas
Por que estudar CLP? - Aumento da capacidade de expressar ideias - Maior embasamento para a escolha de linguagens apropriadas - Capacidade aumentada para aprender novas linguagens
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
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
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
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
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
Linguagens mais utilizadas 2013
Aplicações Científicas 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
Aplicações Comerciais Domínios de Aplicação Aplicações Comerciais - Softwares para controlar e/ou gerenciar empresas em geral
Inteligência Artificial 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.
Programação de Sistemas 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.
Linguagens de Scripting 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.
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 sua necessidade de uma forma natural
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 boas práticas de programação, facilita a leitura do código.
Características das LP Simplicity (Simplicidade) Ajuda a manter o programador confiante com relação ao fonte sendo construído. Pode ser alcançada minimizando os recursos utilizados de uma determinada linguagem.
Características das LP Safety (Segurança) Uma linguagem não deve prover formas de escrever códigos que possam gerar resultados danosos. Ex.: Go to, ponteiros e acesso direto à memória.
Características das LP Robustness (Robustez) Refere-se à facilidade de tratamento de exceções em determinada linguagem.
Características das LP Factoring (“Fatoração”) Refere-se à facilidade de o programador modificar a estrutura de um código sem alterar a forma como o código fonte é utilizado
Características das LP Locality (Localidade) Uma alteração feita em determinada parte do código não deve alterar todo o funcionamento do código. (Uso de funções)
Características de C - Writability - Readability - Simplicity - Safety - Robustness - Factoring - Locality
Dúvidas????