Histórico de Linguagens de Programação
|
|
|
- Ângelo Arantes de Andrade
- 8 Há anos
- Visualizações:
Transcrição
1 Bacharelado em Ciência da Computação PARADIGMAS DE PROGRAMAÇÃO Histórico de Linguagens de Programação Prof. Claudinei Dias
2 Objetivos Geral: Estudar as características dos principais modelos de programação quanto a estruturação, interação e a relação entre as linguagens de programação. Estudar os tipos de técnicas de implementação utilizados para o desenvolvimento de programas e solução de problemas. Específicos: Estudar os custos de implementação; Comparar técnicas entre linguagens de programação; Estudar as estruturas conceituais para resolver problemas; Entender alguns dos principias conflitos entre os recursos de linguagens. 2
3 Plano de Ensino 1. Histórico de linguagens de programação 1.1. Motivação 1.2. Histórico 1.3. Paradigmas de programação 3
4 Motivação Adquirir habilidades de expressar ideias; A profundidade da soluções está relacionada pelos recursos da linguagem com o qual está trabalhando; Avanço do poder computacional e das tecnologias; Aperfeiçoa-se a compreensão do significado da implementação; Aprimora-se a habilidade de aprender novas linguagens. 4
5 Histórico FORTRAN ALGOL-60 COBOL SIMULA LISP Pascal Smalltalk PROLOG Ada DBASE II Godel Haskel Java C++ Delphi ALGOL-60 Modula2 PL BASIC OO Imperativo Funcional Lógico C ML Miranda 5
6 Programação Imperativa Fortran, Pascal, PL, C Programação Orientada a Objetos Java, C++, Smalltalk Programação Funcional Lisp, Haskel Programação Lógica Prolog 6
7 Paradigma Imperativo Primeiro paradigma que surgiu Programas desenvolvidos por variáveis e comandos Também denominado de paradigma procedural Vantagens: Eficiência (modelo de Von Neumann) Modelagem natural de aplicações do mundo real Paradigma dominante Problemas: Relacionamento indireto E/S ocasionando difícil legibilidade, erros durante manutenção 7
8 Paradigma Orientado a Objetos É um sub-paradigma do imperativo O diferencial é a metodologia quanto a modelagem do sistema É estruturada em módulos (classes) que agrupam operações (métodos) Vantagens: Todas as do paradigma imperativo Classes: modularidade, reusabilidade e extensibilidade Problemas: Semelhantes ao do imperativo 8
9 Paradigma Funcional Modelagem por funções que descrevem relações explicitas e precisa Estilo declarativo sem comandos como atribuição Vantagens: Manipulação de programas mais simples Prova de propriedade Transformações de otimização Problemas: Mecanismos primitivos de E/S 9
10 Paradigma Lógico Modelagem com relações entre E/S Estilo declarativo mas na prática assume características imperativas Vantagens: Todas do funcional Alto nível de abstração Problemas: Todos do paradigma funcional Não possuem tipos de dados 10
11 Características importantes em LP Legibilidade É o quanto o código é de fácil leitura e compreensão, quanto maior a legibilidade, mais fácil será de entender o código e achar erros de programação. Por exemplo o uso do goto (como o switch, case em C), dificulta o acompanhamento lógico da leitura do código, ou também o operador * em C, que é usado tanto para operação de multiplicação quanto para uso de ponteiros. (Mattos, Renato. Linguagem de Programação). 11
12 Características importantes em LP Confiabilidade É o quanto pode-se confiar em um código de uma linguagem, ou seja, uma linguagem com uma boa confiabilidade, não propicia erros de programação, assim sendo a confiabilidade está relacionada a legibilidade. Quando uma linguagem possui recurso de tratamento de exceções, também aumenta a confiabilidade, pois é mais difícil o programador esquecer de tratar a exceção ou de tratar de forma errada. (Canalle, Gabrielle K. ; de Araújo C. Everton. C/C++ e Java: Principais Características). 12
13 Características importantes em LP Eficiência É o quanto os códigos são mais eficientes, atingem seus objetivos de maneira rápida, segura. Essa característica pode variar de código para código, um site de um banco, por exemplo, é preciso ser seguro, rápido, de fácil acesso, de fácil uso, etc. Essas características são critérios de eficiência. 13
14 Características importantes em LP Facilidade de aprendizado Está diretamente relacionado à legibilidade, pois se um código não tem boa legibilidade, não tem uma fácil compreensão do código, e não terá um aprendizado fácil. Facilidade de Aprendizado é o quanto é simples para algum programador que não conheça a linguagem, aprende-la. Uma linguagem com uma boa facilidade de aprendizado, tem uma boa legibilidade e é simples de entende-la. 14
15 Características importantes em LP Ortogonalidade É a capacidade da linguagem de programação de deixar o programador usar seus conceitos básicos sem que se tenha efeitos não desejados ou aleatórios, ou seja, quanto menos exceções de código a linguagem permite. Por exemplo a não necessidade de declaração do tipo da variável, é ruim tanto para a legibilidade quanto para a ortogonalidade. (Mattos, Renato. Linguagem de Programação). 15
16 Características importantes em LP Modificabilidade São as facilidade oferecidas pela linguagem para que se mude uma parte do código tendo que mudar o mínimo possível as outras partes. Por exemplo uma linguagem Orientada a Objetos possui essa característica, pois é uma característica forte do próprio paradigma, outro exemplo são as constantes que algumas linguagem permitem ser declaradas, assim se for necessário mudar a constate, muda-se uma vez na sua declaração e não no seu uso. (Mattos,Renato. Linguagem de Programação). 16
17 Características importantes em LP Portabilidade É a capacidade do código de fazer a mesma coisa em diferentes plataformas ou sistemas operacionais independentemente da ferramenta utilizada para traduzi-lo. Assim um mesmo programa pode ser utilizado em diversos ambientes e situações sem que seja necessário fazer uma reescrita de código para adaptá-lo em um novo ambiente ou situação (Mattos,Renato. Linguagem de Programação). 17
18 Características importantes em LP Reusabilidade É a capacidade de se utilizar o mesmo código, ou trecho do código em outra situação, outra característica forte do paradigma orientado a objetos, assim as linguagem que seguem a esse paradigma são de alta reusabilidade. Essa é uma característica muito boa que se faz ganhar bastante tempo e consequentemente, dinheiro quando se trata de se desenvolver vários softwares. 18
19 Características importantes em LP x 19
20 Bibliografia da Disciplina BIBLIOGRAFIA : PRATT, T. W., ZELKOVITZ, M. Programming Languages: Design and Implementation. 4ªed. Prentice Hall, ISBN MICHELL, JOHH C. Concepts in Programming Languages. Cambridge University Press, SEBESTA, R.W. Conceitos de Linguagens de Programação. 5a ed. Editora Bookman ISBN VAREJÃO, F.M. Linguagens de Programação. Editora Campus ISBN
21 Bacharelado em Ciência da Computação PARADIGMAS DE PROGRAMAÇÃO Histórico de Linguagens de Programação Prof. Claudinei Dias
Introdução. Parte 01. Desenvolvimento de Programação Orientada a Objetos. Prof. Pedro Neto
Introdução Parte 01 Prof. Pedro Neto Aracaju Sergipe - 2011 Conteúdo 1. Introdução i. Paradigmas de ii. Motivação da OO iii. Desafio das novas tecnologias iv. Ambientes de Desenvolvimento Modernos v. OO
Paradigmas de Linguagens Computacionais (PLC) (Apresentação da disciplina)
Paradigmas de Linguagens Computacionais (PLC) (Apresentação da disciplina) George Darmiton da Cunha Cavalcanti ([email protected]) Informações Básicas Professor George Darmiton da Cunha Cavalcanti Monitores
Linguagens de Programação. Introdução. Carlos Bazilio
Linguagens de Programação Introdução Carlos Bazilio [email protected] http://www.ic.uff.br/~bazilio/cursos/lp ??? Pascal aux := 0 for i:=1 to 10 do aux := aux + i 10: i = 1 20: if i > 10 goto 60
Linguagens de Programação
Linguagens de Programação Prof a Jerusa Marchi Departamento de Informática e Estatística Universidade Federal de Santa Catarina e-mail: [email protected] Linguagens de Programação p. 1/5 Linguagens de
Aula 1 Java Prof. Dr. Sylvio Barbon Junior
5COP101 Linguagens de Programação Aula 1 Java Prof. Dr. Sylvio Barbon Junior Sylvio Barbon Jr [email protected] 1 Sumário 1) Razões para Estudar Conceitos de LP; 2) Domínios das Linguagens de Programação 3)
Revisão: linguagens de programação
Revisão: linguagens de programação Definição, histórico, paradigmas e semântica Prof. Thiago A. S. Pardo [email protected] Definição Uma linguagem de programação é uma linguagem destinada a ser usada
Linguagens de Programação
Visão Geral Faculdade de Computação - UFU Agosto - 2009 1 Princípios 2 O que é uma linguagem de programação? Linguagens naturais facilitam a expressão e o intercâmbio de idéias entre as pessoas. Assim
Paradigmas de Linguagens
Paradigmas de Linguagens Aula 1: Introdução e Conceitos Básicos Professora Sheila Cáceres O que é um paradigma??? Paradigmas de Linguagens - Sheila Cáceres 2 O que é um paradigma??? Paradigmas de Linguagens
MINISTÉRIO DA EDUCAÇÃO CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS DIRETORIA DE GRADUAÇÃO
DISCIPLINA: Linguagens de Programação CÓDIGO: 2ECOM.031 Data de Elaboração: Janeiro/2012 Carga Horária: Total: 30 h/a; Semanal: 02 aulas; Créditos: 02 Modalidade: Prática Classificação do Conteúdo pelas
Paradigmas. Fortran, Algol, Algol-68, Pascal, C, Cobol, PL/I
Paradigmas Paradigmas Tradicional Fortran, Algol, Algol-68, Pascal, C, Cobol, PL/I Paradigmas Tradicional Fortran, Algol, Algol-68, Pascal, C, Cobol, PL/I OO Simula-67, Smalltalk, C++, Eiffel, Object Pascal,
Nomes, vinculações e escopos
Nomes, vinculações e escopos Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
Nomes, vinculações e escopos
Nomes, vinculações e escopos Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
Conceitos de Linguagens de Programação - Características. Paavo Soeiro
Conceitos de Linguagens de Programação - Características Paavo Soeiro Motivação Para que possa escolher uma linguagem apropriada ao problema. Melhorar o entendimento da linguagem utilizada. Facilitar o
Fundamentos de Programação 1
Fundamentos de Programação 1 Slides N. 2 E / Prof. SIMÃO Slides elaborados pelo Prof. Robson Linhares elaborados pelo Prof. Robson Linhares http://www.dainf.ct.utfpr.edu.br/~robson/ Jean Marcelo SIMÃO
OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO
OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO Prof. Msc. Carlos José Giudice dos Santos [email protected] www.oficinadapesquisa.com.br IMPORTÂNCIA DO ESTUDO DAS LINGUAGENS
Paradigmas de Linguagens
Paradigmas de Linguagens Paradigma Imperativo Professora Sheila Cáceres Paradigma Imperativo Um pouco de historia Paradigma fundamentado no conceito de máquina de Turing. A máquina de Turing é uma abstração
Paradigmas de Programação
Paradigmas de Programação Gustavo Jungthon 1, Cristian Machado Goulart 1 1 Faculdade de Informática de Taquara (FIT) Rua Oscar Martins Rangel, 4500 95600 000 Taquara RS Brazil [email protected], [email protected]
PLANO DE UNIDADE DIDÁTICA- PUD
Professor: Marcus Vinícius Midena Ramos Coordenação: Ricardo Argenton Ramos Data: 03/08/2010 Página: 1 de 5 EMENTA: Conceitos básicos de linguagens. Histórico, classificação e principais aplicações de
Linguagem de Programação e Compiladores
Linguagem de Programação e Compiladores Fernando Antônio Asevedo Nóbrega Instituto de Ciências Matemáticas e de Computação USP SCC-206 Introdução à Compilação 24 de abril de 2012 1 / 20 Sumário 1 Introdução
Linguagens de Programação 10 Avaliação de Linguagens
Linguagens de Programação 10 Avaliação de Linguagens Vítor E. Silva Souza ([email protected]) http://www.inf.ufes.br/ ~ vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal
Ederson Luiz da Silva Ciência da Computação. Algoritmos e Programação
Ederson Luiz da Silva Ciência da Computação Algoritmos e Programação Linguagem de programação Linguagem de Programação Linguagem de máquina http://www.assemblyprogressivo.net/p/curso.html Linguagem de
1 Introdução à Programação O que é? Para que serve?... 1
Nesta aula... Conteúdo 1 Introdução à Programação 1 1.1 O que é?................................. 1 1.2 Para que serve?............................. 1 2 Linguagens de programação 2 2.1 Programação estruturada........................
Linguagens de Programação Princípios e Paradigmas
Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Linguagens e Ambientes de Programação 2002-2003 Linguagens de Programação Princípios e Paradigmas Gladys Castillo
Paradigmas de Linguagem de Programação. Aspectos Básicos
Paradigmas de Linguagem de Programação Aspectos Básicos Introdução Nesta segunda etapa de nossos estudos, veremos: aspectos básicos de programa e linguagem de programação; revisão de conceitos de compilador
Curso Profissional de Gestão e Programação de Sistemas Informáticos. Programação e Sistemas de Informação. Módulo 1. 1ª Parte Prof. Sandra Pais Soares
Curso Profissional de Gestão e Programação de Sistemas Informáticos Programação e Sistemas de Informação Módulo 1 1ª Parte Prof. Sandra Pais Soares Linguagens de Programação Linguagens de Programação Uma
Estudos de Linguagens de Programação - Revisão
Estudos de Linguagens de Programação - Revisão ([email protected]) O que é uma Linguagem de Programação? Linguagem usada por uma pessoa para expressar um processo através do qual um computador pode
Paradigmas de Programação
Paradigmas de Programação Aula I Apresentação Prof.: Edilberto M. Silva http://www.edilms.eti.br Prof. Edilberto Silva / edilms.eti.br Professor EDILBERTO M. SILVA [email protected] Bacharel em Ciência
Paradigmas de Programação
Paradigmas de Programação Aula 3 Histórico das Linguagens Prof.: Edilberto M. Silva http://www.edilms.eti.br Prof. Edilberto Silva / edilms.eti.br Definição Linguagens de programação são usadas para descrever
Carga Horária: 60 h Créditos: 3 Pré-requisito: Não se aplica Professor(a): A definir Matricula: A definir Titulação: A definir
PLANO DE ENSINO Centro: Centro de Ciências Tecnológicas Curso: Engenharia Mecânica Departamento: Departamento de Matemática Informática Disciplina: Algoritmos e Programação Código: ASLNCUE085 Carga Horária:
Introdução à Programação Aula 03. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação
Aula 03 Prof. Max Santana Rolemberg Farias [email protected] Colegiado de Engenharia de Computação Linguagens de Programação A primeira linguagem de programação foi criada por Ada Lovelace. Amiga
Linguagens de Programação
Linguagens de Programação de Linguagens de Programação Bruno Lopes Bruno Lopes Linguagens de Programação 1 / 11 Propriedades desejáveis Legibilidade: A leitura do programa é facilmente compreendida? Redigibilidade:
Capítulo 1. Aspectos Preliminares
Capítulo 1 Aspectos Preliminares Tópicos do Capítulo 1 Razões para estudar conceitos de linguagens de programação Domínios de programação Critérios de avaliação de linguagens Influências no projeto de
Programação de Computadores
Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Conceito de Algoritmo Pseudocódigo Tipos de
Introdução à Orientação a Objetos
Introdução à Orientação a Objetos Paradigmas de programação Objetos Classes Paradigma não é só uma palavra bonita! Lógico - tudo é assertiva lógica: Prolog, Mercury; Funcional tudo são listas e funções:
Expressões e sentença de atribuição
Expressões e sentença de atribuição Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
LINGUAGENS DE PROGRAMAÇÃO PROGRAMA E BIBLIOGRAFIA
LINGUAGENS DE PROGRAMAÇÃO PROGRAMA E BIBLIOGRAFIA Mariza A. S. Bigonha e Roberto S. Bigonha UFMG 13 de setembro de 2004 Todos os direitos reservados Proibida cópia sem autorização do autor OBJETIVOS DO
Métodos de implementação de linguagens. Kellen Pinagé
Métodos de implementação de linguagens Kellen Pinagé Sumário Métodos de implementação de linguagens Compilação Interpretação pura Híbrido Métodos de implementação de linguagens Principais componentes de
Linguagens de Programação Conceitos e Técnicas. Amarrações
Linguagens de Programação Conceitos e Técnicas Amarrações Conceituação Amarração (ou binding) é uma associação entre entidades de programação, tais como entre uma variável e seu valor ou entre um identificador
Programação Orientada a Objectos - P. Prata, P. Fazendeiro
Programação Orientada a Objetos 1.1 - Perspectiva histórica: Conceitos A evolução das linguagens de programação tem-se feito na procura de ferramentas: -cada vez mais próximas da percepção humana - e que
Algoritmos e Introdução à Programação. Lógica e Linguagem de Programação
Algoritmos e Introdução à Programação Lógica e Linguagem de Programação Prof. José Honorato Ferreira Nunes [email protected] http://softwarelivre.org/zenorato/honoratonunes Linguagem C Prof.
3. Linguagem de Programação C
Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3. Linguagem de programação C 3.1. Conceitos
Tema da aula Introdução ao paradigma de programação: Orientado a Objetos
Profa. Juliana Santiago Teixeira Disciplina: Programação Orientada a Objetos I Tema da aula Introdução ao paradigma de programação: Orientado a Objetos Paradigma Paradigma é a filosofia adotada na construção
Programação I Apresentação
Programação I Apresentação Prof. Carlos Alberto [email protected] [email protected] Referências JUNIOR, D. P.; NAKAMITI, G. S.; ENGELBRECHT, A. de M. E.; BIANCHI, F. Algoritmos e Programação
Paradigmas de Programação
Paradigmas de Programação Aula 6 Nomes, Vinculações, Verificação de Tipos e Escopos Prof.: Edilberto M. Silva http://www.edilms.eti.br Prof. Edilberto Silva / edilms.eti.br Introdução As linguagens de
Linguagens de Programação Aula 3
Aula 3 Celso Olivete Júnior [email protected] Na aula passada... Classificação das LPs (nível, geração e paradigma) Paradigmas Imperativo, OO, funcional, lógico e concorrente 2/33 Na aula de hoje...
Introdução à Computação
Introdução à Computação Jordana Sarmenghi Salamon [email protected] [email protected] http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda
Capítulo 7. Expressões e Sentenças de Atribuição
Capítulo 7 Expressões e Sentenças de Atribuição Introdução Expressões são os meios fundamentais de especificar computações em uma linguagem de programação Para entender a avaliação de expressões, é necessário
Linguagens de Programação Aula 2
Linguagens de Programação Aula 2 Celso Olivete Júnior [email protected] Relembrando... Aspectos preliminares das linguagens de programação Capítulo 1 Livro: Conceitos de linguagens de programação -
Linguagens de Programação
Curso Superior em Análise e Desenvolvimento de Sistemas História da Ciência e da Tecnologia - (HCT) Linguagens de Programação Alunas: Érika H. Gamas Flávia G. Pereira Melissa B. Alcantud Thaynara da Silva
Projeto de Linguagem. Linguagens de Programação
Projeto de Linguagem Renato Ferreira Linguagens de Programação Linguagens são adotadas para preencher uma demada Facilitar uma aplicação outrora difícil/impossível Independente da qualidade da linguagem
DELEGAÇÃO REGIONAL DO ALENTEJO CENTRO DE FORMAÇÃO PROFISSIONAL DE ÉVORA REFLEXÃO 5
REFLEXÃO 5 Módulos 0782, 0783, 0784 e 0785 1/5 23-05-2013 Esta reflexão tem como objectivo partilhar e dar a conhecer o que aprendi nos módulos 0782 Programação em C/C++ - Estrutura Básica e Conceitos
Capítulo 5. Nomes, Vinculações e Escopos
Capítulo 5 Nomes, Vinculações e Escopos Tópicos do Capítulo 5 Introdução Nomes Variáveis O conceito de vinculação Escopo Escopo e tempo de vida Ambientes de referenciamento Constantes nomeadas Introdução
Paradigmas de Linguagem de Programação. Linguagens de Programação Análise histórica e atual
Paradigmas de Linguagem de Programação Linguagens de Programação Análise histórica e atual Histórico das Linguagens de Programação Década de 40: código de máquina No início da década não havia nenhuma
Questões de Paradigmas de Programação Matéria: Prova 1 4ª EDIÇÃO
Questões de Paradigmas de Programação Matéria: Prova 1 4ª EDIÇÃO QUESTÃO 1 : Enviada por: Francisco Carlos Moraes Junior Duvidas: Thaise Domínios de programação são áreas onde os computadores são usados.
Informática I. Aula 9. Aula 9-17/05/2006 1
Informática I Aula 9 http://www.ic.uff.br/~bianca/informatica1/ Aula 9-17/05/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação
Linguagem Funcional Haskell
Bacharelado em Ciência da Computação PARADIGMAS DE PROGRAMAÇÃO Linguagem Funcional Haskell Prof. Claudinei Dias email: [email protected] Principais Linguagens Funcionais LISP (John McCarthy,
Introdução à Análise e Projeto de Sistemas
Introdução à I. O Que vamos fazer na Disciplina? Saber uma linguagem de programação orientada a objeto (OO) não é suficiente para criar sistemas OO Tem que saber Análise e Projeto OO (APOO) Isto é, Análise
Nomes, vinculações e escopos
Nomes, vinculações e escopos Linguagens de Programação Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional. http://github.com/malbarbo/na-lp-copl
