Introdu��o � Programa��o, Aula1 by t00fA3T

VIEWS: 0 PAGES: 26

									                           Programação II
                           Licenciatura de Ciências da Computação




Original: Docentes ISCTE                                  Padoca Calado
        Informação

       Sítio da cadeira:
        http://www.padoca.org/padoca/p2
       A consultar com frequência (Pequenos
        anúncios)
       Contém:
           Enunciados das aulas práticas
           Informação sobre calendário e horários
           Programa e método de avaliação
           Bibliografia
           etc.
2                                                    2008
        Avaliação
       Assiduidade, participação e envolvimento nas
        aulas teórico-práticos (10%)
       Práticas laboratóriais (30%)
           Trabalho feito em grupo (5 alunos)
           Discussão individual

       Exame (60%)
           Individual, sem consulta: nota mínima 7




3                                                      2008
         Contactos

   Esclarecimento de Dúvidas:
       Assuntos de Interesse geral: nas aulas.
       Assuntos Pessoais: através do endereço de e-mail
        duvidas@padoca.org (usar com moderação).
       Sessões de dúvidas: para esclarecimento de dúvidas
        pelos docentes.
       As questões sobre a matéria leccionada devem ser
        colocadas preferencialmente nos horários de
        atendimento presencial.


4                                                          2008
         Ética e Deontologia

   Fraude
       Os principios éticos orientam a conduta individual e o nosso curso é um espaço
        onde todos os estudantes têm a oportunidade de aplicar e aprofundar os
        princípios éticos que os desafios de uso das novas tecnologias colocam. Este
        tema é um aspecto transversal a todo o curso e a sua prática é fundamental quer
        agora na sua vida estudantil quer no seu futuro profissional.
       O trabalho de equipa é uma constante ao longo do curso e no exercício de uma
        profissão. Por isso, pretende-se que seja efectuado com um espírito de
        entreajuda.
       Devem ser respeitados os direitos de autor e de propriedade intelectual.
       O aluno deve ter presente as regras da honestidade académica. O plágio de
        trabalhos e projectos não é tolerado.
       O uso de materiais que visam deturpar e falsear os resultados dos exames é uma
        atitude altamente reprovável e é punido. Visa-se com estas punições estabelecer
        um espírito de justiça e de facto atribuir as melhores notas aos melhores alunos.

5                                                                                     2008
         Ética e Deontologia

   Crime Informático
       Os alunos devem ter sempre presente que o uso dos computadores
        implica determinadas regras e que existem leis que especificam que
        determinado uso ou prática é um crime.
       Vulgarmente designadas como pirataria, essas acções para além de
        constituirem um crime para quem as pratica e de prejudicarem o seu
        futuro profissional, também têm consequências, para a Faculdade, que
        vão desde a perda de tempo à perda de informação, passando, pelo
        prestígio, que se deve manter intocado.
       O uso dos recursos informáticos desta Instituição para fins ilegais ou
        imorais é proibido e o aluno apanhado nas actividades ilícitas será alvo
        de um processo nas instancias policiais.



6                                                                              2008
        Objectivos
       Conhecer bem uma abordagem típica de resolução de
        problemas usando Programação

       Ser capaz de planear a resolução dos problemas, es-
        truturando correctamente os respectivos programas

       Dominar eficientemente um ambiente de desenvol-
        vimento/programação e respectivas ferramentas

       Ter conhecimentos intermédios da linguagem Java


7                                                         2008
            Programa
       Programação em Java
           Tipos, variáveis, expressões e instruções de selecção
           Ciclos, matrizes, Strings e tipos enumerados
           Modularização, abstracção e encapsulamento
           Métodos, parâmetros, argumentos e contratos (pro-
            gramação por contrato)
           Classes
           Leitura e escrita de dados em ficheiros

8                                                             2008
        Metodologia
       Aulas teóricas
            Consultar página da disciplina


       Atendimento ou aulas de dúvidas
            Gabinete ou sala de computadores
            Horários: Consultar página da disciplina

       Qualquer informação relevante é publicada … na página da
        disciplina




9                                                                  2008
Aula 1

Programação II
     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


11                                              2008
         Computador

     Principais Componentes:
        Suporte Físico
            Hardware (HW)

                                                                               girtby.net/images/hardware.jpg


        Suporte Lógico
            Software (SW)

                             do filme Matrix, whatisthematrix.warnerbros.com



12                                                                                                              2008
         Computador

     HW (Recursos Físicos) + SW (Parte Decisora)
                   => Execução de Tarefas


        Limitações do Hardware impõem limites às
         possibilidades do Software que o utiliza
        Estrutura exacta do HW depende do fabricante
        Componentes genéricos do HW na maioria dos casos
         são relativamente semelhantes
13                                                      2008
     Nota: Imagem retirada de http://pt.wikipedia.org/wiki/Computador

14                                                                      2008
          Principais Componentes Físicos

        Processador - Unidade Central de Processamento
         Central Processing Unit (CPU)
            Onde as instruções são executadas
        Memória
            Primária (RAM, principalmente)
            Secundária (discos rígidos, CD-ROMs, DVDs, etc)
        Periféricos
            Comunicações com mundo exterior, armazenamento, etc



15                                                                 2008
           Memória do computador

        Uma sequência de bits
        768 MBytes =
         805 306 368* bytes =
         6 442 450 944 bits

         Aproximadamente 1 bit por habitante da Terra

         Nota * : 1024 * 1024 * 768   ( 210 = 1024 )




16                                                      2008
     Bits e Bytes
        1 Byte = 23 ou 8 bits (ou 8 digitos binários: 0’s ou 1’s)

        1 KB (Kbyte ou Kilobyte) = 210 ou 1024 bytes
          ± 103

        1 MB (Megabyte) = 220 ou 1024 KB ou 1048576 Bytes
          ± 106

        1 GB (Gigabyte) = 230 ou 1024 MB
          ± 109

          [ ao trabalharmos com valores binários e não decimais, o espaço de memória disponível
          não é bem o que imaginamos: por exemplo um disco de 200 GB, tal como é publicitado,
          corresponde, em binário, a cerca de 186 Gigabytes – a sua capacidade real ]


17                                                                                                2008
          Suporte Lógico (SW)

        Conceitos principais:
            Ficheiro
              • Conjunto de Dados armazenado sob um nome identificador

            Programa
              • Instruções (contidas num ficheiro) que descrevem uma
                tarefa numa dada linguagem

            Sistema Operativo
              • Programa especial que gere o HW, executa outros progra-
                mas, etc.

18                                                                     2008
     Linguagem?




19                2008
          Linguagens

        Linguagem natural
            O Português é uma linguagem natural


        Linguagem (de programação) assembly
            Muito básica: usada quase directamente pelos processadores
             dos computadores, ex:
             LOAD @R1, 0
             JMP @R1
             Equivalente em linguagem máquina:
             010000100010011100100110001010001001001000110001010


20                                                                    2008
         Linguagens

        Linguagem de Programação de Alto-Nível (LPAN)
            Sem as ambiguidades e imprecisões de uma lingua-
             gem natural, mas não tão penosa de utilizar como a
             linguagem máquina, ex:

             if (x == 1)
                 System.out.println(“X é igual a 1”);


             ( caso x seja 1, escreve no monitor X é igual a 1 )



21                                                                 2008
         Instruções e Linguagens

        Informação armazenada:
            Sob a forma de bits
            Bits organizados em bytes
            Instruções são informação, logo, conjuntos de bytes
        Processador executa:
            Instruções do seu repertório próprio
            Instruções consideradas de baixo nível
        Instruções de alto-nível
            Mais próximas da forma humana de raciocinar
            Processador não é capaz de as executar directamente

22                                                                 2008
         Linguagens

        Exemplos de L.P.A.N.:
            C, C++, Fortran, Java, etc


        Factos:
            CPU entende instruções oriundas de uma L.P.B.N.
            Humanos preferem descrever tarefas para execução pelo
             computador usando L.P.A.N.


            Necessidade de um meio de tradução LPAN -> LPBN
            Tradução realizada através de programas: compiladores

23                                                                   2008
         A reter...
        Programar:
         resolver problemas de modo a obter soluções
            - finitas
            - bem definidas e
            - eficazes
        Tipos de linguagens: naturais, de programação
         de alto nível, máquina, etc.


24                                                       2008
      A ler...

     Capítulos 1 e 2 e secções 3.1 e 3.2 do livro:


     Y. Daniel Liang, "Introduction to Java
       Programming", 5ª Edição, Prentice-Hall, 2005.
       ISBN: 0-13-185721 - 5




25                                                     2008
         Aula 1: Sumário


        Computador como máquina programável
        Conceitos de linguagens naturais, de
         programação e máquina




26                                              2008

								
To top