IntroduçãoàProgramação
Informática e Gestão de Empresas
Engenharia de Telecomunicações e Informática
Engenharia Informática
Apresentação da unidade curricular (UC)
2010/2011
2
Introdução à Programação - DCTI - ISCTE-IUL
Informação
Página Webda UC: http://ip.dcti.iscte.pt/
Consultar com frequência!
Contém
Avisos
Enunciados de exercícios
Info...
Objectivos
Conhecer elementos fundamentais da programação
Ser capaz de planear resolução de problemas, estruturando correc...
Programa
Programação em Java
Tipos, variáveis e expressões
Classes e objectos
Métodos, parâmetros e argumentos 
Instruções...
Metodologia
Aulas teórico-demonstrativas (21 horas em 13 semanas)
Salas de aula normais ou auditórios
Aulas laboratoriais ...
Informação e avisos
Informação relevante é publicada sempre página Web de IP: http://ip.dcti.iscte.pt/
2010/2011
Introduçã...
Aula 1
Computador como máquina programável
Conceitos de línguas naturais, linguagens de programação de baixo e de alto nív...
O queé um computador?
Máquina programável genérica
Constituído por
Processador
Memória rápida
RAM (volátil)
ROM (persisten...
Computador
Suporte físico ou hardware
Suporte lógico ou software 
2010/2011
Introdução à Programação - DCTI - ISCTE-IUL
10...
Computador
hardware + software		-> Execução de programas
Limitações no hardware podem impor limitações no software
Estr...
Hardware: principais componentes
Processador
Unidade Central de Processamento (CPU)
Executa instruções
Memória
Primária: R...
Software
Ficheiro ou arquivo
Unidade de armazenamento de dados num sistema de ficheiros
Normalmente em hierarquia de pasta...
Software
Programa 
Instruções (contidas num ficheiro) numa dada linguagem que resolvem um dado problema
Sistema operativo
...
Linguagens
2010/2011
Introdução à Programação - DCTI - ISCTE-IUL
15
Linguagens
Linguagens naturais
Português
Inglês
…
Linguagens artificiais
Comunicação entre humanos
Esperanto
Interlingua
…...
Linguagens de programação
Linguagens de programação
De baixo nível
Linguagem máquina
Assembly
De alto nível
PHP
C++
Java
…...
Linguagens de programação de baixonível
Assemblies
Linguagens muito básicas
Usadas (quase) directamente pelos processadore...
Instruções e linguagens
Informação armazenada
Sob a forma de bits
Bits organizados em octetos ou bytes
Instruções são tamb...
Linguagens de programação de alto nível
Sem ambiguidades e imprecisões de línguas naturais
Menos penosas para humanos que ...
Linguagens de programação de alto nível
CPU não as entende
Humanos preferem-nas
Necessário traduzi-las para linguagem máqu...
Programar
Compreender bem problema e dados envolvidos
Averiguar melhor forma de resolver problema e representar os dados
D...
Algoritmos (primeira abordagem)
Como uma receita, mas mais precisa:Conjunto finito de regras, traduzíveis numa sequência d...
A reter…
Tipos de linguagens (das línguas naturais às linguagens programação de alto nível)
Algoritmo como método de resol...
A ler...
Capítulos 1 a 2 e secções 3.1 e 3.2 do livro:
Y. Daniel Liang, Introduction to Java Programming, 8.ª edição, Pren...
Sumário
Apresentação da UC
Aula 1
Computador como máquina programável
Conceitos de
línguas naturais
linguagens de programa...
Upcoming SlideShare
Loading in …5
×

Semana 0: Computadores, linguagens e linguagens de programação, Noções de algoritmo e de programa Computador como máquina programável Conceitos de línguas naturais, linguagens de programação de baixo e de alto nível e linguagens máquina, algor

1,782
-1

Published on

Apresentação da semana 0 da unidade curricular de Introdução à Programação do DCTI do ISCTE-IUL. Alterações de Manuel Menezes de Sequeira sobre versão original por vários autores do DCTI, incluindo Luís Nunes e André Santos.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,782
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
125
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Semana 0: Computadores, linguagens e linguagens de programação, Noções de algoritmo e de programa Computador como máquina programável Conceitos de línguas naturais, linguagens de programação de baixo e de alto nível e linguagens máquina, algor

  1. 1. IntroduçãoàProgramação Informática e Gestão de Empresas Engenharia de Telecomunicações e Informática Engenharia Informática
  2. 2. Apresentação da unidade curricular (UC) 2010/2011 2 Introdução à Programação - DCTI - ISCTE-IUL
  3. 3. Informação Página Webda UC: http://ip.dcti.iscte.pt/ Consultar com frequência! Contém Avisos Enunciados de exercícios Informação sobre calendário e horários Programa e método de avaliação Bibliografia Etc. 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 3
  4. 4. Objectivos Conhecer elementos fundamentais da programação Ser capaz de planear resolução de problemas, estruturando correctamente os programas Dominar eficientemente ambiente de desenvolvimento e suas ferramentas Ter conhecimentos intermédios da linguagem Java 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 4
  5. 5. Programa Programação em Java Tipos, variáveis e expressões Classes e objectos Métodos, parâmetros e argumentos Instruções de selecção e iteração Matrizes, cadeias de caracteres e tipos enumerados Métodos, decomposição funcional Recursividade 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 5
  6. 6. Metodologia Aulas teórico-demonstrativas (21 horas em 13 semanas) Salas de aula normais ou auditórios Aulas laboratoriais (39 horas em 13 semanas) Laboratórios de informática (Edifício I, sala 0S0n, e Edifício II, salas D1.nn) Atendimento ou sessões de dúvidas Gabinetes Laboratórios de informática (quando necessário) 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 6
  7. 7. Informação e avisos Informação relevante é publicada sempre página Web de IP: http://ip.dcti.iscte.pt/ 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 7
  8. 8. Aula 1 Computador como máquina programável Conceitos de línguas naturais, linguagens de programação de baixo e de alto nível e linguagens máquina Noções de algoritmo e de programa 2010/2011 8 Introdução à Programação - DCTI - ISCTE-IUL
  9. 9. O queé um computador? Máquina programável genérica Constituído por Processador Memória rápida RAM (volátil) ROM (persistente) Memória lenta Disco rígido 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 9
  10. 10. Computador Suporte físico ou hardware Suporte lógico ou software 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 10 girtby.net/images/hardware.jpg do filme Matrix, whatisthematrix.warnerbros.com
  11. 11. Computador hardware + software -> Execução de programas Limitações no hardware podem impor limitações no software Estrutura exacta do hardware varia Mas arquitectura do hardware assemelha-se 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 11
  12. 12. Hardware: principais componentes Processador Unidade Central de Processamento (CPU) Executa instruções Memória Primária: ROM e, sobretudo, RAM Secundária: discos rígidos Amovível: CD-ROM, DVD, canetas USB, cartões, etc. Periféricos Comunicações com mundo exterior, armazenamento, etc. 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 12 Central ProcessingUnit
  13. 13. Software Ficheiro ou arquivo Unidade de armazenamento de dados num sistema de ficheiros Normalmente em hierarquia de pastas Com identificador único (caminho ou path) 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 13
  14. 14. Software Programa Instruções (contidas num ficheiro) numa dada linguagem que resolvem um dado problema Sistema operativo Programa ou conjunto de programas que gerem o hardware, executam outros programas, fornecem uma interface de utilização, etc. 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 14
  15. 15. Linguagens 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 15
  16. 16. Linguagens Linguagens naturais Português Inglês … Linguagens artificiais Comunicação entre humanos Esperanto Interlingua … Linguagens de programação 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 16 As nossas!
  17. 17. Linguagens de programação Linguagens de programação De baixo nível Linguagem máquina Assembly De alto nível PHP C++ Java … 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 17 Comunicação com computador. Desadequadas para humanos. Adequadas a humanos. A nossa!
  18. 18. Linguagens de programação de baixonível Assemblies Linguagens muito básicas Usadas (quase) directamente pelos processadores Linguagens máquina Usadas directamente pelos processadores (reais ou virtuais) Por exemplo, o assembly LOAD @R1, 0 JMP @R1equivale, em linguagem máquina, a 010000100010011100100110001010001001001000110001010 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 18
  19. 19. Instruções e linguagens Informação armazenada Sob a forma de bits Bits organizados em octetos ou bytes Instruções são também informação Instruções representadas por sequências de octetos Processador executa Instruções do seu próprio repertório Instruções de baixo nível Instruções de alto nível Próximas da forma humana de raciocinar Processador não as pode executar directamente 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 19
  20. 20. Linguagens de programação de alto nível Sem ambiguidades e imprecisões de línguas naturais Menos penosas para humanos que as de baixo nível O Javaif(x == 1) System.out.println("x é igual a 1.");pode traduzir-se para linguagem natural por«Se a variável x contiver neste momento o valor 1, escrever no monitor o texto “x é igual a 1.”.» 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 20
  21. 21. Linguagens de programação de alto nível CPU não as entende Humanos preferem-nas Necessário traduzi-las para linguagem máquina Tradução realizada por compiladores 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 21
  22. 22. Programar Compreender bem problema e dados envolvidos Averiguar melhor forma de resolver problema e representar os dados Determinar instruções duma linguagem de programação que resolvem (de forma genérica) esse problema Essas instruções formam um programa 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 22
  23. 23. Algoritmos (primeira abordagem) Como uma receita, mas mais precisa:Conjunto finito de regras, traduzíveis numa sequência de operações/instruções, que permitem resolver um determinado tipo de problema.Donald E. Knuth 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 23
  24. 24. A reter… Tipos de linguagens (das línguas naturais às linguagens programação de alto nível) Algoritmo como método de resolver um dado problema Programa enquanto algoritmo expresso numa linguagem de programação 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 24
  25. 25. A ler... Capítulos 1 a 2 e secções 3.1 e 3.2 do livro: Y. Daniel Liang, Introduction to Java Programming, 8.ª edição, Prentice-Hall, 2010.ISBN: 978-0-13-213080-6 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 25
  26. 26. Sumário Apresentação da UC Aula 1 Computador como máquina programável Conceitos de línguas naturais linguagens de programação de baixo e de alto nível linguagens máquina Noções de algoritmo e de programa 2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 26

×