LivroJava Cap 01

5
1. Apresentação Neste capítulo estão descritos os objetivos gerais do livro, os requisitos desejáveis do estudante para que possa utilizá-lo eficientemente, e os recursos necessários em sua utilização. Contém também instruções para teste do ambiente de programação utilizado para o desenvolvimento dos exercícios propostos ao longo do texto e, ao final, alguns exercícios para avaliação dos conhecimentos prévios do estudante. 1.1. Objetivos Este livro tem como objetivo dar ao estudante conhecimentos básicos de programação orientada a objetos em Java, a partir de uma compreensão abrangente dos conceitos de orientação a objetos. Ao concluir o curso, o estudante estará apto não só a elaborar seus primeiros programas em Java como também terá adquirido uma base sólida de conhecimentos que lhe permitirá avançar em seus estudos, seja na direção de um maior aprofundamento na linguagem Java ou outras linguagens orientadas a objetos, como na direção de outras técnicas orientadas a objetos para desenvolvimento de software. 1.2. Necessidade de um Livro Texto Didático 1.3. Pré-requisitos Desejáveis É suposto que o estudante já domine os conceitos básicos de programação estruturada, tais como, algoritmos, tipos de dados, variáveis, expressões aritméticas e lógicas, estruturas de controle do fluxo de execução, funções e subrotinas. Recomendamos ao estudante que queira fazer uma revisão desses conceitos antes de iniciar o curso consultar [Saliba92]. É altamente desejável que o estudante seja versado numa linguagem de programação convencional baseada em procedimentos, como Basic, C, Clipper, Cobol-85 ou Pascal. 1.4. Organização do Livro O presente livro texto está subdividido em quatro partes, descritas a seguir. Cada parte é concluída com a apresentação de um estudo de caso que utiliza os conceitos daquela parte. O diagrama da figura 1 apresenta as dependências existentes entre as partes e os capítulos contidos no livro.. Parte I: Capítulos 2 a 6 Parte I apresenta os fundamentos básicos da programação orientada a objetos. No capítulo 2 (Fundamentos de Estruturação de Sistemas) são discutidos os mecanismos básicos que utilizamos para organizar o nosso conhecimento e administrar a complexidade do mundo em que vivemos No capítulo 3 (Introdução à Programação Orientada a Objetos) são revistas as origens da Programação Orientada a Objetos, situando-a no contexto mais geral da evolução das técnicas de programação e das demais técnicas ditas OO. Ainda nesse capítulo, são apresentados os conceitos de ocultamento da informação, encapsulamento e tipos abstratos de dados. No capítulo 4 (Objetos e Classes) são apresentados os conceitos de objetos, classes, métodos e mensagens, explicando como os objetos interagem num programa para realizar uma ação determinada.

description

Curso de Java - capítulo 1

Transcript of LivroJava Cap 01

  • 1. Apresentao Neste captulo esto descritos os objetivos gerais do livro, os requisitos desejveis do estudante para que possa utiliz-lo eficientemente, e os recursos necessrios em sua utilizao. Contm tambm instrues para teste do ambiente de programao utilizado para o desenvolvimento dos exerccios propostos ao longo do texto e, ao final, alguns exerccios para avaliao dos conhecimentos prvios do estudante.

    1.1. Objetivos Este livro tem como objetivo dar ao estudante conhecimentos bsicos de programao orientada a objetos em Java, a partir de uma compreenso abrangente dos conceitos de orientao a objetos. Ao concluir o curso, o estudante estar apto no s a elaborar seus primeiros programas em Java como tambm ter adquirido uma base slida de conhecimentos que lhe permitir avanar em seus estudos, seja na direo de um maior aprofundamento na linguagem Java ou outras linguagens orientadas a objetos, como na direo de outras tcnicas orientadas a objetos para desenvolvimento de software. 1.2. Necessidade de um Livro Texto Didtico

    1.3. Pr-requisitos Desejveis suposto que o estudante j domine os conceitos bsicos de programao estruturada, tais como, algoritmos, tipos de dados, variveis, expresses aritmticas e lgicas, estruturas de controle do fluxo de execuo, funes e subrotinas. Recomendamos ao estudante que queira fazer uma reviso desses conceitos antes de iniciar o curso consultar [Saliba92]. altamente desejvel que o estudante seja versado numa linguagem de programao convencional baseada em procedimentos, como Basic, C, Clipper, Cobol-85 ou Pascal. 1.4. Organizao do Livro O presente livro texto est subdividido em quatro partes, descritas a seguir. Cada parte concluda com a apresentao de um estudo de caso que utiliza os conceitos daquela parte. O diagrama da figura 1 apresenta as dependncias existentes entre as partes e os captulos contidos no livro..

    Parte I: Captulos 2 a 6 Parte I apresenta os fundamentos bsicos da programao orientada a objetos. No captulo 2 (Fundamentos de Estruturao de Sistemas) so discutidos os mecanismos bsicos que utilizamos para organizar o nosso conhecimento e administrar a complexidade do mundo em que vivemos No captulo 3 (Introduo Programao Orientada a Objetos) so revistas as origens da Programao Orientada a Objetos, situando-a no contexto mais geral da evoluo das tcnicas de programao e das demais tcnicas ditas OO. Ainda nesse captulo, so apresentados os conceitos de ocultamento da informao, encapsulamento e tipos abstratos de dados. No captulo 4 (Objetos e Classes) so apresentados os conceitos de objetos, classes, mtodos e mensagens, explicando como os objetos interagem num programa para realizar uma ao determinada.

  • 2 Cap. 1 / Apresentao

    O captulo 5 (O Ciclo de Vida dos Objetos) apresenta os conceitos de criao e destruio de objetos, completando um conjunto mnimo de conhecimentos que permita ao estudante compreender como funciona um programa orientado a objetos. O captulo 6 (Estudo de Caso: Caixa Automtico) desenvolve um programa exemplo em Java de aplicao em Java, utilizando apenas os conceitos apresentados na parte I.

    Parte II: Captulos 7 a 9 Parte II complementa os conceitos bsicos de Orientao a Objetos apresentados na primeira parte. No captulo 7 (Herana) so apresentados os conceitos de herana simples e mltipla e no captulo 8 (Polimorfismo e Acoplamento Dinmico) so apresentadas as diferentes modalidades de polimorfismo. Nos dois casos, so discutidas as implicaes do uso desses mecanismos. O captulo 9 (Estudo de Caso: Controle de Biblioteca) apresenta um outro estudo de caso englobando os conceitos apresentados nas partes I e II.

    Parte III: Captulos 10 a 13 Parte III trata de alguns mecanismos mais avanados e extremamente importantes para a obteno de sistemas orientados a objetos bem estruturados em Java. O captulo 10 (Classes Abstratas e Concretas) apresenta o conceito de classes abstratas e discute as vantagens e cuidados a serem observados em sua utilizao. O captulo 11 (Interfaces) apresenta o conceito de interfaces e faz uma comparao entre hierarquias de interfaces e de classes. O captulo 12 (Tratamento de Excees) descreve os mecanismos de Java para tratamento de excees. O captulo 13 (Estudo de Caso: Sistema de Folha de Pagamento) desenvolve um outro estudo de caso, onde so utilizados todos os mecanismos apresentados nas partes I, II e III.

  • Cap. 1 / Apresentao 3

    Copyright 2003, Ceclia Rubira. Todos os direitos reservados.

    2 3 4 5

    7 8 9

    10 11

    12

    13

    15

    I

    II

    III

    IV

    6

    14

    Fig. 1.3 - Dependncias Entre os Captulos do Livro

    Parte IV: Captulos 14 e 15 Trata de dois outros mecanismos de Java, de aplicao mais restrita que os mecanismos descritos na 3a. parte. O captulo 14 (Metaclasses) apresenta o conceito de metaclasses, discutindo sua aplicao e os problemas envolvidos com a sua utilizao. O captulo 15 (Pacotes) apresenta o conceito de pacote e sua aplicao. 1.5. Como Utilizar esse Livro O plano do curso, tal como apresentado na seo anterior, adapta-se a diferentes situaes, conforme os conhecimentos prvios dos estudantes e os objetivos especficos do curso. Estudantes que j tenham alguma experincia com outra linguagem de programao orientada a objetos, como C++ por exemplo, podem utilizar as partes I e II apenas para uma reviso dos conceitos de OO, detendo-se mais nos estudos de caso (captulos 5 e 8) e nas partes III e IV. Por outro lado, um curso introdutrio a orientao a objetos pode se limitar ao contedo das partes I e II. Para desenvolvimento integral desse curso estima-se que sejam necessrias 48 horas aula, sendo sugerida a sua distribuio em 24 sesses de 2 horas, da seguinte forma:

    Sesso Captulo do Livro

    Contedo Programtico

    1 2 Fundamentos e histrico de orientao a objetos

  • 4 Cap. 1 / Apresentao

    2 e 3 3.1 a 3.3 Conceitos de objetos, classes, mtodos e mensagens

    4 3.4 a 2.5 Definio de classes em Java 5 4 Ciclo de vida dos objetos 6 5.1 a 5.2 Estudo de caso I - anlise e projeto

    7 e 8 5.3 a 5.4 Estudo de caso I - implementao 9 6 Herana

    10 7 Polimorfismo e Acoplamento Dinmico 11 e 12 8.1 a 8.3 Estudo de caso II - anlise e projeto 13 e 14 8.4 a 8.5 Estudo de caso II - implementao

    15 9 Classes Abstratas 16 10 Interfaces 17 11 Tratamento de Excees

    18 e 19 12.1 a 12.3 Estudo de caso III - anlise e projeto 20 a 22 12.4 a 12.5 Estudo de caso III - implementao

    23 13 Meta classes 24 14 Pacotes

    Dessa forma o curso pode ser inserido com facilidade numa disciplina de graduao de um semestre (aproximadamente 20 semanas). Pode ser aplicado tambm em cursos de programao com durao de aproximadamente 2 meses, com 3 sesses de 2 horas por semana. Finalmente, estudantes ou profissionais com maior experincia em programao podem utiliza-lo de forma intensiva, com sesses dirias, podendo conclu-lo em apenas 1 ms. 1.6. Recursos necessrios 1.6.1. Ambiente de Hardware e Software Para pleno aproveitamento do curso o estudante dever ter acesso a um computador com software apropriado para edio, compilao e execuo de programas em Java. Uma das grandes vantagens da linguagem de programao Java a sua portabilidade, que nos permite utiliza-la em praticamente qualquer tipo de computador, desde um PC compatvel rodando Windows 95 at as mais sofisticadas estaes de trabalho. A edio de um programa Java pode ser feita utilizando-se qualquer editor de textos simples, tal como o EDIT do DOS ou WordPad do Windows 95. Para compilao e execuo possvel obter-se, gratuitamente, o Java SDK (Java Software Development Kit), diretamente do site da Sun na Internet. No Apndice A deste curso esto descritos em detalhes todos os passos necessrios para preparao desse ambiente. 1.6.2. Teste do Ambiente Para uma rpida verificao do ambiente instalado recomendamos a edio, compilao e execuo de um pequeno programa Java, de acordo com os seguintes passos:

  • Cap. 1 / Apresentao 5

    Copyright 2003, Ceclia Rubira. Todos os direitos reservados.

    1.5.2.1. Edio do Programa Utilizando o editor de textos disponvel no ambiente crie um arquivo de nome hello.java contendo as seguintes linhas:

    class hello { static public void main(String argv[]) { System.out.println("Hello World"); } }

    A digitao deve ser feita utilizando letras maisculas e minsculas, exatamente como aparecem no programa. Em Java o nome hello diferente de Hello. Ao utilizar um editor de textos que possua recursos de formatao, como o WordPad, lembre-se de salvar o arquivo em formato texto puro, sem caracteres de formatao. No caso do WordPad, por exemplo, utilize a opo "Salvar como ..." e selecione "Tipo de documento: Documento Texto". Verifique tambm se o nome do arquivo salvo possui apenas a extenso .java. Alguns editores acrescentam a extenso .txt automaticamente, criando arquivos com nomes como hello.java.txt ou hello.txt. Se necessrio, mude o nome do arquivo para hello.java aps salva-lo.

    1.5.2.2. Compilao do Programa Chame o compilador Java fornecendo o arquivo hello.java como entrada. Se estiver sendo utilizado o Java SDK, execute o comando:

    javac hello.java Note que o nome do arquivo de entrada tambm sensvel a letras maisculas ou minsculas e que a extenso .java deve ser includa. Se recebida alguma mensagem de erro verifique se o contedo do arquivo corresponde exatamente s linhas do programa apresentado acima, efetue as correes necessrias e compile-o novamente. Como resultado da compilao ser criado um arquivo de nome hello.class, que contm o cdigo executvel Java.

    1.5.2.3. Execuo do Programa Execute o interpretador Java, fornecendo o arquivo hello.class como entrada. Se estiver sendo utilizado o Java SDK, execute o comando:

    java hello Note que, assim como na compilao, o nome do arquivo de entrada tambm sensvel a letras maisculas ou minsculas, porm a extenso .class no deve ser includa. Como resultado da execuo o programa ir enviar uma nica mensagem na tela, conforme abaixo:

    Hello World

    1.7. Avaliao inicial Seguem exerccios para avaliao dos conhecimentos de programao do estudante. Para esclarecimento de dvidas quanto sintaxe bsica de Java consulte o Apndice B.