Treinamento de Programação OO em Java
Objetivo
O objetivo deste treinamento é apresentar conceitos fundamentais de programação voltados para o desenvolvimento web.
Tópicos
- Programação OO utilizando Java
- IDE Eclipse
- JDBC e PostgreSQL
- Html, CSS e Javascript
- XML
- Tomcat
- Servlets, JSP e JSTL
- Padrões para o desenvolvimento de aplicações
- Struts
Exercícios
- Crie uma aplicação para um sistema bancário com as seguintes classes: classe conta (geral), conta corrente, conta poupança e conta salário. Crie uma classe Principal, a qual conterá o método main() para teste das classes criadas.
- Complete essa classe Banco, fornecendo métodos para inclusão de clientes (adição de clientes à lista), exclusão pelo id e soma dos saldos dos clientes existentes.
- Revise as classes já discutidas do sistema bancário e declare um método de transferência de forma que só haja transferência entre contas correntes. Além disso, documente as classes já criadas utilizando a sintaxe do Javadoc e gere a documentação do projeto. Para refletir, de que forma poderíamos permitir contas conjuntas no nosso sistema?
- Nas classes já existentes, defina métodos para a exibição de valores de um objeto. Estes métodos também devem exibir o tipo dinâmico do objeto (classe utilizada na chamada do operador new).
- Nos slides que falamos sobre poliformismo (Heranca.ppt), utilizamos um método exibe() polimórfico, o qual exibia os dados de um cliente. Crie um método similar chamado congela(x), o qual debitará um dado montante x de cada conta. Para o caso de uma conta corrente, será debitado (x + valor do saldo especial).
- Realize as seguintes alterações no navegador (os arquivos estão na seção abaixo): (1) Mude o título para Firefox -1.0; (2) Na abertura, fazer com o que o navegador preencha toda a tela; (3) Após digitar um endereço e pressionar a tecla ENTER, abra uma caixa de diálogo perguntando se este é realmente o que o usuário deseja. Dica: Utilize este site de exemplos de código em Java buscando através de palavras-chave.
- Utilizando os recursos disponíveis na biblioteca Swing, implemente uma calculadora com as operações básicas de soma, subtração, multiplicação e divisão.
- Utilize um Banco de Dados para persistir os dados de contas bancárias do exercício proposto anteriormente.
- Utilizem a idéia do padrão DAO para o sistema de conta bancária. O exemplo apresentado está na seção de códigos abaixo.
- Exiba a calculadora criada como um applet.
- Dicas do Eclipse
- Introducao (40 slides)
Introdução à programação web; Separação entre os papéis cliente e servidor; Assuntos afins, e; Planejamento do curso.
- Motivação para desenvolvimento OO, Classes (61 slides)
Motivação; Conceitos básicos de OO; Atributos; Construtores; Métodos; Atributos Estáticos; Métodos Estáticos; Passagem de Parâmetros; Documentação de classes (JavaDoc).
- Pacotes, Encapsulamento (17 slides)
Motivação; Acesso à outros pacotes; Importação Estática; Visibilidade de Acesso; Biblioteca padrão de Java.
- Conceitos de Generalização, Especialização (62 slides)
Motivação; Conceito de Herança; Amarração Tardia; Polimorfismo; Modificador final; Interfaces; Classes Abstratas; Herança Múltipla; Classes Genéricas.
- Construção de aplicações gráficas (59 slides)
Motivação; Elementos gráficos básicos; Diagramadores; Eventos; Listeners; Adaptadores.
- Conexão a Banco de Dados (32 slides)
Introdução; JDBC; Tipos de Drivers JDBC; Passos Básicos; Padrão DAO.
- Exceções (19 slides)
Motivação; Introdução; Tipos de Exceções; Sintaxe em Java.
- Applets (36 slides)
Applets.
- HTML e afins (56 slides)
Informações básicas sobre HTML, CSS e Javascript.
- HTTP e afins (27 slides)
Informações básicas sobre o protocolo HTTP e conexões web com a linguagem Java.
- Entrada e Saída (19 slides)
Informações básicas sobre entrada e saída em Java.
- XML e aplicações (53 slides)
Informações básicas sobre XML e suas aplicações.
- Segurança em Java (46 slides)
Comunicação segura em Java.
- Segurança Digital (29 slides)
Apresentação sobre segurança digital (Patricia Garces Rabelo).
- Servlets (46 slides)
Servlets.
- Tomcat (6 slides)
Algumas configurações do Tomcat.
- JSPs (68 slides)
Slides sobre JSPs (JavaServer Pages).
- Struts (23 slides)
Slides sobre Struts.
Referências (em construção)
- Especificação da API da J2SE (Java Standard Edition) 6
- Especificação da API da J2EE (Java Enterprise Edition) 5 - API para uso de Servlets, etc.
- David Flanagan, Java: O Guia Essencial
- Cay S. Horstmann, Gary Cornell, Core Java 2, Vols 1 e 2
- Carlos Camarão, Programação de Computadores em Java
- Budi Kurniawan, Struts 2 - Projeto e Programação