Capítulo 1 Introdução Enquadramento da disciplina O que significa programar e a razão da sua importância basilar em qualquer curso de computação os sistemas informáticos dependem da interacção de inúmeros programas ao desenvolver capacidades de programação, também se desenvolvem capacidades de resolução de problemas em geral Linguagem de programação de alto nível ambiente de programação e o compilador Desenhar soluções, editar, compilar e executar programas em Java. Testar e reconhecer erros de sintaxe e erros lógicos
Caracterização do conceito programa Computadores são programados para realizar tarefas específicas Tarefas diferentes implicam programas diferentes Programa conjunto de operações básicas, executadas sequencialmente instruções para executar as tarefas pretendidas Programar para resolver problemas Programar significa resolver problemas Um algoritmo é uma sequência finita de acções, bem definidas, cada uma das quais a ser executada em tempo finito e útil Problema Especificação Algoritmia Programa
Capacidades associadas à programação Análise do problema Planificação sistemática e execução da solução Minimização do risco de erros Detecção e resolução de problemas imprevistos Avaliação da qualidade da solução preconizada Metodologia de ensino Aulas 3h de aulas teóricas e 3h de aulas práticas por semana: (a) introdução de conceitos (b) exercícios, (c) discussão de soluções créditos afectos às aulas, logo os alunos devem comparecer Avaliação contínua Exercícios durante as aulas Desafios/exercícios, a realizar exteriormente às aulas Dois testes escritos Um projecto Informação detalhada sobre o funcionamento da disciplina no CLIP
Bibliografia Livro recomendado Cay Horstmann. Java Concepts, 4th Edition, Wiley, 2005 Alternativa Bibliografia Recomendada Java Concepts Cay S. Horstmann 4th Edition, 2006 ISBN: 0-471-69704-4 992 páginas W. Savitch. Java: An Introduction to Problem Solving & Programming, 4th Edition, Prentice Hall, 2005 Luis Marcelino <LMarcelino@di.fct.unl.pt> 4 os acetatos não substituem o(s) livro(s) indicado(s) Regras de Avaliação Caracterização de um computador Unidade de processamento central chips, transistores Memória primária (Random-access memory - RAM). Acesso rápido e é volátil secundária (disco rígido, diskettes). Acesso lento, mas serve para armazenar informação de forma permanente Periféricos Computador executa instruções simples, com rapidez
Representação esquemática de um computador Unidade de Processamento Central (Central Processing Unit)
Memória módulo de memória disco rígido Motherboard
Primitive Types Type name Kind of value byte integer Computador short integer ENIAC int integer Memory used 1 byte 2 bytes 4 bytes Range -128 to 127-32768 to 32767 long float double char boolean integer floating-point number floating-point number single character true or false 8 bytes 4 bytes 8 bytes 2 bytes 1 bit SE15: Types and Expressions 4 7 Linguagem de programação Java Orientada para objectos Utilização independente da plataforma Biblioteca de funções bastante completa, incluindo o apoio ao ensino Desenhada inicialmente para a internet
Applets Java numa página Web Ambiente de desenvolvimento integrado (Integrated Development Environment) Eclipse 3.2
Uma janela Shell Ficheiro HelloTester.java public class HelloTester { public static void main(string[] args) } { } // Display a greeting in the console window System.out.println("Hello, World!"); Hello, World!
HelloTester - execução numa janela HelloTester - execução num IDE
O programa (simples) public class ClassName public static void main(string[] args) // comentário chamada do método System.out.println("Hello, World!") Objecto Método Parâmetros System System.out println Classe Objecto Metódo Chamada de um método object.methodname(parameters) Exemplo: System.out.println("Hello, Dave!"); Objectivo: Invocar um método de um objecto e fornecer parâmetros adicionais
Erros Erros de sintaxe detectados pelo compilador System.ouch.print("..."); System.out.print("Hello); Erros lógicos detectados pelo programador, testando. O programa não executa as tarefas pretendidas. São os piores. System.out.print("Hell"); Edição-Compilação-Execução
Processo de compilação em Java Java Virtual Machine Java Virtual Machine é um computador virtual. Executa instruções compiladas em Java, e a sua linguagem denomina-se Java bytecode. Posteriormente, essas instruções são traduzidas para a respectiva plataforma de hardware que está a ser utilizada JVM Interpretador de Java bytecode para UNIX Programa em Java Compilador Programa em Java bytecode Interpretador de Java bytecode para Windows XP Interpretador de Java bytecode para Mac OS...
Utilização do Eclipse 3.2 Faça log in. Localize o ambiente de desenvolvimento Eclipse 3.2, no desktop do computador. Crie uma pasta para guardar os seus projectos em Java. Abra o Eclipse e seleccione a mesma pasta como a pasta base de trabalho dentro do ambiente de desenvolvimento. Para isso seleccione a opção "Switch Workspace..." no menu File. Abre-se a janela "Workspace Launcher" onde, com a possível ajuda do browser, deverá ser colocado o caminho completo para a pasta que criou inicialmente. O ambiente re-inicializa e, se a pasta nunca foi usada como workspace do Eclipse, aparece uma janela de boas-vindas. Deve fechar essa janela clickando na cruzinha que existe para o efeito. O ambiente de desenvolvimento está agora aberto. Para começar deve, no menu Project, des-seleccionar a opção "Build Automatically" Utilização do Eclipse 3.2 Para criar um novo projecto, vá ao menu File e escolha "New" e "Project". Escolha o tipo de projecto, "Java Project" e escolha o nome do projecto, "HelloTester". Ao criar o projecto, verifique que está seleccionada a versão 5.0 do Java. Click em "Finish" para terminar a criação do novo projecto. Crie uma classe Java, Hello, que irá conter o programa. No menu "File" escolha "New Class". Seleccione a opção "public static void main(string[] args)" em "Which method stubs would you like to create?". Click em "Finish". Complete o programa. Grave o programa, utilizando Ctrl-S. Deve fazer isto sempre que possível. Senão... lembre-se que a memória do computador é volátil!
Utilização do Eclipse 3.2 Compile o programa, fazendo o "Build" do projecto. No menu "Project" escolha "Build Project" (ou Ctrl+B). Para executar o programa pela primeira vez, crie uma configuração de execução para o projecto. Seleccione "Run..." no menu "Run". A partir daqui, sempre que quiser correr a configuração, bastar-lhe-á seleccionar "Run last launched" no menu Run (Ctrl-F11).