aula 2 linguagem de programação
DESCRIPTION
Aula de lógica de programaçãoTRANSCRIPT
![Page 1: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/1.jpg)
Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas
Programação em MicroinformáticaProfº Cristian Andrade
FATEC – Garça
![Page 2: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/2.jpg)
Linguagem de Programação
FATEC – Garça
![Page 3: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/3.jpg)
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Histórico
Escolha de uma LP
Uma LP (Linguagem de Programação) é uma linguagem destinada a ser usada por uma pessoa para expressar um processo através do qual um computador pode resolver um problema.
Linguagem de Programação
![Page 4: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/4.jpg)
Definição
Especificação de uma LP
Tradução de LP
Histórico
Escolha de uma LP
� Maior habilidade em resolver problemas: uma maior compreensão de uma LP pode aumentar nossa habilidade em pensar em como atacar os problemas. Tanto melhor se dominarmos os vários modelos de LP.
� Melhor uso de uma LP: compreensão das funções e implementação das estruturas de uma LP nos levam a usar a LP de modo a extrair o máximo de sua funcionalidade e eficiência.
Definição
![Page 5: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/5.jpg)
Definição
Especificação de uma LP
Tradução de LP
Histórico
Escolha de uma LP
� Melhor escolha de uma LP: adequação ao problema.
� Maior facilidade em aprender novas LPs: conceitos chaves comuns às LPs.
� Melhor designer de LPs: linguagens de interfaces de sistemas, extensão de LP via operadores e tipos de dados.
Definição
![Page 6: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/6.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
1955 - 1965
• FORTRAN (FORmula TRANslation)
• COBOL (COmmon Business Oriented Language)
• ALGOL 60 (ALGorithmic Oriented Language)
• LISP (LISt Processing)
• APL (A Programming Language)
• BASIC (Beginners All-purpose Symbolic Instruction Code)
Histórico
![Page 7: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/7.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
1965 - 1971 (LP's baseadas em ALGOL)
• PL/I (Programming Language I)
• SIMULA 67
• ALGOL 68
• PASCAL
Histórico
![Page 8: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/8.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
Linguagens dos anos 80 (criadas na década de 70)
• PROLOG (PROgramming in LOGic)
• SMALL TALK
• C
• MODULA 2
• ADA
Histórico
![Page 9: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/9.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
Fortran
• Desenvolvida em 1956 por John Backus.
• Foi proposta visando a resolução de problemas científicos, para isto utilizando a notação algébrica.
• Desenvolvida, inicialmente para uma máquina específica, o IBM 704.
• É, ainda hoje, uma linguagem muito utilizada no meio técnico-científico, tendo sido aprimorada ao longo do tempo, constituindo as diversas versões disponíveis.
Histórico
![Page 10: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/10.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
Cobol
• Desenvolvida em 1959 pelo Departamento de Defesa dos EUA e fabricantes de computadores.
• Padrão para as aplicações comerciais e muito utilizada ainda hoje.
• Seu desenvolvimento se deu de forma independente da máquina.
• O código é "English-like" e é excelente para a manipulação de arquivos.
Histórico
![Page 11: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/11.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
Algol
• Linguagem algébrica de origem européia, desenvolvida pelo comitê Internacional popular.
• Destinada à resolução de problemas científicos.
• Influenciou o projeto de quase todas as linguagens projetadas a partir de 1960.
• É pouco usada em aplicações comerciais devido à ausência de facilidades de E/S na descrição e pelo pouco interesse de vendedores.
• Além disso, tornou-se padrão para a publicação de algoritmos.
Histórico
![Page 12: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/12.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
Lisp
• Linguagem funcional criada em 1960, por John McCartly do grupo de IA do MIT, para dar suporte à pesquisa em Inteligência Artificial.
• Foi inicialmente desenvolvida para o IBM 704.
• Existem muitos dialetos pois LISP nunca foi padronizada.
• Em 1981 surgiu o Common LISP que é um padrão informal.
• Os programas em LISP são listas.
Histórico
![Page 13: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/13.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
APL
• Foi desenvolvida por volta de 1960 por Kenneth Iverson -Harvard, IBM.
• Utiliza notação matemática, com operadores poderosos, possuindo muitos operadores e muitos caracteres o que gera grande dificuldade de implementação.
• Tem uma notação compacta e é utilizada em aplicações matemáticas. Segue o modelo funcional e tem como principal estrutura de dados o ARRAY, com diversos operadores sobre esta estrutura.
Histórico
![Page 14: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/14.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
Basic
• Desenvolvida em meados dos anos 60 por John Kemeny e Thomas Kurtz no Dartmouth College.
• Teve como objetivo ensinar alunos de graduação a usarem um ambiente interativo de programação, através de uma LP de fácil aprendizado.
• Com o surgimento dos microcomputadores de baixo custo, no início dos anos 70, o BASIC tornou-se muito popular, embora não tenha contribuído muito tecnologicamente.
Histórico
![Page 15: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/15.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
PL/I
• Desenvolvida em meados dos anos 60 pela IBM com o objetivo de incorporar características das LPs existentes numa única LP de propósito geral.
Possui:
• Estrutura de bloco, de controle e recursividade do ALGOL 60;
• Subprogramas e E/S formatadas do FORTRAN;
• Manipulação de arquivos e registros do COBOL;
• Alocação dinâmica de memória e estruturas encadeadas doLISP;
• Operações de arrays do APL.
É uma linguagem difícil de aprender e implementar devido
a sua grande complexidade.
Histórico
![Page 16: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/16.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
Algol 80
• É muito diferente do Algol 60.
• É uma linguagem de propósito geral que foi projetada para a comunicação de algoritmos, para sua execução eficiente em vários computadores e para ajudar seu ensino a estudantes.
• É de difícil descrição, o que resultou em uma baixa popularidade.
Histórico
![Page 17: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/17.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
Simula 67
• Linguagem baseada em Algol 60.
• Criada no início dos anos 60 por Ole Johan Dahl e Kristan Nygaard, na Noruega.
• É destinada à descrição de sistemas e programação de simulações.
Histórico
![Page 18: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/18.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
Pascal
• Desenvolvida por Niklaus Wirth em 1969.
• É uma linguagem de fácil aprendizado e implementação.
• Suporta programação estruturada e é adequada para o ensino de programação.
• Em meados dos anos 80 também passou a ser usada para a programação em micro-computadores.
• Influenciou praticamente todas as linguagens mais recentes.
Histórico
![Page 19: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/19.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
Prolog
• Linguagem desenvolvida em 1972 em Marseille na França.
• É destinada a aplicações de Inteligência Artificial e se baseia em lógica formal.
• É a LP do projeto japonês de quinta geração.
Histórico
![Page 20: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/20.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
Small Talk
• Criada por Alan Kay da Xerox - Palo Alto no início dos anos 70.
• Apresenta um ambiente de programação com menus pop-up, windows e mouse (modelo para Apple Macintosh).
• Segue o modelo orientado a objetos, possuindo o conceito de classe do SIMULA 67 mais encapsulamento, herança e instanciação.
Histórico
![Page 21: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/21.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
C
• Desenvolvida pelo Bell Lab no início dos anos 70, visando a implementação do UNIX.
• Tem facilidades para a programação em "baixo nível" e gera código eficiente.
• Possui um grande conjunto de operadores, o que permite um código compacto, porém de baixa legibilidade.
• É excelente para construir programas portáveis.
Histórico
![Page 22: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/22.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
Módula 2
• Criada por Niklaus Wirth no final dos anos 70, é uma linguagem de propósito geral, baseada em melhorias no Pascal.
• É boa para projetos de desenvolvimento de software de grande porte. Além disso, foi usada para ensinar programação.
Histórico
![Page 23: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/23.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Tradução de LP
Escolha de uma LP
Ada
• Foi desenvolvida no início dos anos 70 pelo Departamento de Defesa dos Estados Unidos.
• É dedicada aos "embedded systems" (operam como parte de um sistema maior) e se baseia no Pascal.
• Usa conceitos de classe do Simula 67, adota o tratamento de exceções de PL/I e provê facilidades para processamento concorrente.
• Foi projetada para apoiar aplicações numéricas, programação de sistemas e aplicações que envolvem considerações de tempo real e concorrência.
Histórico
![Page 24: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/24.jpg)
Definição
Porque estudar LP?
Tradução de LP
Histórico
Escolha de uma LP
Sintaxe e Semântica
Ex: a := b (Pascal)
� comando de atribuição correto (sintaxe)
� substitua valor de a com o valor atual de b (semântica)
Especificação de uma LP
![Page 25: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/25.jpg)
Definição
Porque estudar LP?
Especificação de uma LP
Histórico
Escolha de uma LP
Interpretador
Um interpretador traduz o programa fonte um comando por vez e chama uma rotina para executar esse comando.
Compilador
Um Compilador traduz o programa fonte inteiro, produzindo um outro programa equivalente, em linguagem executável.
Tradução de uma LP
![Page 26: Aula 2 linguagem de programação](https://reader034.vdocuments.com.br/reader034/viewer/2022052622/5591d8a01a28ab0d468b46e4/html5/thumbnails/26.jpg)
Escolha de uma LP
• implementação
• competência na LP
• portabilidade
• sintaxe
• semântica
• ambiente de programação
• modelo de computação