Buscar

Introdução a Java Web J2EE

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 52 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 52 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 52 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Curso de Sistemas de Informação
Prof. Robson Alves
prof.robson.campelo@gmail.com
AULAS 1 e 2
Programação III
1
1
1
2
Apresentação
Professor Mestre Robson Alves Campêlo
Profissão:
Desenvolvedor de Sistemas
Atuação:
Atualmente: Professor de ensino superior
Títulos:
Mestrado Acadêmico em Ciência da Computação - (UFPE), MSc
Área de Pesquisa do Mestrado: Acessibilidade para Portadores de Dislexia em um Ambiente Virtual de Aprendizagem Móvel (Plataforma Android/Java)
Especialista em Engenharia de Software (Faculdade de Filosofia, Ciências e Letras de Caruaru - FAFICA)
Tecnólogo em Análise e Desenvolvimento de Sistemas (FAFICA)
2
2
3
Pauta
Dos horários
Uso de eletrônicos
Aspectos Comportamentais
Dos afastamentos
Das atividades extraclasse
Das chamadas de frequência 
Dos conteúdos das avaliações
Dos horários
Estejam sempre no local da aula 15 minutos antes, pelo menos. 
Os horários são:
18:40 as 20:20
Intervalo 10 minutos
20:30 as 21:50
Das comunicações
Endereço de e-mail do professor :
 prof.robson.campelo@gmail.com 
Frequência de consulta:
Todos os alunos devem sempre consultar os canais de comunicação (site, e-mails, etc);
Pelo menos 1 vez ao dia;
Externo e de apoio:
 Informar ao professor o endereço de e-mail da lista/grupo da turma. Senão, indicar alguém para criar o grupo/lista e informá-lo;
6
Uso de eletrônicos
Evitar utilizar aparelhos eletrônicos dentro da sala de aula:
Colocar em modo silencioso o celular;
Se tocar, rapidamente silenciá-lo e, se emergencial, atendê-lo fora da sala/laboratório
O uso de computadores proprietários estará liberado apenas em laboratório. No entanto, este deve estar configurado adequadamente para as aulas.
7
Aspectos Comportamentais
Focar nos estudos e atividades escolares.
Evitar comentários que venham a desrespeitar ou desmoralizar alguém.
Tratar com respeito o professor, colegas e demais funcionários da faculdade.
Evitar conversas paralelas, especialmente, as que não sejam de interesse da disciplina.
Cumprir os prazos determinados pelo professor.
Estar sempre atento as datas acadêmicas/institucionais indicadas no seu calendário
Evitar atrasos e faltas.
 8
Dos afastamentos
O afastamento do aluno poderá ocorrer por condições de saúde (internamento hospitalar), quando, então, poderá solicitar acompanha-mento especial, por requerimento.
O afastamento por motivo de viagem quaisquer não terá falta(s) retirada(s) ou justificada(s) pela coordenação. Mesmo estas sejam por questões profissionais.
9
Das chamadas de frequência
Não será retirada falta do aluno pelo professor.
A justificação de falta deve ser feita ao pessoal da coordenação.
A justificativa de faltas será realizada por meio de atestado médico e, somente, será admitida para doenças infectocontagiosas ou por acompanhamento médico especial.
A chamada será realizada por assinatura de Ata de presença que será passada no decorrer da aula.
Aqueles que assinarem a Ata e se retirarem antecipadamente da aula, não perderão a presença, mas DEVEM ESTAR CIENTES de que assumem a responsabilidade nas avaliações.
Das atividades 
extraclasse
Teremos a cada encontro uma atividade extraclasse individual;
A atividade extraclasse deverá ser enviadas por email até aula seguinte, quando será formalizada com registro de entrega;
Poderá contribuir em até 1 ponto de participação na nota da unidade;
11
Dos conteúdos da 
avaliações
1ª avaliação – todos os assuntos vistos na disciplina até a data desta prova
2ª avaliação - todos os assuntos vistos na disciplina até a data desta prova
Segunda chamada - todos os assuntos visto na disciplina até a data desta prova
Prova final - todos os assuntos vistos no período letivo
12
Do acordo
As regras estabelecidas neste contrato pedagógico podem sofrer alterações durante o período letivo. Neste caso, as mudanças devem ser apresentadas e acordadas entre o professor e os alunos. 
Na omissão de quaisquer regras ou política da IES neste contrato, o aluno não será isento de suas responsabilidades.
 
Programação III
Expectativa da Disciplina
14
O que a turma espera da disciplina?
Com base no que foi visto em Programação II, qual o perfil da turma em Java?
Algumas perguntas para sondagem...
15
O que é a JVM (Máquina Virtual Java)?
Que definição podemos dar de uma classe?
E de um objeto?
O que é instanciação?
O que são atributos e métodos de uma classe?
E quanto à orientação a Objetos, qual a diferença para o paradigma imperativo (Ex. Pascal, C etc)?
Ementa da Disciplina
Estudo de uma linguagem de programação orientada a objetos.
Implementação de classes-objeto, herança, polimorfismo, estrutura todo-parte, comunicação e associação.
Implementação de interface humana e de armazenamento de dados orientados a objetos. 
Paradigmas de Linguagens de Programação.
16
Competências específicas
Conhecer os conceitos da Orientação a Objetos, Aplicar os conceitos de orientação a objeto em uma linguagem de programação, desenvolvendo:
Senso crítico e capacidade de contextualização;
Capacidade de identificar, analisar e solucionar problemas;
Trabalho em equipe.
17
Pontos Fortes da disciplina
18
Aprofundamento na linguagem Java
Visão geral da plataforma J2EE para aplicações Web em Java com Java Server Faces
Introdução à persistência em banco de dados com Java
Pontos Fortes de Java
19
É uma linguagem cada vez mais presente no mercado de trabalho
Portabilidade permite rodar aplicações em qualquer Sistema Operacional.
Plataforma Google Android em Java – Novas e Interessantes oportunidades para o desenvolvedor Java
Bibliografia Complementar
DEITEL, Paul J./DEITEL, Harvey M., Java: Como Programar, 8 ed. Prentice-Hall, 2010 
BATES, Bert, SCJP:Certificação Sun para Programador Java – Guia de Estudo, ED. Alta Books, 2006
SIERRA, Kathy/ BATES, Bert, Use a Cabeça! Java. ED. Alta Books. 2007 
20
Plano de Aula
21
Disponível no portal da disciplina
Cronograma dos conteúdos que serão abordados durante o semestre letivo
Importante! Vejam os Planos de Aulas das disciplinas
Conteúdo programático
22
Unidade 1
Introdução a Orientação a Objetos
Conceitos de Orientação a Objetos
Programação Fundamental em Java
Programação J2EE
Unidade 2
Interfaces de usuário com Java Server Faces
Projeto Web Orientado a Objetos com JSF e Banco de Dados
Metodologia de Ensino
Disciplina efetivamente prática!
Atividades de Classe (realizadas durante a aula prática em laboratório)
Atividades Extraclasse: contam ponto de participação para prova
23
Forma de Avaliação
1ª avaliação – Prova (100% da nota)
2ª avaliação – Projeto (60%) e Prova (40%)
Segunda chamada - Prova (100% da nota)
Prova final - Prova (100% da nota)
24
 
Introdução a Orientação a Objetos
Introdução a Orientação a Objetos 
26
Orientação a Objetos:
Vivemos num mundo de objetos;
Eles podem ser categorizados, descritos, organizados, combinados, manipulados e criados.
A orientação a objetos propõe-se à criação de software, ou seja uma abstração que nos permite modelar o mundo em modos que nos ajudam a melhor entendê-lo e a navegar nele.
Introdução a Orientação a Objetos 
27
Breve histórico linguagens de Programação:
FORTRAN: Primeira linguagem de alto nível
Anos 60: Programação estruturada
1966: SIMULA- Primeira linguagem a definir classes de objetos, como uma extensão da linguagem ALGOL 60.
Posteriormente outras linguagens surgiram: C++, Objetive-C, Object Pascal etc
Introdução a Orientação a Objetos 
28
Linguagens Orientadas a Objetos:
C++
C#
VB.NET
Java
Object Pascal
Objective-C
Python
SuperCollider
Ruby
Smalltalk
Introdução a Orientação a Objetos 
29
Linguagens com suporte a Orientação a Objetos:
ActionScript
ColdFusion
JavaScript
PHP (a partir da versão 4.0)
Perl (a partir da versão 5.0)
Visual Basic (a partir da versão 4.0)
Introdução a Orientação a Objetos
Definição Clássica de Orientação a Objetos:
A orientação a objetos (OO) é um paradigma de análise, projeto e programação de sistemas de software baseado na composição e interação entre diversas unidades de software chamadas de objetos.
30
Introdução a Orientação a Objetos
É interessanteobservarmos que na linguagem Pascal, por exemplo, temos o conceito de Registros (Record):
TYPE registro = RECORD
 num:integer;
 nome:string; 
 saldo:real;
end;
31
Introdução a Orientação a Objetos
32
Introdução a Orientação a Objetos
33
Um TYPE possui o mesmo princípio de uma classe, portanto a Orientação a Objetos baseou-se nesse conceito
Poderemos declarar variáveis de um TYPE da mesma forma como declaramos de uma classe:
Var Conta: Registro; (Pascal)
Registro conta; (Java)
Introdução a Orientação a Objetos
Atividade de Classe:
Se fôssemos modelar um sistema orientado a objetos para controle da sala de aula, quais objetos poderíamos identificar?
Criem uma lista de objetos referentes aos elementos identificados na sala de aula (2 minutos para a atividade)
34
Introdução a Orientação a Objetos
Objetos identificados:
Sala de aula
Cadeira;
Mesa;
Computador;
Data-show;
Aluno;
Professor;
Quadro;
35
Introdução a Orientação a Objetos
Para modelarmos um Sistema OO, é importante que saibamos identificar os objetos, seus atributos, comportamentos, relacionamentos etc
Por exemplo: Em nosso Sistema da Sala de Aula, o objeto Cadeira possui os seguintes atributos: material, cor, tipo, marca
A Sala neste momento, possui uma Coleção de objetos do tipo Aluno
36
Introdução a Orientação a Objetos
Existe apenas uma instância do objeto Professor neste momento
Neste momento, um Professor está ministrando aula para Muitos alunos, porém Muitos alunos assistem aula de um único Professor (Relacionamento de 1 para N)
Tanto Professor quanto Aluno, são objetos pertencentes a uma categoria de objeto Pessoa, portanto, possuem características em Comum (herança)
37
Introdução a Orientação a Objetos
A Sala de aula possui os seguintes objetos: cadeiras, mesa, quadro e computador (agregação – um que objeto possui outros objetos como membros independentes)
Obs: em uma composição os objetos são membros dependentes, ou seja, não fazem sentido fora do contexto
Ex.: Pedido e itens do pedido: Se destruir o pedido, o itens são eliminados junto
38
Introdução a Orientação a Objetos 
Modelos orientados a objeto X modelos estruturados
Imaginem um sistema financeiro, onde faríamos toda a administração de uma empresa. 
POO: Teríamos um objeto de fornecedores, por exemplo, onde todas as funções estariam agrupadas no objeto e em nenhum outro lugar.
Estruturada: As rotinas e funções de fornecedores estaria espalhada em todo o sistema, como em contas a pagar, contas a receber, cadastro, etc.
39
Introdução a Orientação a Objetos 
40
Sistema Financeiro em POO:
CLIENTE
FORNECEDOR
CONTAS A PAGAR
CONTAS A RECEBER
GERENTE
Introdução a Orientação a Objetos 
41
Sistema Financeiro em linguagem Estruturada:
VAR
 opcao, indice, cliente_indice, clientes:array[1..5] of cliente; contas:array[1..10] of conta;
procedure cadastrar_clientes(var_cli:cliente);
procedure cadastrar_fornecedor(var_for:fornecedor);
function total_documentos : integer;
BEGIN
cliente_indice:= 1;
 doc_indice:= 1;
 repeat
 WriteLn('Menu de opcoes');
 WriteLn('1 - Cadastrar Clientes');
 WriteLn('2 - Cadastrar Fornecedor');
 WriteLn('4 - Totalizar Contas a Pagar');
 WriteLn('5 - Sair');
 WriteLn('Digite sua opcao:');
 ReadLn(opcao); 
// … //
END.
Introdução a Orientação a Objetos 
Vantagens no modelo OO:
Modelagem mais natural:
A aplicação dos conceitos da orientação a objetos na análise de sistemas permitirá modelar a empresa ou as áreas da aplicação de uma forma que os recursos a serem aplicados retratam com mais facilidade o mundo real.
42
Introdução a Orientação a Objetos 
Vantagens no modelo OO:
Reuso:
Na orientação a objetos um objeto pode acessar e usar como se fossem seus os métodos e a estrutura de outro objeto. 
Se dois objetos forem bastante semelhantes, pode-se escrever os métodos apenas uma vez e usá-los para os dois objetos.
43
Introdução a Orientação a Objetos 
44
Introdução a Orientação a Objetos 
Vantagens no modelo OO:
Redução no custo de manutenção
Na programação orientada a objetos a herança e o encapsulamento, permitem que, quando for necessária alguma alteração, modifique-se apenas o objeto que necessita desta alteração
Esta alteração será propagada automaticamente por todas as partes do sistema que utilizam este objeto
45
Introdução a Orientação a Objetos 
46
Exemplo:
Introdução a Orientação a Objetos 
Vantagens no modelo OO:
Encapsulamento
Não permite que seja feito o acesso direto ao estado interno de um objeto, isto é, oculta e protege as informações dos objetos.
O acesso aos mesmos deve ser feito através das mensagens que o objeto pode receber.
47
Introdução a Orientação a Objetos 
48
Exemplo:
Introdução a Orientação a Objetos 
Vantagens no modelo OO:
Projetos mais rápidos com qualidade:
Em função da característica da reutilização, uma vez que existam bibliotecas que ofereçam classes com recursos necessários, novos projetos utilizarão esses componentes pré-existentes.
49
Introdução a Orientação a Objetos 
Vantagens no modelo OO:
Codificação mais simples de programas:
A codificação de métodos reduz a complexidade na construção do código dos programas. Isso traz simplicidade no momento de codificar, testar e manter o software.
50
Introdução a Orientação a Objetos 
51
Atividade Extraclasse:
Pesquisem exemplos de sistemas desenvolvidos em Linguagem Orientada a Objeto (independente da linguagem) e sistemas em linguagem estruturadas.
Descrevam as principais características desses sistemas relacionando-as com as vantagens apresentadas no modelo OO.
Enviei para meu e-mail ATÉ A PRÓXIMA AULA: prof.robson.campelo@gmail.com
Dúvidas?
52

Outros materiais