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.
2. Apresentação da unidade curricular (UC) 2010/2011 2 Introdução à Programação - DCTI - ISCTE-IUL
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. 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
13. 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
14. 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
15. 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
16. 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
17. 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
29. Comunicações com mundo exterior, armazenamento, etc.2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 12 Central ProcessingUnit
30. 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
31. 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
57. Por exemplo, o assembly LOAD @R1, 0 JMP @R1equivale, em linguagem máquina, a 0100001000100111001001100010100010010010001100010102010/2011 Introdução à Programação - DCTI - ISCTE-IUL 18
68. Processador não as pode executar directamente2010/2011 Introdução à Programação - DCTI - ISCTE-IUL 19
69. 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
70. 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
71. 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
72. 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
73. 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
74. 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
75. 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