Capítulo 1 Introdução
Objectivos Introdução à ciência dos computadores (computer science) Conceitos de programação Solução de Problemas Introdução à programação de computadores Programação orientada por objectos
O que é um computador ? Unidade central de Processamento (CPU) Memória Executa instruções muito simples Executa instruções muito rapidamente Executa acções previamente programadas Memória Discos Periféricos
Unidade Central de Processamento (UCP) (CPU) Disco Rígido Chip de memória RAM
Um computador pessoal (PC)
A linguagem de programação JavaTM Criada na empresa americana Sun De aplicação geral (há linguagens para fins específicos) Simples (!?) Segura (!?) Independente da plataforma ("write once, run anywhere") Biblioteca rica Desenhada para a Internet
Uma Applet numa página web
Nas aulas práticas... Sistema operativo Linux Fazer login = username + password Localizar o programa Bluej Escrever programas Gravar o vosso trabalho
Programa BlueJ A hierarquia de um directório/pasta/directoria
Um primeiro programa public class Hello { Programa Hello.java (um método especial chamado main) public class Hello { public static void main(String[] args) System.out.println("Hello, World!"); }
Abrir, Editar, Compilar e Executar Cria um novo Projecto ( Hello ) Cria uma nova classe ( Hello ) Versão Java: Edita a classe Apaga o texto criado pelo compilador Escreve o texto da classe Compila a classe Hello Executa o Método void main (...)
Do código fonte à execução de um programa
Ciclo de desenvolvimento de um programa
Objectos e Classes Objecto: entidade que pode ser manipulada no programa ( através dos métodos ) Cada objecto pertence a uma classe Classe: Conjunto de objectos com o mesmo comportamento A Classe determina legalidade dos métodos "Hello".println() // Erro "Hello".length() // OK
Uma Classe A classe especifica que métodos podem ser aplicados aos seus objectos Uma classe é uma fábrica de objectos Uma classe define os detalhes da implementação: Ex: código para os métodos Uma classe é um “reservatório” de métodos estáticos e objectos ( main, System.out)