Português Español Italiano English
Apostilas PDF Grátis
Sitemap Adobe Autodesk Corel Microsoft Open Source Variadas

Apostila Manual Programação em Java: Linguagem, APIs, Boas Práticas e Eclipse


 









Apostila Manual Programação em Java: Linguagem, APIs, Boas Práticas e Eclipse

Apostila Manual Programação em Java: Linguagem, APIs, Boas Práticas e Eclipse BAIXA ESTA APOSTILA GRÁTIS
Apostila em formato PDF para que você possa guardá-lo para o seu leitor de PC, e-book ou impressão.


Vínculo Patrocinado



Nota: A Apostila você está prestes a baixar está compactado formato. Rar, se você não tiver um descompactador de arquivos rar você pode baixar o 7-zip e você pode exibir o Foxit Reader PDF.



Índice Apostila Manual Programação em Java: Linguagem, APIs, Boas Práticas e Eclipse


Objectivos
Aprender a desenvolver programas em linguagem Java
Motivar os participantes para a adopção de boas práticas de desenvolvimento de software
Utilizar o Eclipse como ambiente de desenvolvimento (IDE).
Consolidação dos conhecimentos transmitidos através da sua aplicação na resolução de exercícios práticos
Conteúdos
Parte 1: Introdução ao Java e Classes fundamentais
Parte 2: Collections e Entrada/saída de dados
Parte 3: Interfaces gráficas com Swing
Parte 4: Acesso a dados remotos por JDBC e HTTP
Bibliografia
Parte 1
Introdução ao Java
Objectivos
Identificar os elementos principais do Java
Descrever a Java Virtual Machine (JVM)
Comparar a utilização do Java para a construção de applets e de aplicações
Identificar os componentes principais do Java Development Kit (JDK)
Descrever as opções de instalação do Java (deployment)
O que é o Java?
Vantagens Principais do Java
Linguagem orientada por objectos
Interpretado e independente da plataforma
Dinâmico e distribuído
“Multi-threaded”
Robusto e seguro
Independente da Plataforma
Ambiente de Segurança do Java
Applets Java
Aplicações Java
Instalação no lado do cliente
Instalação do lado do servidor
JVM - Java Virtual Machine
Como funciona a JVM
Compiladores Just-in-Time (JIT)
Java e Computação na Internet
Resumo
Conceitos Básicos do Java
Objectivos
Tópicos
Componentes Java
Convenções
Classes, objectos e métodos
Utilização de Javadoc
Compilar e executar programas Java
JDK - Java Development Kit
Convenções de Nomes
Nomes de ficheiros (Palavras capitalizadas)
Nomes de Classes (Palavras capitalizadas)
Nomes de Métodos (verbo + palavras capitalizadas)
Standard para variáveis
Standard para constantes
Utilização de caracteres maiúsculos e minúsculos
Números e caracteres especiais
Definição de Classes
Modificador de acesso: public, private
A palavra-chave class
Campos das instâncias
Construtores
Métodos das instâncias
Campos da classe
Métodos da classe
Definição de Métodos
Modificador de acesso
Palavra-chave static
Argumentos
Tipo de retorno
Variáveis e Constantes
Devem ser declaradas antes de ser utilizadas
Uma declaração por linha
No início de um bloco de código
O bloco de código define o âmbito
A inicialização imediata é opcional
Criação de blocos de código
Agrupar todas as declarações de classe.
Agrupar todas as declarações de métodos.
Agrupar outros segmentos de código relacionado entre si
Criação de instruções
As instruções terminam sempre com um ponto-e-vírgula (;)
Instruções compostas são definidas dentro de chavetas { }.
Utilizar chavetas para instruções de controlo
Compilar e Executar Aplicações
Resumo
Exercícios
Tipos de Dados e Operadores
Objectivos
Descrever os tipos de dados primitivos
Declarar e inicializar variáveis primitivas
Utilizar operadores para manipular o valor de uma variável primitiva
Tópicos
Variáveis
A variável é a unidade básica de armazenamento.
As variáveis devem ser declaradas explicitamente.
Cada variável tem um tipo, um identificador, e um âmbito.
As variáveis podem ser inicializadas
Nomes de Variáveis
Palavras Reservadas
Tipos de Variáveis
Oito tipos de dados primitivos
Seis tipos numéricos
Tipo char, para caracteres
Tipo Booleano, para valores verdadeiro ou falso
Tipos definidos pelo utilizador
Classes
Interfaces
Arrays
Tipos de Dados Primitivos
Declaração de Variáveis
Literais Númericos
Literais não-Númericos
Exercício: Declaração de variáveis
Operadores
Atribuição
Aritméticos
Manipulação de bits
Relacionais
Booleanos
Operador de Atribuição
Operadores Aritméticos
Conversões e Casts
Incrementar e Decrementar
Comparações
Operadores Lógicos
Atribuição Composta
Precedência de Operadores
Precedências
Concatenação de String’s
Resumo
Exercícios
Objectivos
Utilizar construções para tomar decisões
Realizar ciclos de operações
Tópicos
Tipos Básicos de Controlo
Sequencial
Transferência
Selecção
Iteração
Controlo de Fluxo em Java
if . else
if...if...if...else if...else
Operador Condicional
Exercício: Descubra os Erros!
switch...case
Ciclos
while...
do…while
for...
Exercício: Descubra os Erros!
break
continue
labeled break, continue
Resumo
Exercícios
Revisão de Conceitos de Orientação por Objectos
Tópicos
Objectos: estado, comportamento
Classes
Encapsulamento
Agregação: hierarquia de objectos
Herança: hierarquia de classes
Polimorfismo
Orientação por Objectos
O que é um Objecto?
Os Objectos executam Operações
Os Objectos memorizam Valores
Os Objectos são Abstracções
Encapsulamento
Hierarquias de objectos
Os objectos são compostos por outros objectos.
Os objectos podem fazer parte de outros objectos.
Esta relação entre objectos é conhecida por agregação
O que é uma Classe?
Porque necessitamos de classes?
Classes versus Objectos
Herança
Relação “Is-a-Kind-of”
Polimorfismo
Resumo
Manipulação de Classes e Objectos
Objectivos
Utilizar packages para agrupar classes relacionadas
Definir variáveis e métodos de instâncias
Criar objectos e invocar métodos
Utilizar as palavras public, private e protected
Redefinir métodos de uma classe (overloading)
Escrever construtores
Utilizar variáveis e métodos de classes
Tópicos
Classes Java
Packages
Controlo de Acesso
Classes e Objectos
Criação de Objectos
new
Objectos e valores primitivos
A referência null
Atribuição de Referências
Variáveis de instância
Acesso a variáveis de instância
Criar e manipular objectos
Métodos
Argumentos de Métodos
Retorno de valores dum método
Invocar métodos a uma instância
Encapsulamento
Passagem de valores a métodos
Passagem de objectos a métodos
‘Overloading’ de métodos
Inicialização de atributos
Construtores
Definição de Construtores
A referência ‘this’
Partilha de código entre construtores
Variáveis de Classe
Inicialização de variáveis de classe
Métodos de Classe
Métodos de classe ou de instância?
Exemplos de Java
Variáveis final
Garbage Collection
O método finalize()
Resumo
Exercícios
Parte 2
Java Collections Framework (JCF)
Tipos abstractos de dados
Estrutura de dados + Algoritmos
Standard
Fácil de compreender
Eficiente
Exemplos
Stack, queue, linked list
Desenho baseado em interfaces
Framework de Collections
Interoperabilidade entre APIs diferentes
Reduz o esforço de aprendizagem de APIs
Reduz o esforço de desenho e implementaçao de APIs
Promove reutilização de software
Objectivos da Collections Framework
Disponibilidade da JCF
Desenho baseado em Interfaces
Interfaces principais
Collection
Set
List
Map
SortedSet
SortedMap
Interfaces e Classes Utilitárias
Interfaces
Comparator
Iterator
Classes
Collections
Arrays
Collection
Um grupo de objectos
Principais métodos
Set
List
Map
Acesso aos membros de um Map
Iterator
ListIterator
Set: Implementações
List: Implementações
Map: Implementações
Ordenação
Operações não suportadas
Modificação de Colecções
Thread safety
Classes Utilitárias
Exercícios
Tratamento de Excepções
Excepções
Tipos de Excepções/Erros
Hierarquia de herança de Exception
java.lang.Throwable
Error
ThreadDeath
OutOfMemoryError
VirtualMachineError
Exception
AWTException
IOException
FileNotFoundException
MalformedURLException
RemoteException
SocketException
RuntimeException
ArithmeticException
ClassCastException
IllegalArgumentException
IndexOutOfBoundsException
NullPointerException
UnsupportedOperationException
Excepções Checked vs. Runtime
Gerar Excepções em Runtime
Gerar “Checked Exceptions”
Síntaxe
Tratamento de múltiplas excepções
Try/Catch: Exemplo 1
Try/Catch: Exemplo 2
Excepções: “Boas maneiras”
“Más maneiras” de tratar excepções
A nossa classe Exception
Algumas observações
Prevenção / Debugging
Referências
Entrada/Saída de dados
Objectivos
Aprender a ler dados de ficheiros.
Compreender o modelo unificado do Java para I/O.
Aprender a serializar objectos.
Compreender a base de acesso a recursos em rede, web, wireless, etc.
Streams
Hierarquia de Streams
Input Streams
Output Streams
Exemplo (MAU, aborrecido…)
Filtered Streams
Readers e Writers
Alguns “Readers” de interesse
Mais funcionalidade
java.nio: a nova API para I/O
Serialização
Classes usadas para serialização
Exemplo de serialização: escrita
Exemplo de serialização: leitura
Tornar uma classe “Serializable”
Possíveis problemas com a serialização
Serialização para XML
Referência
Exercícios
Parte 3
Multithreading
Objectivos
Explicar os conceitos básicos de ‘multithreading’
Criar threads múltiplos
Aplicar a palavra reservada ‘synchronized’
Descrever o ciclo de vida de um thread
Usar wait() e notifyAll()
O que é um Thread?
Onde é que se usam Threads?
Porque se devem usar Threads?
Os Threads são algo de novo?
Utilizador único e sistemas em batch
Sistemas multi-processo
Sistemas multi-tarefa
Sistemas multi-thread
Sistemas multi-processador
A Classe Thread
Exemplo de utilização de Thread
Criação de um novo Thread
Criar a Classe
Instanciar e Executar
Acesso a Recursos partilhados
Ciclo de Vida de um Thread
Bloquear um Thread
Métodos synchronized
Cuidado com synchronized!
Outra forma de criar Threads
Implementar Runnable.
Implementar o método run().
Criar uma instância da classe (objecto alvo).
Criar uma instância do Thread, passando o objecto alvo como um parâmetro.
Invocar start() no objecto Thread.
O escalonador invoca run() sobre o objecto alvo.
Exemplo com Runnable
Escalonamento e Prioridades
Exercícios
Introdução ao Swing
Componentes Principais e Layout
Objectivos
Aprender a criar interfaces gráficas com o utilizador usando Java e Swing
Conhecer a hierarquia de componentes gráficos do Java
Aprender o modelo de eventos do Java
A GUI mais simples!
JOptionPane
Elementos Principais
Java GUI: AWT e Swing
Swing: hierarquia de componentes
Componentes Swing: métodos comuns
get/setPreferredSize
get/setSize
get/setLocation
getLength/Width
repaint
setBackground(Color)
setFont(Font)
isEnabled / setEnabled(boolean)
isVisible / setVisible(boolean)
JFrame
JButton
JLabel
JTextField
Como posicionar e dimensionar?
Layout Management!
Container
JPanel
BorderLayout
FlowLayout
GridLayout
BoxLayout
Outros Layouts
Problemas com Layout Managers
Solução: Composite Layout
Composite Layout Code Example
Look and Feel
Referências
Mecanismo de eventos
Programação baseada em eventos
Java Event Hierarchy
Acções de eventos (ActionEvent)
“Auscultar Eventos” (event listeners)
Exemplo de um ActionListener
Adicionar um ActionListener
Propriedades objectos ActionEvent
ActionListener como “Inner Class”
ActionListener como “Anonymous Inner”
ActionListener numa JFrame
Exercício: uma GUI simples
Referências
Applets
O que é uma Applet?
Interacção com o Browser
Applet Inheritance Hierarchy
javax.swing.JApplet
JApplet: restrições
JApplet: métodos de controlo
Página web com uma Applet JDK 1.1
Página web com uma JApplet JDK 1.3
Java HTML Converter
JApplet Workarounds
Referências
Exercícios
Model-View-Controller
Arquitectura MVC
Comunicação MVC
Arquitectura MVC em Swing
Comunicação MVC em Swing
Exercícios
Parte 4
Acesso a Bases de Dados por JDBC java.sql.*
Tópicos
Introdução ao JDBC e JDBC Drivers
Seis Passos para usar JDBC
Exemplo 1: Definir tabelas por JDBC
Exemplo 2: Inserir dados por JDBC
Exemplo 3: Interrogações por JDBC
Tratamento de Excepções em JDBC
Introdução ao JDBC
JDBC Drivers
Instalar o driver MySQL
Seis Passos para usar JDBC
1. Carregar o driver JDBC
2. Estabelecer a ligação à base de dados (Connection)
URL: Exemplo para ODBC
URL: Exemplo para MySQL
3. Criar um objecto Statement
4. Executar uma Query
Statement: Métodos Úteis
5. Processar os Resultados
ResultSet: mais métodos
6. Fechar a ligação
Exemplo 1: Criar Tabelas por JDBC
As tabelas do exemplo
A tabela Coffee
Exemplo 2
Inserir dados por JDBC
Exemplo 3
Interrogações por JDBC
Tratamento de Excepções JDBC
Excepções SQL
SQLException: Exemplo
Resumo
Referências
Exercícios
Java Networking, java.net.*
Package java.net
Sockets
Sockets e Protocolos
Sockets/Protocolos em Java
Sockets em Protocolos Connection-Oriented
Exemplo: Servidor de Ficheiros
Sockets em Protocolos Connectionless
Objectos URL
Criação de objectos URL
Exercícios
Reflection
Analisar Objectos com “Reflection”
Reflection em Java: a classe Class
Métodos da classe Class
Mais métodos da classe Class
public Class[] getClasses()
public Constructor getConstructor(Class[] params)
public Constructor[] getConstructors()
public Field getField(String name)
public Field[] getFields()
public Method getMethod(String name, Class[] params)
public Method[] getMethods()
public Package getPackage()
public Class getSuperClass()
Programação com Class
Outras Classes de “Reflection”
Obter a Class Pretendida
Exemplo
Reflection e Factory
Reflection e ActionListener
Outras utilizações de “Reflection”
Referências
Exercícios

Baixar




Baixe o descompactador 7-zip
Baixe o Foxit Reader baixo para ler os apostila.






ApostilasPDF © 2009 - Licença Creative Commons