Paradigmas de Programação Flávia Falcão Objetivo Evolução das linguagens de programação. Paradigmas de programação. Noções sobre linguagens: estruturada, orientada a eventos e orientada a objetos. Estudo comparativo de linguagens: variáveis, expressões, escopo, comandos, tipagem, procedimentos, tipos de dados, abstração e controle. Estudo de casos. Bibliografia SEBESTA, R. W. Conceitos de Linguagens de Programação. 5a. Edição. São Paulo: Bookman, 2003. MELO, Ana Cristina Vieira de. SILVA, Flavio Soares Correa da. Princípios de Linguagens de Programação. Edgard Blucher, 2003. VAREJÃO, Flavio. Linguagens de Programação. Campus, 2004 O que é programação Programação pode ser definido como o ato de descrever um algoritmo que resolva um problema proposto de forma aplicável. O que é algoritmo Um algoritmo é uma sequência de passos a ser executada para se chegar a um objeto, no caso, a solução de um problema proposto. Para que a descrição do algoritmo seja aplicável, tem de ser feita usando um protocolo linguístico que o executor reconheça. Este protocolo é chamado linguagem de programação. Linguagem de programação Uma linguagem de programação é um método padronizado para expressar instruções para um computador. É um conjunto de regras sintáticas e semânticas usadas para definir um programa de computador. Uma linguagem permite que um programador especifique precisamente sobre quais dados um computador vai atuar, como estes dados serão armazenados ou transmitidos e quais ações devem ser tomadas sob várias circunstâncias. O que é um paradigma de programação? Modelo, padrão ou estilo de programação suportado por linguagens que agrupam certas características comuns A classificação de linguagens em paradigmas é uma conseqüência de decisões de projeto que impactam radicalmente a forma na qual uma aplicação real é modelada do ponto de vista computacional O que caracteriza uma Linguagem de Programação? Gramática e significado bem definidos Implementável (executável) com eficiência ‘‘aceitável’’ Universal: deve ser possível expressar todo problema computável Natural para expressar problemas (em um certo domínio de aplicação) Sintaxe e Semântica A sintaxe de uma LP diz respeito à forma dos programas Como seus elementos (expressões, comandos, etc) são organizados para formar um programa. Sintaxe e Semântica A semântica de uma LP diz respeito ao significado dos programas Como seus elementos se comportam quando são executados nos computadores. Elementos aparentemente similares podem ter semânticas diferentes! Elementos aparentemente distintos, podem te semânticas equivalentes. Sintaxe e Semântica A sintaxe da LP influencia como os programas são escritos pelos programadores, lidos por outros e analisada pelo computador Compiladores corrigem a sintaxe Sintaxe e Semântica A semântica da LP determina como os programas são compostos pelos programadores, entendidos por outros e interpretados pelo computador Desentendimentos semânticos podem nos levar a produzir o programa errado ou com comportamentos indesejados e imprevisíveis.