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

Tamanho: px
Começar a partir da página:

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

Transcrição

1 Introdução à Computação: Sistemas de Computação Beatriz F. M. Souza Computer Science Department Federal University of Espírito Santo (Ufes), Vitória, ES Brazil 1

2 Revisão Aula Passada Sistemas de Computação Parte 3: Software Básico: Sistemas Operacionais. 2

3 Torre de Babel: Existem entre 5000 e 6000 línguas faladas em nosso planeta; Cerca de 200 idiomas possuem mais de um milhão de falantes; O Mandarim por exemplo é falado por mais de 1,3 milhões de pessoas; Mas o que há em comum entre todos as línguas? Fonte:IBGE (site) 3

4 Comunicação: Toda comunicação exige uma linguagem comum baseada em um senso comum ; Linguagens Etimologia: Gramática: é o conjunto de regras individuais usadas para definição e uso de uma determinada língua; Sintaxe: é a parte da gramática de uma linguagem que estuda a disposição das palavras nas frases e das frases no discurso, e a sua relação lógica; Semântica: é o estudo do significado usado por seres humanos para se expressar através de uma linguagem. 4

5 Linguagens de Programação: A linguagem usada na computação também possui estes três elementos; E olhando para os níveis mais baixos de um computador teremos: Gramática => Microinstruções; Sintaxe => Zero-um-nês ; Semântica => Lógica. 5

6 Linguagens de Programação: As linguagens de programação também evoluíram com o tempo; Nos primeiros computadores a programação e seu uso eram confundidos, foi a partir das ideias de Turing que o conceito de programa e programação foi formalizado; Posteriormente com o uso de Máquinas Multiníveis e de suas linguagens permitiu uma visão abstrata da programação. 6

7 Linguagens de Programação Surge o Fortran: John W. Backus estava com preguiça de escrever programas em assembly; Criou então o Fortran (IBM Mathematical FORmula TRANslation System); IBM 704 entre 1953 e 1954; Programar ficou umas 20 vezes mais fácil. 7

8 Linguagens de Programação Fortran: O Fortran evoluiu em várias versões: Fortran II, III (até 1962); Fortran IV ou 66 (1965 e 1966); Fortran 77 (1976); Fortran 8x (1980); Fortran 90 (1990) e 95 (1995); Fortran 2003(ISSO/IEC :2004) e 2008 (ISSO/IEC :2010). 8

9 Linguagens de Programação Fortran: O Fortran possui vários dialetos (Absoft, Cray, GFortran, G95, IBM, Intel, Lahey/Fujitsu, Open Watcon, Pathscale, PGI, Silverfrost, Oracle, XL Fortran, Visual Fortran e outros); O Fortran influenciou o aparecimento de várias outras linguagens (ALGOL 58, BASIC, C, PL/I, PACT I, MUMPS, Fatfor). 9

10 Linguagens de Programação Surge o LISP: Surgiu em 1958 no Massachusets Institute of Technology (MIT); Criado pelo Professor John McCarthy; Uma notação simples, baseada em funções matemáticas; Baseado no conceito de listas; Sintaxe com muitos parênteses; Possui vários dialetos (Common Lisp, Scheme, Emacs Lisp, Autolisp, Arc, Clojure, Newlisp, Lush, Arc); 10

11 Linguagens de Programação LISP: Primeira linguagem funcional; LISP (LISt Processing); Foi usada em sistemas de mísseis americanos; Influenciou o aparecimento de outras linguagens funcionais como Logo, Smalltalck, Ruby, Dylan. 11

12 Linguagens de Programação Surgiu o ALGOL: A computação precisava de um padrão para algoritmos; Criou-se um comitê para tratar do assunto, que foi formado por: John Backus; C. A. R. Hoare; John McCarthy e outros. Desse comitê surgiu o ALGOL 58 (ALGOrithmic Language); Foi classificada posteriormente como linguagem Imperativa; 12

13 Linguagens de Programação Surgiu o ALGOL: Talvez a mais influente linguagem de programação; Considerada ancestral da maioria das linguagens modernas (chamadas de Algol-like); Muito mais amigável para seres humanos; Introduziu os blocos Begin-end ; Também evoluiu em várias versões. 13

14 Linguagens de Programação COBOL: COBOL (Common business-oriented Language) foi feita para negócios (Contadores, economistas, etc.); COBOL foi criada em 1958 por um comitê formado pela indústria, governo e academia; Linguagem imperativa e procedural; Atualmente existe uma versão orientada a objetos; 14

15 Linguagens de Programação COBOL: Possui muitos de dialetos (ACUCOBOL-GT, COBOL-IT, COBOL/2, DEC COBOL-10, DEC VAX COBOL, DOSVS COBOL, Fujitsu COBOL, Hitachi COBOL2002, HP3000 COBOL/II, IBM COBOL SAA, IBM COBOL/400, IBM COBOL/II, IBM Enterprise COBOL, IBM ILE COBOL, IBM OS/VS COBOL, ICL COBOL, iscobol, Micro Focus COBOL, Microsoft COBOL, Realia COBOL, Ryan McFarland RM/COBOL, Ryan McFarland RM/COBOL-85, Tandem (NonStop) COBOL85, Tandem (NonStop) SCOBOL, UNIVAC COBOL, Unisys MCP COBOL74, Unisys MCP COBOL85, Unix COBOL X/Open, Visual COBOL, Wang VS COBOL); Influenciou outras linguagens (AIMACO, C++, CONMTRAN, FACT, FLOW-MATIC, Smaltalk). 15

16 Linguagens de Programação Surgiu o C: Surgiu em 1972, e foi, durante muitos anos, a linguagem de programação mais popular; Criada por Dennis Ritchie da AT&T Bell Labs e usada na re-implemementação do UNIX; Linguagem de programação imperativa e procedural; A origem do nome é controversa, há duas versões: 1. Acredita que se deu o nome "C" à linguagem porque muitas das suas características derivaram de uma linguagem de programação anterior chamada "B ; 2. Baseia no fato que "C" é a segunda letra do nome da linguagem BCPL, da qual se derivou a linguagem B. 16

17 Linguagens de Programação C: Há diversas implementações (GCC, Clang, Intel C, MSVC, Pelles C, Watcon C); Vários dialetos (Cyclone, Unified Parallel C, Split-C, Cilk, C*); Influenciou numerosas linguagens (C++, C--, C#, Objective-C, Java, Rust, BitC, Perl, PHP, Python e inúmeras outras). 17

18 Linguagens de Programação - Classificação: Quanto ao nível de abstração: Linguagens de máquina: códigos binários; Linguagens de baixo nível: codificação com sintaxe próxima à linguagem de máquina, cujas instruções devem executar instruções de máquina com relação um para um; Linguagens de alto nível: aproxima-se da linguagem humana e está fundamentada em princípios da lógica matemática; 18

19 Linguagens de Programação - Classificação: Quanto à estrutura: Fracamente Tipada: permite operações entre tipos de dados diferentes (Smalltalk); Fortemente Tipada: Não permite operações entre tipos de dados diferentes (Pascal, Java); Dinâmicamente Tipada: Checa os tipos de dados em tempo de execução (Python, Ruby); Estaticamente Tipada: O tipo da variável é declarado em tempo de programação (C); 19

20 Linguagens de Programação - Classificação: Quanto à geração: Primeira geração: linguagens de máquina; Segunda geração: linguagens de baixo nível (assembly); Terceira geração: linguagens de alto nível, geralmente suportam variáveis, matrizes, instruções condicionais, instruções repetitivas, funções e procedimentos (C, Pascal, Fortran, Cobol); Quarta geração: linguagens que geram código a partir de expressões de alto nível; e linguagens de consulta (C++, Java, SQL); Quinta geração: linguagens lógicas para IA (Lisp, Prolog), sendo criadas para fazer deduções, inferências a partir de uma base de conhecimento. 20

21 Linguagens de Programação - Classificação: Quanto ao domínio da programação: Para aplicações científicas (Fortran); Para aplicações comerciais (COBOL); Para aplicações gerais (C); Para Inteligência Artificial (Lisp, Prolog); Para Scripting (shell script, Java Script, Pearl); Para propósitos especiais (XML, XMI, WSDL); 21

22 Linguagens de Programação - Classificação: Quanto ao paradigma da programação: Imperativas: Estruturada; Orientada a Objetos; Concorrente; Declarativa: Funcional; Lógica. 22

23 Linguagens de Programação - Classificação: Quanto ao paradigma da programação: 23

24 Linguagens de Programação - Classificação: Imperativas: A Programação Imperativa é um conceito baseado em estados, definidos por variáveis, e ações que são manipuladoras de estado, procedimentos; Pelo fato de permitir o uso de procedimentos como estruturação, também é conhecido como, Programação Procedural. 24

25 Linguagens de Programação - Classificação: Imperativas vantagens: Eficiência; Modelagem natural dos problemas reais; Dinâmica de mercado; Estão bem estabelecidas; Imperativas desvantagens: Foca no COMO e não no QUE precisa ser feito; Difícil legibilidade. 25

26 Linguagens de Programação - Classificação: Declarativa: A Programação Declarativa, ao contrário da Programação Imperativa que informa ao computador "COMO" as instruções devem ser executadas, preocupa-se em apenas dizer ao computador "O QUE precisa ser feito, cabendo ao computador decidir qual a melhor solução para essa solicitação. 26

27 Linguagens de Programação - Classificação: Declarativas vantagens: Facilidade de acesso a bases de conhecimento; Conversão de objetos complexos (Pessoa, Empregado, etc.) por binding ( ligação ) para trafegar em rede. Declarativas desvantagens: Produz códigos ilegíveis quando usada de forma funcional. 27

28 Linguagens de Programação - Classificação: Estruturada: Preconiza que todos os programas podem ser reduzidos a três estruturas: Sequência, decisão e iteração (ou repetição); Ex: C, Pascal, Cobol, etc. Orientada a Objetos: Está fundamentada em quatro pilares: Abstração, encapsulamento, herança e polimorfismo; Mantém a estrutura estruturada porém dentro de contextos específicos (classes, objetos e métodos); Ex: C++, Java, etc. 28

29 Linguagens de Programação - Classificação: Estruturada versus Orientada a Objetos: 29

30 Linguagens de Programação - Classificação: Concorrente: Fazem uso da execução concorrente (simultânea) de várias tarefas computacionais interativas; As tarefas podem ser implementadas como programas separados ou como um conjunto de threads criadas por um único programa; Essas tarefas podem ser executadas por um único processador, vários processadores em um equipamento, ou processadores distribuídos por uma rede; Diretamente relacionada à programação paralela; Ex: Java, C# (porque usam o modelo de memória compartilhada), Pascal Concorrente, etc. 30

31 Linguagens de Programação - Classificação: Funcional: Trata a computação como uma avaliação de funções matemáticas e que evita estados ou dados mutáveis; Ex: Lisp, Haskell, etc. Lógica: Faz uso da lógica matemática. John McCarthy em 1958, foi o primeiro a publicar uma proposta de uso da lógica matemática para programação; Ex: Planner, Prolog, etc. 31

32 Linguagens de Programação - Propriedades: Legibilidade: facilidade de leitura e compreensão; Redigibilidade: diferencia as linguagens de alto e baixo nível, trata da facilidade de desenvolvimento; Confiabilidade: possui mecanismos que permitem a verificação automática durante o processo de compilação e execução; Eficiência: resultam em aplicações mais ou menos capazes de lidar com situações extremas (tempo real, aplicações embarcadas, etc.); Curva de aprendizado: tempo necessário para o aprendizado até o domínio da linguagem; 32

33 Linguagens de Programação - Propriedades: Ortogonalidade: diz respeito à capacidade da linguagem permitir ao programador combinar seus conceitos básicos sem que se produzam efeitos anômalos na combinação; Reusabilidade: possibilidade de reutilizar o mesmo código para diversas aplicações (uso de arcabouços - frameworks); Modificabilidade: possibilidade de alterações no programa a partir de novos requisitos, sem que tais modificações impliquem em mudanças em outras partes; 33

34 Linguagens de Programação - Propriedades: Portabilidade: é desejável que programas escritos em uma determinada linguagem se comportem da mesma maneira independente da ferramenta utilizada para traduzi-los para a linguagem de máquina ou da arquitetura computacional sobre a que estão executados. 34

35 Próxima Aula Segunda Prova: Todos os assuntos abordados até aqui, desde a Primeira Prova. Preparem-se para a Segunda Prova! Até breve. 35

36 36

Paradigmas de 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

Leia mais

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

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

Leia mais

Aspectos preliminares

Aspectos preliminares Aspectos preliminares 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

Leia mais

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

Introdução à Programação Aula 03. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação Aula 03 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação Linguagens de Programação A primeira linguagem de programação foi criada por Ada Lovelace. Amiga

Leia mais

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

Linguagens de Programação. Introdução. Carlos Bazilio Linguagens de Programação Introdução Carlos Bazilio carlosbazilio@id.uff.br 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

Leia mais

Linguagens de Programação

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: jerusa@inf.ufsc.br Linguagens de Programação p. 1/5 Linguagens de

Leia mais

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

Leia mais

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

Introdução à Computação: Máquinas Multiníveis Introdução à Computação: Máquinas Multiníveis Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

Leia mais

Histórico de Linguagens de Programação

Histórico de Linguagens de Programação Bacharelado em Ciência da Computação PARADIGMAS DE PROGRAMAÇÃO Histórico de Linguagens de Programação Prof. Claudinei Dias email: prof.claudinei.dias@gmail.com Objetivos Geral: Estudar as características

Leia mais

Programação de Computadores

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 Linguagens Conceito de Algoritmo Pseudocódigo

Leia mais

Fundamentos de Programação 1

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

Leia mais

Linguagens de Programação

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

Leia mais

Programação de Computadores

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

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS I -CONCEITOS PRELIMINARES. Prof. Angelo Augusto Frozza, M.Sc.

PROGRAMAÇÃO ORIENTADA A OBJETOS I -CONCEITOS PRELIMINARES. Prof. Angelo Augusto Frozza, M.Sc. PROGRAMAÇÃO ORIENTADA A OBJETOS I -CONCEITOS PRELIMINARES Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO O que é programação Linguagens de Programação Paradigmas de Programação História

Leia mais

Revisão: linguagens de programação

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 taspardo@icmc.usp.br Definição Uma linguagem de programação é uma linguagem destinada a ser usada

Leia mais

Programação de Computadores

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 Linguagens Paradigmas para linguagens de Programação

Leia mais

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

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........................

Leia mais

Universidade Estadual de Santa Cruz

Universidade Estadual de Santa Cruz Universidade Estadual de Santa Cruz Conceitos de Linguagens de Programação Linguagens Imperativas e Funcionais Prof. Dr. Rogério Vargas Ilhéus-Ba, 16 de Maio de 2013. Linguagens Imperativas Linguagens

Leia mais

3. Linguagem de Programação C

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

Leia mais

CONCEITOS DE LINGUAGENS DE PROGRAMAÇÃO

CONCEITOS DE LINGUAGENS DE PROGRAMAÇÃO CONCEITOS DE LINGUAGENS DE PROGRAMAÇÃO ROTEIRO 1. INTRODUÇÃO 2. LINGUAGENS IMPERATIVAS 1. CONCEITO 2. PARADIGMA IMPERATIVO 3. ORIGENS 4. MODELO COMPUTACIONAL 1. ARQUITETURA DE VON NEUMANN 2. CARACTERISTICAS

Leia mais

Paradigmas de Programação

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

Leia mais

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 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

Leia mais

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

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

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE ENGENHARIA ELÉTRICA

Leia mais

Linguagens de Programação Funcional

Linguagens de Programação Funcional Linguagens de Programação Funcional Conceitos de Linguagens de Programação Pedro Libório Setembro de 2013 2 Roteiro Introdução Funções matemáticas Fundamentos das linguagens de programação funcionais A

Leia mais

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

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

Leia mais

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

Paradigmas de Linguagens Computacionais (PLC) (Apresentação da disciplina) Paradigmas de Linguagens Computacionais (PLC) (Apresentação da disciplina) George Darmiton da Cunha Cavalcanti (gdcc@cin.ufpe.br) Informações Básicas Professor George Darmiton da Cunha Cavalcanti Monitores

Leia mais

Capítulo 1. Aspectos Preliminares

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

Leia mais

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

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

Leia mais

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 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

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Jordana Sarmenghi Salamon jssalamon@inf.ufes.br jordanasalamon@gmail.com http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda

Leia mais

Paradigmas de Linguagens

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

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS Algoritmos e Programação

Leia mais

ENSINO TÉCNICO Notas de aulas PC I 1

ENSINO TÉCNICO Notas de aulas PC I 1 ENSINO TÉCNICO Notas de aulas 1 Competências, Habilidades e Bases Tecnológicas da disciplina de Programação de Computadores I 1-) Comunicação de alunos com alunos e professores: Um e-mail para a sala é

Leia mais

Introdução à linguagem C

Introdução à linguagem C MCTA028 Programação Estruturada Introdução à linguagem C Material preparado a partir de slides dos profs. Jesús MenaChalco e Fabrício Olivetti Prof. Guilherme Mota Q3-2018 1 Linguagens de programação 2

Leia mais

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õ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.

Leia mais

Informática I. Aula 19. Aula 19-31/10/2007 1

Informática I. Aula 19.  Aula 19-31/10/2007 1 Informática I Aula 19 http://www.ic.uff.br/~bianca/informatica1/ Aula 19-31/10/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript

Leia mais

PROGRAMAÇÃO I. Introdução

PROGRAMAÇÃO I. Introdução PROGRAMAÇÃO I Introdução Introdução 2 Princípios da Solução de Problemas Problema 1 Fase de Resolução do Problema Solução na forma de Algoritmo Solução como um programa de computador 2 Fase de Implementação

Leia mais

Linguagens Computacionais (Conceitos Básicos)

Linguagens Computacionais (Conceitos Básicos) Linguagens Computacionais (Conceitos Básicos) George Darmiton da Cunha Cavalcanti (gdcc@cin.ufpe.br) Tópicos Razões para estudar os conceitos de linguagens de programação Domínios de programação Critérios

Leia mais

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

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

Leia mais

Nomes, vinculações e escopos

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

Leia mais

Programação Imperativa. Lição n.º 1 Preliminares

Programação Imperativa. Lição n.º 1 Preliminares Programação Imperativa Lição n.º 1 Preliminares Preliminares Apresentação. A programação na LEI. O que é um computador? O que é um programa? Linguagens de programação. A linguagem de programação C. Bibliografia.

Leia mais

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

Linguagens de Programação e Programação Funcional Linguagens de Programação e Programação Funcional GSI004 Aula 01* Faculdade de Computação UFU *baseada nos slides do Professor Paulo Henrique Ribeiro Gabriel 30 de setembro de 2014 GSI004 Aula 01 30 de

Leia mais

Programação I Apresentação

Programação I Apresentação Programação I Apresentação Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Referências JUNIOR, D. P.; NAKAMITI, G. S.; ENGELBRECHT, A. de M. E.; BIANCHI, F. Algoritmos e Programação

Leia mais

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

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,

Leia mais

MCTA028 Programação Estruturada Aula 01: - Introdução à linguagem C - Teste de avaliação

MCTA028 Programação Estruturada Aula 01: - Introdução à linguagem C - Teste de avaliação MCTA028 Programação Estruturada Aula 01: - Introdução à linguagem C - Teste de avaliação Prof. João Henrique Kleinschmidt Material elaborado pelo Prof. Jesús P. Mena-Chalco 3Q-2018 Linguagens de programação

Leia mais

Linguagem de Programação e Compiladores

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

Leia mais

Aspectos preliminares

Aspectos preliminares Aspectos preliminares 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

Leia mais

Informática I. Aula Aula 18-29/10/2007 1

Informática I. Aula Aula 18-29/10/2007 1 Informática I Aula 18 http://www.ic.uff.br/~bianca/informatica1/ Aula 18-29/10/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript

Leia mais

MCTA028 Programação Estruturada Aula 01: - Introdução à linguagem C - Teste de avaliação

MCTA028 Programação Estruturada Aula 01: - Introdução à linguagem C - Teste de avaliação MCTA028 Programação Estruturada Aula 01: - Introdução à linguagem C - Teste de avaliação Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 3Q-2017 1 Linguagens de programação 2 Linguagem de programação

Leia mais

EVOLUÇÃO DAS LINGUAGENS DE PROGRAMAÇÃO

EVOLUÇÃO DAS LINGUAGENS DE PROGRAMAÇÃO EVOLUÇÃO DAS LINGUAGENS DE PROGRAMAÇÃO Profª. Msc. Vanderlene Covre Rocha ALTAMIRA/PA 04 de novembro de 2016 O que são linguagens de programação? Por que elas existem? Como computadores eram programados

Leia mais

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

Programação I Aula 2 Apresentação da linguagem Python Programação I Aula 2 Apresentação da linguagem Python Pedro Vasconcelos DCC/FCUP 2017 Pedro Vasconcelos (DCC/FCUP) Programação I Aula 2 Apresentação da linguagem Python 2017 1 / 25 Nesta aula... 1 Porquê

Leia mais

Nomes, vinculações e escopos

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

Leia mais

Aspectos preliminares

Aspectos preliminares Aspectos preliminares 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

Leia mais

LAPRO I. Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática - FACIN. Prof. Dr. Rafael Garibotti

LAPRO I. Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática - FACIN. Prof. Dr. Rafael Garibotti Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática - FACIN LAPRO I Prof. Dr. Rafael Garibotti v Baseado no material cedido pelos Profs. Dr. Marco Mangan e Dr. Matheus Trevisan

Leia mais

Introdução à Programação / Programação I

Introdução à Programação / Programação I Introdução à Programação / Programação I Aula 2: Introdução à linguagem Python Rita P. Ribeiro 2018/2019 Departamento de Ciência de Computadores Nesta aula 1. Porquê programar? 2. Linguagens de Programação

Leia mais

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

Programação de Computadores IV. Introdução a Linguagens de Programação Simone Martins SLIDES CEDIDOS POR BRUNO MARQUES 1 Programação de Computadores IV Introdução a Linguagens de Programação Simone Martins simone@ic.uff.br SLIDES CEDIDOS POR BRUNO MARQUES 1 Arquitetura de programação 2 O Que é um Dado? Dado é o elemento

Leia mais

Reinaldo Gomes Análise/projeto estruturado

Reinaldo Gomes Análise/projeto estruturado Programação Orientada a Objetos Objetos, Classes e Mensagens O Modelo de Objetos Objetos e Classes Mensagens e métodos Reinaldo Gomes reinaldo@cefet-al.br Decomposição Análise/projeto estruturado Soluciona

Leia mais

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

Introdução à Computação: Máquinas Multiníveis Introdução à Computação: Máquinas Multiníveis Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

Leia mais

Informática I. Aula 9. Aula 9-27/09/2006 1

Informática I. Aula 9.   Aula 9-27/09/2006 1 Informática I Aula 9 http://www.ic.uff.br/~bianca/informatica1/ Aula 9-27/09/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação

Leia mais

2 Paradigmas de linguagens de programação João B. Rocha- Junior. As linguagens evoluem com o passar do tempo

2 Paradigmas de linguagens de programação João B. Rocha- Junior. As linguagens evoluem com o passar do tempo Agenda Paradigmas de Linguagens de ção joao@ecomp.uefs.br Principais paradigmas de linguagem de programação imperajvo funcional declaração Departamento de Ciências Exatas Universidade Estadual de Feira

Leia mais

Visão Geral... e conceitos básicos

Visão Geral... e conceitos básicos Visão Geral.. e conceitos básicos 1 Curso de... Programação O que se estuda aqui? Algoritmos 2 E o que são algoritmos? Sequência finita e não ambígua de passos para a solução de um problema. Lembre- se

Leia mais

Programação de Computadores:

Programação de Computadores: Instituto de C Programação de Computadores: Introdução a Linguagens de Programação Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Seis Camadas Problema

Leia mais

ao paradigma imperativo

ao paradigma imperativo PARADIGMA FUNCIONAL PARADIGMA FUNCIONAL: INTRODUÇÃO G Exemplos de linguagens funcionais LISP - Início: LP puramente funcional - Depois: acréscimo de alguns recursos imperativos (aumentaram eficiência de

Leia mais

Compiladores. Eduardo Ferreira dos Santos. Fevereiro, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 38

Compiladores. Eduardo Ferreira dos Santos. Fevereiro, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 38 Compiladores Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Fevereiro, 2017 1 / 38 Sumário 1 Compiladores 2 Linguagens de programação 3 Ciência dos compiladores

Leia mais

Python - Variáveis e expressões

Python - Variáveis e expressões Python - e expressões Prof. Paulo H R Gabriel (com base no material do Prof. André Backes) Linguagem de Máquina Computador entende apenas pulsos elétricos Presença ou não de pulso 1 ou 0 Tudo no computador

Leia mais

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

Programação Estruturada Aula - Introdução a Linguagem C Programação Estruturada Aula - Introdução a Linguagem C Prof. Flávio Barros flavioifma@gmail.com www.flaviobarros.com.br 2 HISTÓRICO DA LINGUAGEM C HISTÓRICO DA LINGUAGEM C Como tudo iniciou... C iniciou

Leia mais

Introdução e Conceitos

Introdução e Conceitos Introdução e Conceitos Aula 1 11/08/2017 diegoquirino@gmail.com 1 Agenda 1. Motivações: porque estudar linguagens de programação? 2. Breve Histórico sobre as Linguagens de Programação 3. Processos de Tradução

Leia mais

Paradigmas de Linguagem de Programação

Paradigmas de Linguagem de Programação Paradigmas de Linguagem de Programação Aula 1 - Introdução Prof. Filipo Mór 2016/II - www.filipomor.com Apresentação do Professor B.Sc. SI FDBPOA 2012 M.Sc. em CC PUCRS/DALHOUSIE 2015 Atuação na área de

Leia mais

Paradigmas de Programaçã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 guto@faccat.br, cmg3k@faccat.br

Leia mais

Compiladores. Introdução

Compiladores. Introdução Compiladores Introdução Apresentação Turma Noite Continuada I 20/03 Continuada II 22/05 Atividades Regimental 05/06 Total 1 Ponto 1 Ponto 1 Ponto 7 Pontos 10 Pontos Aulas expositivas teórico-práticas Exercícios

Leia mais

Paradigmas de Linguagem de Programação

Paradigmas de Linguagem de Programação Paradigmas de Linguagem de Programação Evolução das Linguagens de Programação 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 linguagem de

Leia mais

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

Laboratório de Programação 1 Algoritmos e a Lógica de Programação Laboratório de Programação 1 Algoritmos e a Lógica de Programação Mário Hozano professor@hozano.com Ciência da Computação UFAL - Arapiraca Relembrando a aula anterior... O que é um algoritmo? Como é o

Leia mais

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

Introdução à Computação: Sistemas de Computação Introdução à Computação: Sistemas de Computação Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

Leia mais

Aula 1 Java Prof. Dr. Sylvio Barbon Junior

Aula 1 Java Prof. Dr. Sylvio Barbon Junior 5COP101 Linguagens de Programação Aula 1 Java Prof. Dr. Sylvio Barbon Junior Sylvio Barbon Jr barbon@uel.br 1 Sumário 1) Razões para Estudar Conceitos de LP; 2) Domínios das Linguagens de Programação 3)

Leia mais

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

Introdução a Ciência da Computação Ministério da Educação Universidade Tecnológica Federal do Paraná Câmpus Santa Helena Introdução a Ciência da Computação Bacharelado em Ciência da Computação Professor : Agnaldo da Costa 1 Camadas do Usuário

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Aula 2 Princípios de Programação Prof. Belarmino Linguagem de Computadores Internamente os computadores usam instruções e armazenam os dados no formato numérico binário

Leia mais

Noções de compilação

Noções de compilação Noções de compilação Compilador: o que é, para que serve e estrutura geral Parentes do compilador e programas correlatos Prof. Thiago A. S. Pardo 1 Compilação: por que estudar? (parte 1) Compiladores:

Leia mais

Linguagens de Programação Aula 3

Linguagens de Programação Aula 3 Aula 3 Celso Olivete Júnior olivete@fct.unesp.br 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...

Leia mais

Noções de compilação

Noções de compilação Noções de compilação Compilador: o que é, para que serve e estrutura geral Parentes do compilador e programas correlatos Prof. Thiago A. S. Pardo 1 Exercício em duplas Para esquentar... 2 1 Compilação:

Leia mais

O código fonte (source code) é o conjunto de palavras escritas de forma ordenada, contendo instruções em uma determinada linguagem de programação.

O código fonte (source code) é o conjunto de palavras escritas de forma ordenada, contendo instruções em uma determinada linguagem de programação. Uma linguagem de programação é um método padronizado para expressar instruções para um computador. É um conjunto de regras sintáticas e semânticas usadas para definir um conjunto de procedimentos (programa)

Leia mais

MINISTÉRIO DA EDUCAÇÃO CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS DIRETORIA DE GRADUAÇÃO

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

Leia mais

Modelagem de Dados MODELAGEM DE DADOS. Sistemas de Banco de Dados. Profa. Rosemary Melo

Modelagem de Dados MODELAGEM DE DADOS. Sistemas de Banco de Dados. Profa. Rosemary Melo MODELAGEM DE DADOS Sistemas de Banco de Dados Profa. Rosemary Melo SISTEMAS DE BANCO DE DADOS OBJETIVOS Apresentar os conceitos fundamentais de Sistemas de Banco de Dados. Principais componentes dos SGBDs

Leia mais

FIC-POO. Aula 1.1 Apresentação do Curso e Introdução aos Paradigmas de Programação. Prof. Dr. Bruno Moreno

FIC-POO. Aula 1.1 Apresentação do Curso e Introdução aos Paradigmas de Programação. Prof. Dr. Bruno Moreno FIC-POO Aula 1.1 Apresentação do Curso e Introdução aos Paradigmas de Programação Prof. Dr. Bruno Moreno bruno.moreno@ifrn.edu.br Apresentação Professor Bruno Neiva Moreno E-mail institucional: bruno.moreno@ifrn.edu.br

Leia mais

Linguagens de Programação

Linguagens de Programação Universidade Federal do Rio Grande do Norte Centro de Tecnologia Departamento de Computação e Automação Linguagens de Programação Professor Responsável: Luiz Affonso Henderson Guedes de Oliveira Prof.

Leia mais

Paradigmas de análise e desenvolvimento de sistemas. Principais Paradigmas

Paradigmas de análise e desenvolvimento de sistemas. Principais Paradigmas Paradigmas de análise e desenvolvimento de sistemas Principais Paradigmas Rosemary Silveira Filgueiras Melo rosesfmelo@hotmail.com rosefib.webnode.com.br Tópicos abordados Conceito de Paradigma Tipos de

Leia mais

Capítulo III - Linguagens de Programação

Capítulo III - Linguagens de Programação Capítulo III - Linguagens de Programação Porque Estudar Ling. de Programação? Quais são as formas de classificar Linguagens? Quais são os Conceitos Fundamentais de Linguagens de Programação? Como Avaliar/Projetar

Leia mais

História das Linguagens de Programação

História das Linguagens de Programação História das Linguagens de Programação Adaptado da Wikipedia por Carlos Camarão de Figueiredo 13 de Março de 2017 As primeiras linguagens de programação apareceram antes do primeiro computador. Em 1842-1843,

Leia mais

Computação Eletrônica

Computação Eletrônica Computação Eletrônica Apresentação da Disciplina, Ementa, Bibliografia e Acordo Didático Prof: Luciano Barbosa Resumo da Ementa Computação Eletrônica (IF165) Carga Horária: 60h Objetivos: Ensinar lógica

Leia mais

Introdução à Computação MAC0110

Introdução à Computação MAC0110 Introdução à Computação MAC0110 Prof. Dr. Paulo Miranda IME-USP Aula 1 Introdução à Computação Eventos históricos: 1) Máquina universal de Turing criada em 1936 por Alan Turing, fundamento teórico para

Leia mais

Histórico e Conceitos

Histórico e Conceitos Histórico e Conceitos Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Julho, 2016 1 / 33 Sumário 1 Computadores e máquinas de computar 2 Compiladores 3 Linguagens

Leia mais

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 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

Leia mais

Paradigmas de Programação

Paradigmas de Programação Paradigmas de Programação Prof.: Edilberto M. Silva http://www.edilms.eti.br Aula 2 Linguagens de Programação Desenvolvimento e execução de programas Características de linguagens Execução de programas

Leia mais

Programação Estruturada e OO Aula 1.2 Introdução a Paradigmas de Programação. Prof. Bruno Moreno

Programação Estruturada e OO Aula 1.2 Introdução a Paradigmas de Programação. Prof. Bruno Moreno Programação Estruturada e OO Aula 1.2 Introdução a Paradigmas de Programação Prof. Bruno Moreno bruno.moreno@ifrn.edu.br Motivação Por que existe mais de uma LP? Propósitos diferentes; Avanços tecnológicos;

Leia mais

Organização de Computadores

Organização de Computadores Organização de Computadores Aula #5.1 EBS 111 ICC Prof. Luiz Fernando S. Coletta luizfsc@tupa.unesp.br Campus de Tupã Exercício 3 (correção) 1. Converta as sequências binárias em números de base 10: (a)

Leia mais

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

INFORMÁTICA APLICADA AULA 01 LINGUAGEM DE PROGRAMAÇÃO C++ UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: Bacharelado em Ciências e Tecnologia INFORMÁTICA APLICADA AULA 01 LINGUAGEM DE PROGRAMAÇÃO C++ Profª ª Danielle Casillo INTRODUÇÃO Vamos, neste curso, aprender

Leia mais