aula 1 - paradigmas de linguagem de programação

Upload: andressa

Post on 06-Mar-2016

21 views

Category:

Documents


0 download

DESCRIPTION

paradigmas

TRANSCRIPT

  • Aula 1

    Apresentao da Disciplina e Introduo

    Prof. Deise Galvo

    [email protected]

    Paradigmas de Linguagem de

    Programao

  • PLANO DE ENSINO E APRENDIZAGEM (PEA)

  • Paradigmas de Linguagem de

    Programao

    Ementa

    Abordagem dos fundamentos das linguagens de

    programao.

    Estudo dos meios de avaliao e das implementaes das linguagens.

    Estudo de linguagens em espcie e de sua evoluo.

    Estudo dos tipos de dados, estruturas de construo de um programa e introduo aos subprogramas.

  • Paradigmas de Linguagem de

    Programao

    Objetivos

    Transmitir ao aluno princpios de avaliao e

    implementao das linguagens de programao.

    Abordar tipos de dados e estruturas de controle das

    linguagens de programao.

  • Paradigmas de Linguagem de

    Programao

    Contedo Programtico

    Critrios de avaliao de linguagens de programao

    Projeto de linguagem de programao

    Meios de implementao de linguagem de programao

    Tipos especficos de linguagem de programao

    Tipos de dados

    Estrutura de uma linguagem

    Subprogramas

  • Paradigmas de Linguagem de

    Programao

    Procedimentos Metodolgicos

    Aulas tericas expositivas, resoluo de exerccios

    em sala de aula e acompanhamento das Atividades

    Prticas Supervisionadas.

  • Paradigmas de Linguagem de

    Programao

    Datas importantes:

    03/04/2014 Entrega da 1 parte da ATPS

    10/04/2014 P1

    29/05/2014 Entrega da 2 parte da ATPS

    05/06/2014 P2

    26/06/2014 P3

  • Paradigmas de Linguagem de

    Programao

    Composio das Notas:

    P1: 60% Prova + 20% Trabalho Prtico + 20% ATPS

    P2: 60% Prova + 20% Trabalho Prtico + 20% ATPS

    P3: Prova final com todo contedo trabalhado na

    disciplina.

  • Paradigmas de Linguagem de

    Programao

    Bibliografia:

    1) SEBESTA, Robert W.. Conceitos de Linguagem de Programao. 9 ed. So Paulo: Bookman, 2011.

    2) LOPES, Anita; GARCIA, Guto. Introduo Programao : 500 algoritmos resolvidos. 1 ed. Rio de Janeiro: Campus - Elsevier, 2002.

    3) F.G . ASCNCIO, Ana; CAMPOS, Edilene V.C. (orgs.) et al. Fundamentos da programao de computadores: algoritmos, Pascal, C/C++ e JAVA.. 2 ed. So Paulo: Pearson, 2007.

    4) MIZRAHI, Victorine V.. PLT Treinamento em linguagem C: mdulos 1 e 2.. 1 ed. So Paulo: Pearson, 2009.

    5) DEITEL, Harvery M.; DEITEL, Paul J.. Java : como programar. 6 ed. Porto Alegre: Bookman, 2005.

    6) FORBELLONE, Andr L. V.. Lgica de Programao: a construo de algortmos e estruturas de dados. 2 ed. So Paulo: Pearson - Prentice Hall, 2009.

    7) LOPES, Anita.. Introduo programao : 500 algoritmos resolvidos. 1 ed. Rio de Janeiro: Campus - Elsevier, 2002.

    8) ZIVIANI, Nivio. Projeto de Algoritmos com implementao em pascal e C.. 1 ed. So Paulo: Pioneira - Thomson Learning, 2002.

  • Paradigmas de Linguagem de

    Programao

    Cronograma de Aulas

    1) Apresentao da Disciplina e da metodologia de trabalho. Apresentao do Plano de Ensino e Aprendizagem. Introduo Linguagens de Programao. (27/02/2014)

    2) Introduo aos principais critrios de avaliao das linguagens de programao: legibilidade. (06/03/2014)

    3) Critrios de avaliao das linguagens de programao: capacidade de escrita. (06/03/2014)

    4) Critrios de avaliao das linguagens de programao: confiabilidade. (06/03/2014)

    5) Abordagem das principais influncias sobre o projeto de uma linguagem de programao: arquitetura do computador e metodologias de programao. (13/03/2014)

    6) Mtodos de implementao: compilao, interpretao pura, implementao hibrida. (20/03/2014)

    7) Evoluo das principais linguagens de programao: viso geral de Fortran e Lisp. (27/03/2014)

    8) Evoluo das principais linguagens de programao: viso geral de COBOL, Smalltalk. (03/04/2014)

    9) Atividades de Avaliao. (10/04/2014)

    10) Introduo a tipos de dados. Tipos primitivos: inteiro, float, decimal, booleano, caracter, string. Exemplos e exerccios de definio de tipos. (17/04/2014)

  • Paradigmas de Linguagem de

    Programao

    Cronograma de Aulas

    11) Tipos de dados definidos pelo usurio e tipo matriz. Abordagem de ndices de matrizes. Exemplos e exerccios. (24/04/2014)

    12) Tipos de dados: registro de dados. Definies dos registros. Referncia a campos e operaes com registros. Exemplos e exerccios. (08/05/2014)

    13) Introduo a expresses e instrues de atribuio. Expresses aritmticas (+,-,*, /). Contador e acumulador. Expresses lgicas (e, ou, no) e booleanas (V ou F). Exemplos. (15/05/2014)

    14) Estruturas de uma linguagem: introduo a instrues de seleo. Exemplos e exerccios. (22/05/2014)

    15) Introduo a instrues iterativas ou de repetio. Exemplos e exerccios. (22/05/2014)

    16) Introduo a Subprogramas: conceito, tipos, utilizao, parmetros. Exemplos. (29/05/2014)

    17) Atividades de reviso de contedo para a avaliao do segundo bimestre. (29/05/2014)

    18) Prova Escrita Oficial (05/06/2014)

    19) Exerccios de Reviso (Exerccios para casa)

    20) Prova Substitutiva (26/06/2014)

  • Introduo Linguagens de Programao.

  • Paradigmas de Linguagem de

    Programao

    Definio 1

    Linguagens de programao so mtodos

    padronizados destinados a realizar a comunicao

    com o computador atravs de instrues.

  • Paradigmas de Linguagem de

    Programao

    Definio 2

    Uma linguagem de programao um conjunto de

    regras sintticas e semnticas usadas para definir

    um programa de computador.

  • Paradigmas de Linguagem de

    Programao

    Definio 3

    Uma linguagem de programao uma ferramenta

    utilizada para escrever programas.

  • Paradigmas de Linguagem de

    Programao

    As linguagens de programao surgiram da

    necessidade de tornar o processo de tornar o

    desenvolvimento de software mais produtivo.

  • Paradigmas de Linguagem de

    Programao

    Evoluo

    As primeiras linguagens de programao eram

    simples: Linguagens de baixo nvel

    Ex.: Linguagem de mquina

    Com o avana dos computadores e a necessidade de se desenvolver aplicaes mais complexas as LPs passaram a ser mais robustas. Linguagens de alto nvel

    Ex.: C, C++, Java, Pascal, ...

  • Paradigmas de Linguagem de

    Programao

    Evoluo

  • Paradigmas de Linguagem de

    Programao

    Classificao de Linguagens de Programao

    Linguagem de mquina

    Capaz de interpretar instrues sem precisar ser traduzida.

    Programas em linguagens de mquina so compostos por

    sequncias de bits.

    Ex.: 000110110

    As sequncias de bits referem-se a instrues e dados a

    serem executados.

  • Paradigmas de Linguagem de

    Programao

    Classificao de Linguagens de Programao

    Linguagem simblica

    Abstrao sobre as instrues e os dados.

    As instruo so representadas por um rtulo simblico.

    Ex.: MOV AX, 0003

    Dados podem ser especificados diretamente na instruo ou por seu endereo de memria.

    O endereo denotado por um rtulo arbitrrio definido pelo programador.

    Seus programas precisam ser traduzidos para linguagem de mquina.

    Os tradutores so chamados de montadores (assemblers).

    Linguagem utilizada quando necessrio extrair a mxima eficincia do hardware.

  • Paradigmas de Linguagem de

    Programao

    Classificao de Linguagens de Programao

    Linguagem de alto nvel

    Alto grau de abstrao, prximo ao modo de o ser humano pensar.

    Seus programadores trabalham com o conceito de comando e no de instrues de mquina.

    Um nico comando pode se referir a vrios comandos em uma linguagem de baixo nvel.

    O acesso a memria realizado por meio de variveis e constantes.

    Os programas escritos em alto nvel precisam ser traduzidos ou interpretados para serem executados.

  • Paradigmas de Linguagem de

    Programao

    Histrico

    Ada Lovelace desenvolveu o

    primeiro programa da histria,

    no perodo de nove meses

    entre os anos de 1842 e 1843.

    Ela criou um algoritmo para o

    clculo da sequncia de

    Bernoulli usando a mquina

    analtica de Charles Babbage.

  • Paradigmas de Linguagem de

    Programao

    Histrico

    Em 1936, Alan Turing

    formalizou o conceito de um

    algoritmo e desenvolveu a

    Mquina de Turing, marco

    para a Cincia da

    computao.

  • Paradigmas de Linguagem de

    Programao

    Histrico

    Primeiras linguagens de Programao eram

    Assembly ou similar.

    Na dcada de 50, surgiram diversas linguagens:

    Fortran

    COBOL

    LISP

    Algol 60

  • Paradigmas de Linguagem de

    Programao

    Histrico

    Nas dcadas de 60 e 70 surgiram outras que

    influenciaram a maioria dos paradigmas de

    programao que temos atualmente.

    C

    Prolog

    Etc.

  • Paradigmas de Linguagem de

    Programao

    Histrico

    Na dcada de 80 passou-se a considerar requisitos

    de mais alto nvel, como desempenho,

    programao em larga escala e estruturas mais

    inteligentes.

    C++

    Perl

    Etc.

  • Paradigmas de Linguagem de

    Programao

    Histrico

    Na dcada de 90, com a popularizao da internet, as

    linguagens passam a se importar com conexo rede, integrao com navegadores, etc.

    Python

    Java

    Haskell

    Ruby

    PHP

    C#

  • Paradigmas de Linguagem de

    Programao

    Grficos Evoluo do uso das linguagens de programao ao logo do tempo.

  • Paradigmas de Linguagem de

    Programao

    Grficos

  • Paradigmas de Linguagem de

    Programao

    Grficos Commits