Linguagens de Programação

Documentos relacionados
Conceitos de Linguagens de Programação - Características. Paavo Soeiro

Ederson Luiz da Silva Ciência da Computação. Algoritmos e Programação

Paradigmas de Linguagens

Revisão: linguagens de programação

Linguagens de Programação e Programação Funcional

1 Introdução à Programação O que é? Para que serve?... 1

Linguagens de Programação

Introdução à Programação Aula 03. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Fundamentos de Programação 1

Paradigmas. Fortran, Algol, Algol-68, Pascal, C, Cobol, PL/I

EVOLUÇÃO DAS LINGUAGENS DE PROGRAMAÇÃO

PROGRAMAÇÃO I. Introdução

Paradigmas de Linguagem de Programação. Aspectos Básicos

Introdução à Computação

Paradigmas de Programação

Fundamentos de Sistemas Operacionais

Linguagens de Programação

Programação de Computadores

Programação de Computadores

Algoritmos e Programação

Linguagens de Programação. Introdução. Carlos Bazilio

Algoritmos e Programação

Paradigmas de Programação

Histórico de Linguagens de Programação

Introdução. Parte 01. Desenvolvimento de Programação Orientada a Objetos. Prof. Pedro Neto

Paradigmas de Linguagens Computacionais (PLC) (Apresentação da disciplina)

Introdução à Computação: Máquinas Multiníveis

Introdução as Linguagens de Programação (POO-II) Prof. Responsável Wagner Santos C. de Jesus. www1.univap.br/wagner

Introdução as Máquinas de Autômatos

Programação de Computadores IV. Introdução a Linguagens de Programação Simone Martins SLIDES CEDIDOS POR BRUNO MARQUES 1

Aula 1 Java Prof. Dr. Sylvio Barbon Junior

Linguagens de Programação Princípios e Paradigmas

Técnico em Informática. Web JavaScript. Profª Ana Paula Mandelli

Introdução à Computação: Sistemas de Computação

Linguagens de Programação Aula 3

Programação Estruturada Aula - Introdução a Linguagem de Programação

Introdução. Surge em 1995 (Brendan Eich, programador da Netscape) com o nome de Livescript

3. Linguagem de Programação C

Linguagem de Programação e Compiladores

DELEGAÇÃO REGIONAL DO ALENTEJO CENTRO DE FORMAÇÃO PROFISSIONAL DE ÉVORA REFLEXÃO 5

Python - Variáveis e expressões

Informática I. Aula 9. Aula 9-17/05/2006 1

Nomes, vinculações e escopos

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

Nomes, vinculações e escopos

Linguagens de Programação Funcional

Linguagens de Programação

Olá pessoal, Hoje vamos entender os conceitos sobre linguagem de programação. Definição, tipos de linguagens e as linguagens mais utilizadas

Paradigmas de Linguagem de Programação. Linguagens de Programação Análise histórica e atual

Aula 08 Introdução à Algoritmos. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Programação de Computadores:

Capítulo 1. Aspectos Preliminares

Laboratório de Programação 1 Algoritmos e a Lógica de Programação

Programação I Aula 2 Apresentação da linguagem Python

a) Computador b) Estrutura do sistema i. Hardware ii.software c) Linguagens de Programação i. Paradigmas e Programação 1.

INFORMÁTICA APLICADA AULA 01 LINGUAGEM DE PROGRAMAÇÃO C++

Questões de Paradigmas de Programação Matéria: Prova 1 4ª EDIÇÃO

Fundamentos de Programação. Introdução

ao paradigma imperativo

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

PROGRAMAÇÃO I INTRODUÇÃO À LINGUAGEM DE PROGRAMAÇÃO JAVA. Prof. Dr. Daniel Caetano

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

Introdução Computador Hardware Histórico e Evolução Linguagem de Programação Princípios Básicos

Introdução à Computação

Introdução ao Fortran 90

Fundamentos de Programação 1

PROGRAMAÇÃO EM JOGOS DIGITAIS

Aula 06 - Máquina Multinível e Von Neumann

Introdução a Ciência da Computação

SCALA! Mariah Barros Cardoso Ruann Magalhães Homem Rudá Martinez Pimentel Deeke Yuri Pereira Constante

Transcriçã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

I Introdução às Linguagens de Programação - São linguagens usadas para a comunicação com o computador. -São constituídas de comandos, que quando utilizados corretamente, executam uma ação. - A programação não tem uma data correta de início. - Começou na década de 30, com os primeiros computadores elétricos.

I Surgimento das primeiras Linguagens Linguagem Plankalkul - Foi criada em 1942, a primeira linguagem de programação. - Considerada uma revolução na dinâmica das linguagens de programação. - Introduziu técnicas como: - Atribuições. - Expressões aritméticas. - Adição dos tipos derivados(inteiros, real, arranjos). - Laços e repetição.

I Surgimento das primeiras Linguagens - Foi na década de 50 que as primeiras linguagens modernas surgiram. - Assembly: Entender o funcionamento da máquina para conseguir lidar com tal linguagem. - Em comparação com a programação em código binário, é uma linguagem bem mais fácil de entender e utilizar.

I Surgimento das primeiras Linguagens Fortran: - Desenvolvida John Backus. - Surge em 1957 como uma alternativa mais prática à linguagem Assembly. - Base de desenvolvimento de diversas outras linguagens como por exemplo C.

I Surgimento das primeiras Linguagens LIST - Inicialmente criada por John McCarthy em 1958. - Diversas versões e desenvolvimentos, Principal linguagem utilizada para a exploração de inteligência artificia. ALGOL - Projeto que desenvolvesse uma linguagem universal, independente de máquina. - Três projetos: Algol 58. Algol 60. Algol 68.

I Surgimento das primeiras Linguagens COBOL - Linguagem criada em 1959 por um comité de investigadores de vários sectores. - Propósito a utilização com fins comerciais, financeiros e administrativos para empresas.

Surgimento das primeiras Linguagens PASCAL - Desenvolvida entre 1968/69 por Niklaus Wirth, professor da Faculdade Politécnica de Zurique na Suíça. - Forma de ensinar programação estruturada e é muito baseada em ALGOL.

Surgimento das primeiras Linguagens Small Talk - Desenvolvida em 1969 e lançada em 1972. C - Desenvolvida entre 1969 e 1973 por Dennis Ritchie para ser utilizada com o sistema operativo Unix. - É das linguagens mais utilizadas. - Influenciou outras linguagens como C++, que surgiu inicialmente como uma extensão para C.

Surgimento das primeiras Linguagens - Nos anos 90, a internet surgiu como um furacão, e mudou totalmente o rumo da programação. PYTHON - Criada por Guido van Rossum em 1991. -Torna o trabalho do programador relativamente mais simples. JAVA - Desenvolvida em 1995 por James Gosling. - Deriva das linguagens C e C++.

Surgimento das primeiras Linguagens JAVASCRIPT - Surge em 1995, criada por Brendan Eich. Actualmente é a principal linguagem para programação client-side utilizada em navegadores web. PHP - Importante para o desenvolvimento de aplicativos para WEB. Surgiu em 1995 para substituir scripts Perl que Rasmus Lerdorf (criador do PHP) utilizava na sua página pessoal.

I Paradigmas da Programação Introdução - O termo paradigma significa modelo. - Definição de um padrão a ser seguido. - Determina forma como o programador deve estruturar as instruções em uma dada linguagem. - São dois os principais paradigmas da programação atualmente, a programação imperativa e declarativa.

I Programação Imperativa - Preocupação quanto ao detalhamento do funcionamento do programa. - O programa é visto como um conjunto de rotinas e sub-rotinas. - Foco maior em como um programa deve executar uma tarefa. - Em vez de focar em o que o programa deve fazer.

I Subparadigmas - Pode-se encontrar alguns dos subparadigmas mais empregados atualmente: a programação estruturada, orientada a objetos e a concorrente.

I Estruturada Introdução - Instruções, estruturas de dados e sub-rotinas. - Sequência, decisão e interação. Exemplos - Algumas das linguagens Consideradas estruturadas são: Pascal,C, COBOL e Fortran.

I Estruturada Vantagens - São linguagens mais fáceis de aprender. - Conceitos pequenos e distintos. - Facilita o desenvolvimento e manutenção de sistemas. - São úteis na resolução de problemas mais simples.

I Estruturada Desvantagens - Dificuldades na representação de soluções para certos problemas do mundo real. - Apresentam baixa manutenabilidade em problemas mais complexos. - Conceitos como herança e polimorfismo poderiam ajudar a abstrair certas partes dos mesmos.

I Orientada a Objetos Introdução - Necessidade de compreender o problema por meio da relação existente entre as diversas classes que participam do mesmo. - A solução para o problema deve ser implementada levando-se em consideração os objetos e suas interações que sejam pertinentes ao universo do problema. Exemplos - Alguns exemplos são C++, Object Pascal e Java.

I Orientada a Objetos Vantagens - Organização do código, separado em classes e bibliotecas. - Melhor reaproveitamento do código, por meio de conceitos como herança. Funcionário Gerente Secretária Telefonista

I Orientada a Objetos Desvantagens - Apresenta um maior número de conceitos e abstrações. - Pode tornar seu aprendizado um pouco mais complexo.

I Concorrente Introdução - Com o desenvolvimento da tecnologia, surgiu o conceito do paralelismo. A possibilidade de executar mais de uma tarefa paralelamente, por meio de vários núcleos processadores, ou por meio de um só. - Desenvolver programas visando esse cenário, onde processos executam simultaneamente e concorrem por recursos, como a memória e o próprio processamento. Exemplos - Várias linguagens oferecem suporte à programação concorrente, como Java, C#,C++, C e Object Pascal.

I Concorrente Vantagens - Aumento do desempenho. - Possibilidade de melhor modelagem dos programas. - Determinados problemas computacionais são concorrentes por natureza.

I Concorrente Desvantagens - Programação mais complexa. - Possíveis erros decorrentes da própria concorrência.

Programação Declarativa - Apresenta-se como um paradigma oposto ao paradigma imperativo, uma vez que se preocupa com o que deve fazer, em vez de preocupar-se com como deve ser feito. - Na programação declarativa, não há a ideia de estado do programa, como ocorre na programação imperativa. - Dentro do paradigma declarativo, podemos identificar a programação funcional, a programação lógica e a programação restritiva.

Funcional - A programação funcional busca descrever o programa em torno de funções. - O código-fonte de um programa escrito em linguagem funcional pode ser interpretado como um conjunto de funções que recebem zero ou mais argumentos como entrada e retornam sempre um valor em sua saída. - Cada função, então, deve realizar um conjunto de operações sobre os parâmetros de entrada a fim de obter a saída. Exemplos APL, Lisp, ML, Haskell, OCaml e F#.

Funcional Vantagens - Há uma maior transparência referencial. - Uma vez que todo o programa é composto por funções, tornando-se mais fácil efetuar uma inspeção do código. Desvantagens - não oferece alocação explícita de memória ou declaração explícita de variáveis, necessários para a resolução de muitos problemas reais.

Lógica Esta é a abordagem da programação que faz forte uso da lógica matemática para a resolução de problemas, geralmente por meio de valores ou objetos e relações entre os mesmos, formulando-se assim proposições e regras. Exemplos Linguagens lógicas: Planner e Prolog. - Linguagens de programação derivadas de Planner: QA-4, Popler, Conniver e Qlisp. - Linguagens de programação derivadas de Prolog: Mercury, Visual Prolog, Oz e Frill.

Lógica Vantagens - Muito úteis em problemas que possam ser resolvidos por meio de dedução ou inferência. Desvantagens - Pode haver explosão combinatorial da base de conhecimento levando a grande desperdício de recursos computacionais.

Nível de facilidade de programação Baixo Nível - É a linguagem de máquina e a linguagem Assembler. Ou seja, a programação feita diretamente no nível de microarquitetura. Alto Nível Algorítmicas, imperativas, prescritivas, procedimentais (apoiadas sobre processos), determinísticas e quantitativas. Papel determinante do cálculo numérico.

Nível de facilidade de programação Nível Médio Alguns autores e pesquisadores consideram a linguagem C de médio nível e não de alto nível, devido aos seus recursos de uso direto da máquina e fácil interface com a linguagem de máquina.

Classificação e aplicação - Científicas ARGOL, FORTRAN, MATLAB; - Comerciais Cobol, Dataflex, Forms Developers; - Processamento de Listas LISP; - Gerais Pascal, C, Visual Basic; - Inteligência Artificial PROLOG; - Aplicativos para Internet PHP, Java, HTML;

Bibliografia PEREIRA,F. A história das linguagens de programação. <http://homepages.dcc.ufmg.br/~fernando/classes/dcc024/ementa/reading Mat/historyPL.pdf>. Acesso em: 12 jun. 2015. JORNAL PET NEWS. História da computação. Disponível em: <http://www.dsc.ufcg.edu.br/~pet/jornal/novembro2012/materias/historia_ da_computacao.html>. Acesso em: 10 jun. 2015. INFOESCOLA. História da programação. Disponível em: <http://www.infoescola.com/informatica/historia-da-programacao/>. Acesso: 12 jun. 2015. História das linguagens de programação. Disponível em: http://www.ppgia.pucpr.br/~alekoe/apb/historia-justino.pdf. Acesso em: 12 jun. 2015. HARDWARE.COM.BR. Linguagens de programação. Disponível em: <http://www.hardware.com.br/artigos/linguagens/>. Acesso em: 10 jun. 2015.

Bibliografia INFOESCOLA. O que são linguagens de programação.disponível em: <http://www.infoescola.com/informatica/o-que-sao-linguagens-deprogramacao/>. Acesso em: 09 jun. 2015.