06/09/2007 Tutorial Java Básico por Roberto Vezzoni

Slides:



Advertisements
Apresentações semelhantes
Orientação a objetos identidade abstração classificação encapsulamento
Advertisements

JAVA Orientação a Objetos
ARQUITETURA EM CAMADAS
UNIPAC – ARAGUARI CAMPUS – IX PROF. EVERTON HIPÓLITO DE FREITAS
Iniciando na plataforma Eclipse
Infra-Estrutura de TI: Hardware e Software
Engenharia de Software
Sistemas Distribuídos
PRDS - Programa de Residência em Desenvolvimento de Software Laboratório de Engenharia de Software (LES) da PUC-Rio Carlos Lucena
Introdução aos Serviços Web
Rebeca Schroeder Linguagem Java Rebeca Schroeder
Introdução ao paradigma de programação: Orientado a Objetos
Alexandre Parra Site: Linguagem Java Alexandre Parra Site:
Introdução à Linguagem Java
Aplicações para Web.
WebWork e JSP Keven andrade
Introdução a Programação Orientada a Objetos
TÉCNICAS DE PROGRAMAÇÃO II
Seminários Avançados 3 Conceitos Java EE Servidor de aplicação Tomcat
Linguagem de Programação JAVA
Aula 1 Minicurso: Astah Ministrantes: André Martins; Camila Brondani;
Análise e Projeto de Sistemas UNIVERSIDADE DE CRUZ ALTA Ciência da Computação 2010/1.
Web Services Uninorte Semana de Tecnologia da Informação
Tópicos Avançados em Sistemas Distribuídos
Conceitos de J2EE para a WEB
Cristiano Soares Rafael di Lego Roberto Nemirovsky Thiago Nascimento
Professor: Márcio Amador
Orientação a Objetos Parte I
Aula 1 - Fundamentos Java SE Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros – Agosto/2009.
R. Episcopal, 1763 – São Carlos-SP (16) www.virgos.com.br VIRGOS TI Arquiteturas JAVA Trilhas para a preparação do profissional.
Curso Técnico em Informática Disciplina: Programação Web 2 - PHP
SISTEMAS DISTRIBUIDOS Aula 4
Paradigmas da Programação – Semestre 1 – Aula 9 Professor: Eduardo Mantovani )
SISTEMAS OPERACIONAIS I
MINI CURSO J2ME Vinícius Maran SEMINÁRIO REGIONAL DE INFORMÁTICA 2008.
Conceitos da arquitetura
MINI CURSO J2ME Vinícius Maran SEMINÁRIO REGIONAL DE INFORMÁTICA 2008.
Introdução a JEE Marco A. S. Reis Arquiteto de Software Abril/2011.
+ Java Básico Aula 1 por Flávio Juvenal. + Histórico Green Project (1991) Desenvolver plataforma para eletrodomésticos inteligentes Tentaram usar C++
Unidade 1 – Introdução a J2EE Prof.: Henrique Santos
Introdução JAVA Faculdade Mauricio de Nassau
Integração de Ferramentas CASE
JBoss Unidade III JBoss Visão geral do JBoss Aula 1.
O que são, quais existem e suas características.
UML e a Ferramenta Astah
Linguagem de Programação JAVA
Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas.
Introdução a Programação Orientada a Objetos
Java Disciplina: Programação II Professora: Mai-Ly Vanessa.
O que é Java? Prof. M.Sc. Ronnison Reges Vidal. Roteiro  Introdução  Java  Máquina Virtual  Versões  JVM, JRE, JDK  Onde usar e Objetivos  Compilando.
Mini Curso.
Linguagem técnica de programação I Java
Igor Steinmacher, MSc. Java!!!!
Programação em Java Prof. Edvan Chaves.
 São métodos formais de tornar disponíveis para a administração, quando oportuno, as informações necessárias para facilitar o processo de tomada de decisão.
Introdução aos Sistemas Operacionais
20/04/2017 Orientação a Objetos 1 1.
Projeto Supervisionado no Desenvolvimento de Aplicações Profissionais na Web Servidores.
Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros.
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Equipe Danilo Miguel Elias Lacerda Felipe Riguete Henderson Garcia
UCSal – Tecnologia em Análise e Desenvolvimento de Sistemas Programação para Aplicações WEB Profa. Semíramis Assis
Acessando banco de dados com JAVA.  Linguagem independente de plataforma; ◦ “Write once, run anywhere” ◦ JVM  Java Virtual Machine  Mecanismo que permite.
Desenvolvimento WEB II Ajax – Utilização de Frameworks Javascript Professora: Kelly de Paula Cunha.
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Prof. Cristian Rodrigo Dalcico. Linguagem de Programação Java Aula 1.
1 Especificação de Sistemas de Software e a UML. 2 Modelagem de sistema A modelagem de sistema auxilia o analista a entender a funcionalidade do sistema.
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos
Introdução à plataforma Java. 2 A tecnologia Java Java: linguagem de programação e plataforma de desenvolvimento Criada pela Sun Microsystems Apoiada.
Transcrição da apresentação:

06/09/2007 Tutorial Java Básico por Roberto Vezzoni

06/09/2007 Agenda A História O que é Java? JCP Prog. Orientada a Objetos Arquitetura Java em todo lugar Como começar Exemplos Produtividade Java e o Mercado Comunidades Futuro e Tendências E agora? 2

06/09/2007 Roberto Vezzoni Java desde Certificado em Analista de sistemas e assessor de TI; Realiza treinamentos Java para empresas privadas desde

06/09/2007 A História

06/09/2007 Como Java nasceu… Patrick Naughton, engenheiro da Sun, estava cansado e iria sair; Scott McNealy, CEO da Sun, pediu para que ele escrevesse o que estava errado; Naughton não poupou palavras, mas achou que não ia dar em nada; McNealy enviou a mensagem para outros e Naughton recebeu uma enxurrada de mensagens de apoio, inclusive de Bill Joy (fundador da Sun) e James Gosling (seu mentor), que colocaram lenha na fogueira; 5

06/09/2007 Como Java nasceu… A Sun, então, faz sua contra-proposta: cria o projeto Green para desenvolver algo inovador; Reclusos e sem contato com a Sun, os melhores desenvolvedores analisavam e debatiam sobre tecnologias existentes; A sacada: como aparelhos eletrônicos (jogos, TVs, VCRs, etc.) poderiam comunicar-se uns com os outros? Logo notaram que estes aparelhos todos possuem hardware diferente e limitado; 6

06/09/2007 Como Java nasceu… Começaram a desenvolver uma nova linguagem, batizada de Oak;  Criada por James Gosling;  Orientada a Objetos;  Parecida com C++;  Projetada para rodar em diferentes hardwares. Desenvolveram, então, um controle remoto interativo para receptores de TV a cabo, chamado “*7”. 7

06/09/2007 Como Java nasceu… Depois de 18 meses, a Sun transforma o projeto Green em uma empresa, chamada “First Person”e tira o time da reclusão; A empresa tinha uma boa idéia, mas não tinha mercado; Em 1993 foi lançado o Mosaic, primeiro navegador para a World Wide Web; O projeto muda de rumo e aposta no sucesso da Internet, que se encaixava perfeitamente com as idéias do grupo; A nova idéia era criar um sistema para permitir o uso de multimídia na Web; 8

06/09/2007 Enfim, Java A linguagem Oak se tornaria o produto. Naughton sugere que seja distribuída gratuitamente na web; O time desenvolve o navegador WebRunner, mais tarde HotJava Browser. Nascem as Applets; Sun concorda em disponibilizar Oak, mas antes troca seu nome para Java (outros mais cotados: Neon, Lyric, Pepper e Silk); A Netscape anuncia seu novo navegador com suporte a Java e a tecnologia dispara; 9

06/09/2007 Java hoje Evolução:  Java 1.0a;  Java Development Kit 1.1;  Java 2 Platform 1.2;  Java 2 Platform 1.3;  Java 2 Platform 1.4;  Java 2 Platform 5.0 (Tiger);  Java 6 (Mustang)‏  Próxima: Java 7 (Dolphin). 10

06/09/2007 O que é Java?

06/09/2007 O que é Java? Java é...  Um software?  Uma tecnologia?  Uma linguagem de programação?  Uma plataforma de desenvolvimento?  Uma ilha da Indonésia? 12

Jawa 06/09/200713

06/09/2007 Java é tudo isso Simples, orientada a objetos; Independente de plataforma (WORA); Portável, baseada no poder das redes; Versátil, dinâmica, robusta e segura; Gratuita; Fácil de usar e desenvolver; Popular e rodeada por uma comunidade vibrante! 14

06/09/2007 Java é… Orientada a objetos; Híbrida (compilada e interpretada); Semelhante a C/C++, mas:  É mais simples e tão poderosa quanto*: não tem ponteiro, #define,.h, etc.  É independente de plataforma;  É mais robusta e segura: coletor de lixo, exceções, verificação de tipos, checagem de integridade, suporte nativo a threads. * Exceto por herança múltipla, que Java não tem (mas épossível simular). 15

06/09/2007 Java Community Process

06/09/2007 Java é software? 17

06/09/2007 Java é uma Especificação The Java Language Specification Especifica a linguagem de programação Java, sintática e semanticamente, descrevendo todos os seus aspectos. Pode ser comprada como livro ou baixada gratuitamente: The Java Virtual Machine Specification Especifica como uma máquina virtual Java funciona. Pode ser comprada como livro ou baixada gratuitamente: 18

06/09/2007 Porque uma especificação? Organizações podem criar suas próprias versões de Java; Todas elas serão compatíveis, pois devem passar por um teste; Você não fica preso a um fornecedor de software. 19

06/09/2007 Quem faz a especificação? No início, quem criou Java foi a Sun; A partir de 1998, foi criado o Java Community Process (  O JCP é um processo aberto e participativo de desenvolvimento e revisão das especificações Java;  A Sun possui grande influência (Executive Comitee), mas não domina o JCP. 20

06/09/2007 Quem participa do JCP Mais de 900 pessoas, empresas e organizações sem fins lucrativos;  Empresas desenvolvedoras: Apple, BEA, IBM, JBoss, Oracle, etc.  Empresas usuárias: Boeing, Computer Associates, Google, LG, MySQL, Motorola, PalmSoftware, PeopleSoft, Sony, Sybase, etc.  Pessoas: Bruno Souza, Michael Nascimento, Osvaldo Doederlein, etc.  Organizações: Apache Software Foundation, SouJava, etc. 21

06/09/2007 Como participar Assinando a JSPA (Java Specification Participation Agreement) e pagando a anuidade; É possível colaborar sem ser membro, revisando e comentando especificações. Anuidade JCPAnuidade W3C EmpresasUS$ 5.000,00 Até US$63.500,00 OrganizaçõesUS$ 2.000,00US$ 6.350,00 PessoasUS$ 0,

06/09/2007 E quem implementa o Java? Muita gente:  A Sun Microsystems (a mais usada);  Não-livres: IBM, BEA, Apple, Microsoft, JET, Blackdown, etc.;  Livres: GNU GCJ/Classpath, Kaffe, etc.;  Para fins de pesquisa: JNode, Jikes RVM, Sun MVM, IBM CJVM, etc. Todas são compatíveis com a especificação, você escolhe. 23

06/09/2007 OpenSource ou Proprietária? Java ERA uma especificação aberta, agora, Java é Open Source, sob a licença GPL v2; A implementação da Sun do Java ME e Java SE já são Open Source, sob a licença GPL v2. Também se tornaram Open Source o NetBeans, Solaris, OpenSPARC e StarOffice.   24

06/09/2007 Mitos Java é lenta!  As primeiras versões eram lentas, mas as novas são até mais rápidas que C++. Não possui um ambiente RAD (like Visual Studio) !  Há muitas ferramentas de alta produtividade disponíveis, inclusive gratuitas. JavaScript é uma derivação de Java!  Não. Em comum elas só tem o nome e a sintaxe. São duas linguagens diferentes. 25

06/09/2007 Mitos Java só serve para fazer Applets!  Ledo engano. Java serve para fazer de clientes desktop à aplicações enterprise, passando por dispositivos móveis. Java é a melhor forma de fazer tudo!  Bem que eu queria, mas não é. Java é bastante versátil, mas não faz tudo. 26

06/09/2007 Por que usar Java? Precisa de mais motivos?  Projetada para redes desde o começo –“The network is the computer”;  Alta aceitação e suporte da indústria;  Muitas ferramentas disponíveis, várias delas gratuitas e livres;  Vasta documentação, fácil de aprender;  Alta produtividade;  Open Source;  Etc, etc, etc. 27

06/09/2007 Programação Orientada a Objetos

06/09/2007 Engenharia de Software Desenvolver software não é uma arte; A Engenharia de Software busca formalizar metodologias; Paradigmas regem as tarefas de análise, projeto e codificação; Os mais conhecidos:  Paradigma Estruturado (ou Procedural);  Paradigma Orientado a Objetos. 29

06/09/2007 Java é Orientada a Objetos Para desenvolver bem em Java é preciso saber os conceitos de OO; Se não...  Dificilmente conseguirá evoluir além de programas bem simples;  Será difícil entender outros programas e outras pessoas entenderem o seu;  Você estará perdendo tempo. Use C, Pascal, etc. que são procedurais. 30

06/09/2007 Orientação a Objetos Análise, projeto e programação; Mapear o mundo real no mundo computacional utilizando objetos; Abstração mais próxima do mundo real do que o paradigma estruturado. 31

06/09/2007 Conceitos Abstração; Encapsulamento; Modularidade; Objetos; Classes; Ligações e associações; Composição e agregação; Herança; Mensagens e métodos; Persistência; Classes e operações abstratas; Sobrecarga e sobrescrita; Polimorfismo. 32

06/09/2007 Abstração Ignorar aspectos irrelevantes e concentrar nos principais; Tipos:  Abstração de dados;  Abstração de procedimentos. 33

06/09/2007 Encapsulamento Separar os aspectos externos (o que faz) dos aspectos internos (como faz):  Aspectos externos = interface, contrato;  Aspectos internos = implementação. 34

06/09/2007 Modularidade Decomposição do sistema em módulos:  Coesos (baixo acoplamento);  Autônomos;  De interface simples e coerente. Fundamental para o reuso. 35

06/09/2007 Objetos Conceito central deste paradigma; Entidades que incorporam abstrações relevantes do problema; Um objeto tem três características principais:  Estado (estrutura);  Comportamento;  Identidade; 36

06/09/2007 Classes Objetos que possuem mesma estrutura e comportamento são de uma mesma classe; Definimos classes, não objetos. 37

06/09/2007 Ligações e Associações Objetos relacionam-se entre si:  Ligação: conexão entre objetos;  Associação: conexão entre classes que representa existência de ligações. Associações podem ter cardinalidades. 38

06/09/2007 Composição e Agregação Associações todo-parte;  Objetos complexos são compostos de objetos mais simples;  Composição: as partes estão sempre relacionadas ao todo;  Agregação: as partes podem ser decompostas. 39

Herança Quando classes têm semelhanças podemos generalizá- las; Hierarquias:  Relações de superclasse x subclasse;  “Filhos” herdam estrutura e comportamento dos “pais”. 06/09/200740

06/09/2007 Mensagens e Métodos Objetos trocam mensagens para se comunicar (deve ser a única forma); Métodos: operações que um objeto pode realizar. 41

06/09/2007 Persistência Capacidade do objeto de transcender o tempo e o espaço;  Armazenamento em banco de dados;  Transmissão pela rede. 42

06/09/2007 Classes e operações abstratas Classes abstratas não podem ser instanciadas; Operações abstratas não possuem implementação; Classe composta somente por operações abstratas = interface. 43

06/09/2007 Sobrecarga e sobrescrita Sobrecarga: operações distintas com o mesmo nome; Sobrescrita: subclasse define nova implementação para operação definida na superclasse. 44

06/09/2007 Polimorfismo Habilidade de tomar várias formas. 45

06/09/2007 Arquitetura

06/09/2007 Java é muita coisa A Linguagem de programação Java; O ambiente de execução Java; O kit de desenvolvimento Java; Uma biblioteca de classes (API) Java. 47

06/09/2007 Plataforma Java 2 Desde a versão 1.2, passou a ser chamada de “Java 2”e foi dividida em:  Java 2 Platform Standard Edition (JavaSE);  Java 2 Platform Enterprise Edition (JavaEE);  Java 2 Platform Mobile Edition (JavaME). Cada uma tem sua API; A JavaSE é base para as outras. 48

06/09/2007 Novos ares A partir da versão 6, tira-se o “2”:  Java Platform, Standard Edition 6 ou Java SE 6;  Java Platform, Enterprise Edition 6 ou Java EE 6;  Java Platform, Mobile Edition 6 ou Java ME 6. O “Java2” permanece na versão 1.5 e anteriores. 49

06/09/2007 Java Platform, Standard Edition Ferramentas de desenvolvimento + API núcleo da plataforma Java;  Permite o desenvolvimento de aplicações desktop, inclusive com interface gráfica, acesso à banco de dados, I/O, rede, etc.  Dividida em: JDK = Java Development Kit; JRE = Java Runtime Environment. 50

06/09/2007 Java Development Kit Somente para os programadores; Contém:  Ferramentas de desenvolvimento;  Ambiente de execução (JRE);  API Java SE (compilada e código-fonte);  Programas de demonstração;  Bibliotecas adicionais;  Documentação (obtida separadamente). 51

06/09/2007 Java Runtime Environment Necessária para rodar programas Java, pois além de compilada, Java também é interpretada; É a única parte da plataforma Java que os clientes necessitam instalar; Em alguns sistemas operacionais (ex. MacOS X) já vem instalada. Implementação da Sun: ~ 15 MB. 52

06/09/2007 Ferramentas Disponíveis Compilador (javac); Interpretador (java); Gerador de documentação (javadoc); Depurador (jdb); Gerador de pacotes (jar); Outros:  Visualisador de applets (appletviewer);  Criptografia (keytool, jarsigner, etc.);  Etc. 53

06/09/2007 Plataforma suportadas A Sun dá suporte às seguintes plataformas:  Windows i586 / AMD64;  Linux i586 / AMD64;  Solaris SPARC / x86 / x64. A Apple desenvolveu versão para MacOS. Outras:  HP UX, FreeBSD, OS/2, AIX, AS/400, OS/390, IRIX, Alpha, SCO, NetWare, etc.;  Nem todas são atuais ou completas. 54

06/09/2007 Write Once, Run Anywhere Java é compilada e interpretada:  1.Códigos das classes são compilados para uma linguagem intermediária chamada Bytecode;  2.O Bytecode é interpretado por uma “máquina virtual”: a JVM;  3.A JVM envia comandos específicos da plataforma para o sistema operacional. 55

06/09/2007 Write Once, Run Anywhere 56

06/09/2007 Principais APIs 57

06/09/2007 Principais APIs AWT/Swing: interfaces gráficas; Java2D: desenho; JDBC: acesso a bancos de dados; JNDI: acesso a servidores de nomes; RMI: invocação remota de métodos; Beans: padrão JavaBeans; i18n: suporte a internacionalização; I/O: entrada e saída (arquivos); JNI: integração com linguagens nativas; Math: cálculos matemáticos; 58

06/09/2007 Principais APIs Networking: transmissão pela rede; Security: segurança; Serialization: persistência por serialização; XML: processamento de XML e afins; Lang & Util: núcleo da linguagem, utilitários (coleções, datas, compactação, etc.); Concurrency: programação concorrente (threads); Logging: funções de relatório (log); Reflection: reflexão e instrospecção. 59

06/09/2007 Java Platform, Enterprise Edition Permite o desenvolvimento de aplicações corporativas:  Multi-camada, distribuídas, centradas em servidores, altamente robustas, estáveis e escaláveis; Inclui as especificações para desenvolvimento Web: Servlets, JSP, Web Services. 60

06/09/2007 Servlets, JSP e EJBs Servlets e JSPs:  Componentes que respondem à requisições web, usados para construir páginas dinâmicas e Web Services. EJBs:  Componentes gerenciados integrados a outras tecnologias Java EE para prover acesso remoto, persistência e transações transparentes, processamento assíncrono, etc. 61

06/09/2007 Outras tecnologias Java EE não é só Servlets e EJB:  RMI/IIOP e Java IDL: conectividade;  JNDI: serviço de nomes;  JAC e JNI: acesso a sistemas legados;  JAAS: segurança;  JTA: transações em bancos de dados;  JMS e JavaMail: envio de mensagens;  E tudo mais que já temos no J2SE... 62

06/09/2007 Servidores Java EE Servidores web:  Apache Tomcat, Caucho Resin, Jetty, etc. Servidores de aplicação:  BEA WebLogic, Borland Enterprise Server, JBoss Application Server, Oracle Application Server, IBM WebSphere, GlassFish, Geronimo, etc.; 63

06/09/2007 Java Platform, Mobile Edition Permite o desenvolvimento de aplicações para dispositivos móveis:  Telefones celulares;  PDAs (Palm, iPaq, etc.);  Dispositivos embarcados (embedded);  Etc. Java Card: aplicações para Smart Cards e outros dispositivos muito limitados. 64

06/09/2007 Configurações Java ME Atualmente são duas:  CLDC: Connected Limited Device Configuration;  CDC: Connected Device Configuration. Cada uma possui uma API diferente, dependendo da capacidade do dispositivo (limitada ou não). 65

06/09/2007 Java em todo lugar

06/09/2007 Java está em todo lugar 67

06/09/2007 Applets 68

06/09/2007 Enterprise 69

06/09/2007 Móveis 70

06/09/2007 Desktop 71

06/09/2007 De ponta a ponta 72

06/09/2007 Como começar

06/09/2007 Preparando o Ambiente Fazer download do JDK E também da documentação   Escolha a versão do seu sistema operacional. 74

06/09/2007 Instalando Windows  Instalador padrão Microsoft, simplificado.  Documentação compactada (zip). Linux  Algumas distros possuem pacote de instalação e/ou repositórios.  Documentação compactada. 75

06/09/2007 Escrevendo Programas Use uma IDE:  Eclipse;  NetBeans;  JetBrains IntelliJ IDEA;  Borland JBuilder;  Etc. Editores mais simples:  JEdit;  JCreator, etc. 76

06/09/2007 Exemplos e Produtividade

06/09/2007 Java e o Mercado

06/09/2007 Empresas 79

06/09/2007 Empregos Oportunidade:  Muitas vagas surgindo;  Poucos capacitados, poucos certificados;  Bons salários. No ES:  Mercado em ótima fase de crescimento e oportunidades; 80

06/09/2007 Certificações A Sun cria provas para certificar profissionais na plataforma Java; O instituto Thomson Prometric aplica a prova em vários lugares do Brasil; No Espírito Santo:  ISH:  MindWorks: Profissional certificado possui reconhecimento no mercado; Infelizmente não tem tanto efeito no salário; 81

06/09/2007 As Certificações 82

06/09/2007 Comunidades

06/09/2007 Java e OpenSource Centenas de projetos no SourceForge: perde apenas para C/C++; Primeiro lugar no FreshMeat; Java.net: membros e mais de projetos; Java-Source.net: projetos divididos em mais de 50 categorias; Mais de 550 grupos de usuários no mundo. 84

06/09/2007 Comunidades Virtuais PortalJava ( GUJ ( JavaFree ( E muitos outros (google.com.br); 85

06/09/2007 Como participar O que podem fazer por você:  Notícias;  Artigos e tutoriais;  Fóruns;  Downloads e links;  Eventos;  Etc. O que você pode fazer?  Cadastrar-se;  Participar respondendo dúvidas;  Escrever artigos;  Enviar notícias;  Etc. 86

06/09/2007 Grupos de Usuário 87

06/09/2007 ESJUG! 88

06/09/2007 Atividades Cursos; Grupos de estudo; Reuniões mensais; Palestras; Eventos; Etc. Participe! 89

06/09/2007 Revistas 90

06/09/2007 Futuro e Tendências

06/09/2007 Tendências JavaME – Aplicações para dispositivos móveis.  Mercado em ampla expansão.  Ajuda das empresas de celulares. 92

06/09/2007 Tendências Para Desenvolvedores e Arquitetos:  Ligar-se em plugins e ferramentas: Para aumentar a produtividade; Aumentar integração da equipe; Novos paradigamas e tecnologias;  Frameworks: Spring, Struts2, Vraptor, AspectJ, etc;  Design Patterns Conhecer e saber aplicar: GoF e JavaEE Patterns. 93

06/09/2007 Tendências AOP – Programação Orientada a Aspectos  Criada em 1997 pela Xerox;  Tem sido a grande vedete em Java atualmente;  Base de muitos frameworks importantes e conhecidos; SOA – Arquitetura Orientada a Serviços  Montagem de aplicações com serviços compartilhados;  Não é tecnologia, framework ou software; 94

06/09/2007 Tendências Web 2.0 e AJAX  Conceito para desenvolvimento de páginas e sistemas web;  Usuário em foco;  Conteúdo criado por usuários para usuário;  Necessidade de interfaces ricas e de alta usabilidade; 95

06/09/2007 Tendências Profissonal  Cuidado com a “novidade do mês”  Mais que saber a linguagem, é preciso saber a arquitetura e como elas se ligam. 96

06/09/2007 E agora?

06/09/2007 Gostei, quero me aprofundar Você está com sorte:  Muitos livros (alguns até gratuitos);  Muitos tutoriais (o da Sun é muito bom);  Cursos;  Portais;  Grupos de usuários;  Eventos; 98

06/09/2007 Gostei, quero me aprofundar Cuidado com o framework ou com a API da moda; Defina um foco; Procure participar de projetos liderados por outras pessoas.  Ganhe experiência;  Conheça novas técnicas; 99

06/09/2007 Referências Empresas que promovem cursos:   Comunidades virtuais:   Grupos de usuários:   Materiais ( ESJUG ):  Tutorial Java Básico (Vitor Souza e Paulo Jeveaux)‏ 100

06/09/2007 That’s all folks Muito Obrigado a todos; Contatos:  Roberto Vezzoni  101

06/09/2007 Tutorial Java Básico por Roberto Vezzoni