Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas...

49
Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Introdução as Linguagens de Programação (POO-II) Prof. Responsável Wagner Santos C. de Jesus www1.univap.br/wagner [email protected] 1

Transcript of Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas...

Page 1: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Universidade do Vale do Paraíba

Colégio Técnico Antônio Teixeira Fernandes

Introdução as Linguagens de Programação(POO-II)

Prof. Responsável

Wagner Santos C. de Jesus

www1.univap.br/wagner

[email protected]

1

Page 2: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Assuntos Abordados

1. Conceito de Linguagem de Programação;2. Definição de Linguagem de Programação;3. Motivação para uso de uma Linguagem de

Programação;4. Compiladores ou Interpretadores;5. Origem de Algumas Linguagens;6. Programação para Microcontroladores;7. Linguagem para Desenvolvimento de Jogos;8. Linguagens API (Interface de Aplicação de

Programas);

[email protected]

Page 3: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

• Banco de Dados

• Modelagem de dados

• Mineração de dados

• Geoprocessamento

• Arquitetura de dados

• Administração de dados

[email protected] 3

Processamento de Dados

Page 4: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Mercado de Trabalho

[email protected] 4

Page 5: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

[email protected] 5

42%

26%

11%

2%

15%

4%

Ofertas de empregos para Informática

42 % - Informática, TI, Telecomunicações

26 % - Suporte Técnico

11 % - Assistente de Informática

2 % - Auxiliar Técnico em Informátia

15 % - Desenvolvimento

4 % - Vendedor de Informática

Disponível em: <https://www.google.com/search?ibp=htl;jobs&hl=pt-BR&kgs=b0ef31d4331047e6&q=empregos+em+informatica&shndl=-1&source=sh/x/im/textlists/detail&entrypoint=sh/x/im/textlists/detail#fpstate=tldetail&htidocid=3dfzAnhkFPYhfCiRAAAAAA%3D%3D&htiq=empregos%20em%20informatica&htivrt=Jobs>. Acesso em 22 de Jan. 2019.

Page 6: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

[email protected] 6

Técnica de Mineração de Dados (CLUSTER)

D1

D2

Page 7: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Conceito de Linguagem de Programação (LP)

[email protected]

Page 8: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Conhecimentos necessário para o aprendizado de programação:

• Matemática (Estatística)

• Linguagens naturais (Inglês, Português ..).

• Comunicação verbal e interpretativa.

[email protected] 8

Page 9: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

[email protected] 9https://brainly.com.br/tarefa/20285878

Page 10: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

[email protected] 10

Pergunta dos alunos

Mas professor, onde vou usar isso na minha

vida ??s

Alunos

Page 11: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

[email protected] 11

Sem Planejamento

Page 12: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Máquina de Von Neumann

John Von Neumann,nascido Margittai Neumann

János Lajos (Budapeste, 28de dezembro de 1903 —

Washington, D.C., 8 defevereiro de 1957) foium matemático húngaro deorigem judaica,

naturalizado estadunidense.Universidade Princeton

[email protected]

Page 13: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Mecânica de Hardware

13

Unidade

Logica e

Aritmética

Unidade Central de Processamento - CPU

Controle

Memória

EntradaSaída

Mundo Externo

Para Mundo Externo

[email protected]

Proposto por Von Neumann

Page 14: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Função de uma LP (Linguagem de Programação)

Algoritmo

Sistema Operacional

AplicativoLinguagem de Programação

Mundo Externo

Processador

[email protected]

Page 15: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Definição de Linguagem de Programação

[email protected]

Page 16: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Definição

Uma linguagem de programação é um métodopadronizado para comunicar instruções paraum computador. É um conjunto de regrassintáticas e semânticas usadas para definirum programa de computador. Permite que umprogramador especifique precisamente sobrequais dados um computador vai atuar, comoestes dados serão armazenados ou transmitidos equais ações devem ser tomadas sob váriascircunstâncias.

[email protected]

Page 17: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Característica principais de uma LP

– Sintaxe

– Semântica

– Pragmática

[email protected]

Page 18: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Exemplo de Características de uma LP

=Sintaxe

program simplesvar x : integer := 3

Beginx := x + 5

end.

?

Formato da Escrita

Significado

Semântica

Pragmática

Raciocínio Lógico

[email protected]

Page 19: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Motivação para uso de uma Linguagem de Programação

[email protected]

Page 20: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Porque usar uma LP

Uma das principais metas das linguagensde programação é que programadorestenham uma maior produtividade, permitindoexpressar suas intenções mais facilmente doque quando comparado com a linguagem queum computador entende nativamente (códigode máquina).

[email protected]

Page 21: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Mapeamento Hexadecimal

[email protected]

Page 22: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

22

Classificação das LP

Baixo Nível

Médio Nível

Alto Nível

Linguagem Assembler

Linguagem C++, Pascal e Java

VB, C#, PHP

Linguagens de Script ActionScript,

JavaScript

[email protected]

Page 23: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Objetivo prático

Linguagens de programação sãoferramentas importantes paraque programadores e engenheiros desoftware possam escrever programas maisorganizados e com maior rapidez.

[email protected]

Page 24: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Evolução das Linguagens de Programação

(1946-1954)

Primeira geração

(1955-1964)

Segunda geração

(1964-1977)

Terceira geração

(1977-1991)

Quarta geração

(1991- ....)

Quinta geração

Primeira geração - linguagem de máquina

Segunda geração - linguagens de montagem (assembly).

Terceira geração - Linguagens procedurais.

Quarta geração - Linguagens aplicativas

Quinta geração - Linguagens voltadas a Inteligência artificial como as linguagens

lógicas (Prolog) e as linguagens funcionais (Lisp).

[email protected]

Page 25: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Classificação da Linguagem Programação

• Genéricas • Específicas

[email protected]

Page 26: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Genérica

Possibilitam o desenvolvimento para qualquer tipo de aplicação. (Cientifica e ou Comercial).

Exemplo (Java, C++, C# e Basic)

[email protected]

Page 27: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Específica

Possibilitam o desenvolvimento para qualquer um tipo de aplicação.

Exemplo (Php, ActionScript, CSS e HTML)

[email protected]

Page 28: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

CIENTIFICA

COMERCIAL

Áreas de atuação de uma Linguagem de Programação

[email protected]

Page 29: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

[email protected]

O Octave originalmente foicriado por volta de 1988, como propósito de ser um softwarede apoio a um livro degraduação em projetos dereator químico, escrito porJames B. Rawlings daUniversidade de Wisconsin-Madison e John G. Ekerdt daUniversidade do Texas.Originalmente foi idealizadocomo ferramenta muitoespecializada relacionado àcriação de reatores químicos.Posteriormente, após constataras limitações dessa abordagem,optou-se pela construção deuma ferramenta mais flexível.

Exemplo de Linguagem Cientificas

Page 30: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Exemplo de Linguagem Comercial

COBOL (sigla de COmmon Business Oriented Language) - LinguagemComum Orientada para os Negócios é uma linguagem deprogramação orientada para o processamento de banco dedados comerciais.

1 - IDENTIFICATION DIVISION2 - ENVIRONMENT DIVISION3 – DATA DIVISION4 – PROCEDURE DIVISION

[email protected]

Page 31: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Funcionamento das Linguagens de Programação

[email protected]

Page 32: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

LP – Compiladas ou Interpretadas

[email protected]

Page 33: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Compilador

Programa

Arquivo - Máquina

Compilador

[email protected]

Page 34: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Interpretador

Programa

Execução Programa

Interpretador

[email protected]

Page 35: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Origem de Algumas

Linguagens

[email protected]

Page 36: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Criador da LP (Pascal)

Niklaus Wirth 1970 (Suiço)

Criada Tendo emmente encorajar ouso de códigoestruturado.

[email protected]

Page 37: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Exemplo Programa Pascal program Soma_Pares;

uses crt;

var superior, soma, num: integer;

begin

soma:=0;

write ('Entre com o limite superior');

readln (superior);

num:=2;

repeat

soma:=soma+num;

num:=num+2;

until (num > superior);

writeln('A soma dos números pares de 2 até ', superior,' é ', soma);

readln;

[email protected]

Page 38: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Os criadores da linguagem C

Ken Thompson e Dennis Ritchie (da esquerda pra direita)

Linguagem criada paradesenvolvimento dokernell do sistemaoperacional Unix

[email protected]

Page 39: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Exemplo de Programa Cmain(){

int superior, soma, num, i;

soma = 0;

printf("Entre com limite Superior:");

scanf("%d",&superior);

num = 2;

do {

soma += num;

num += 2;

} while(num <= superior);

printf("Soma dos numeros pares de 2 ate %d = %d \n",superior,soma);

printf("------------- Fim ------------");

int d;

scanf("%s",&d);

}[email protected]

Page 40: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

A Linguagem Java

• Desenvolvida nadécada de 90 por umaequipe deprogramadoreschefiada por James

Gosling, na empresaSun Microsystems.

Programador Canadense

Foto 2005

Os mentores do projeto eram Patrick Naughton, Mike Sheridan, e James Gosling.

[email protected]

Page 41: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Exemplo de Programa Javaimport java.util.Scanner;

public class Somapar {

public static void main(String args[]){

int superior, soma, num, i;

soma = 0;

Scanner entrada = new Scanner(System.in);

System.out.println("Entre com limite Superior:");

superior = entrada.nextInt();

num = 2;

do {

soma += num;

num += 2;

} while(num <= superior);

System.out.printf("Soma dos numeros pares de 2 ate %d = %d \n",superior,soma);

}

} [email protected]

Page 42: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Linguagens Residentes (Embarcadas)

[email protected] 42

Page 43: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Hardware Linguagem Residente

CP 200CP 500

TK 90X [email protected]

Page 44: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Programação para Microcontrolador

[email protected]

Page 45: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Exemplo de Microcontrolador

#include <8051.h>void main(void) {while(true) {if(P1_0 == 1){

P2_0 = ~P2_0;}

}}

[email protected]

Page 46: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Exemplo de Linguagem para Desenvolvimento de Jogos

[email protected]

Page 47: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Exemplo ActionScript

onClipEvent (enterFrame) {if(Key.isDown (Key.RIGHT )){

_root["Atirador"]._x+=10}

if(Key.isDown (Key.LEFT )){ _root["Atirador"]._x-=10

}

if(Key.isDown (Key.SPACE)) { _root["Tiro"]._x = _root["Atirador"]._x _root["Tiro"]._y = _root["Atirador"]._y

_root["Tiro"]._visible = true;_root.pontos = 140;//_root.controle_tiro = 1;

}}

[email protected]

Page 48: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Linguagens API (Interface de Aplicação de Programas)

[email protected]

Page 49: Introdução as Linguagens de Programação (POO-II)LP – Compiladas ou Interpretadas wagner@univap.br 32. Compilador Programa Arquivo -Máquina Compilador wagner@univap.br 33. Interpretador

Linguagem para Computação Gráfica

class Cone {

public static void main(String[] args) {

Navegation.NavegationInfo("Cone");

Materialpr material = new Materialpr();material.setdiffuseColor("0 1 0");BaseCirclepr basecircle = new BaseCirclepr();

basecircle.setheight("2");basecircle.setbottomRadius("1");basecircle.setside("TRUE");basecircle.setbottom("TRUE");

Conepr cone = new Conepr (material,basecircle,"Cone");

Viewpr.display("Cone");

}}

[email protected]