Profissional Alexandre Faria Desenvolvedor e Instrutor JAVA e Web da Vertical Training. Trabalhando em projetos envolvendo tecnologias Java / J2 EE. Experiência em análise, arquitetura e desenvolvimento de sistemas utilizando conceitos de Web 2.0 com integração em banco de dados dentro de grandes empresas. Agenda • • • • • • • • • • Conceitos da Web Os dias de Hoje O desenvolvimento Web, suas Linguagens e Padrões Comportamento Java EE para Web Instalação Aplicação Web Java Server Pages – JSP Demonstração O Mercado de Trabalho Introdução • A arquitetura Web é muito dinâmica para mudanças, pois não temos um aplicativo client nas máquinas dos usuários; • A arquitetura Web é acessível, pois pode ser disponibilizada na Internet; • Arquiteturas Web podem atender a grandes demandas; • Podemos acessar um aplicativo Web com diferentes computadores e dispositivos: celular, PDA’s wireless, PC’s, Apple, Unix, etc.... Conceitos da Web • Surgiu a partir de pesquisas militares nos períodos áureos da Guerra Fria • Era muito vulnerável e por isso era preciso se criar uma rede melhor • Essa rede foi chamada de ARPANET • Na decada de 70 a guerra fria diminui e o governo americano abriu a rede para pesquisas universitarias onde foi se aprimorando. • Comunicação client-server ocorre através do protocolo HTTP (HyperText Transfer Protocol); • HTTP é um protocolo de alto nível baseado no TCP/IP; • Tipicamente trafegamos arquivos / conteúdo HTML (Hyper Text Markup Language); Os dias de Hoje • Cada vez mais pessoas com acesso através da inclusão digital. • Empresas não funcionam sem a internet. • Comunicação cada vez mais interativa. • Linguagens mais robustas e interativas. O desenvolvimento Web • Desenvolvimento web é o termo utilizado para descrever o desenvolvimento de sites, sistemas ou qualquer aplicativo que tenha como base um navegador web • Esta associado a uma linguagem de programação ou marcação. • Linguagens de Marcação: HTML, (X)HTML • Linguagens de Programação: JAVA, ASP, PHP O desenvolvimento Web • Linguagem Programação Script: JavaScript • Folha de estilo para complementação as linguagens de marcação: CSS ( Cascade Style Sheet ). • Padrão de Desenvolvimento Web - Tableless • Uso de Padrão com bibliotecas JAVA: JSTL O desenvolvimento Web Linguagens de Marcação: HTML, (X)HTML • HTML - HyperText Markup Language, que significa Linguagem de Marcação de Hipertexto, é uma linguagem de marcação utilizada para produzir páginas na Web. Documentos HTML podem ser interpretados por navegadores. O desenvolvimento Web Linguagens de Marcação: HTML, (X)HTML • O XHTML, ou eXtensible Hypertext Markup Language, é uma reformulação da linguagem de marcação HTML baseada em XML. Combina as tags de marcação HTML com regras da XML; O desenvolvimento Web Diferença entre: HTML, (X)HTML • Todas as tags devem ser escritas em letras minúsculas; • Os elementos (tags) devem estar convenientemente aninhados; • Os documentos devem ser bem formados; • O uso de tags de fechamento é obrigatório; • Elementos vazios devem ser fechados; • Diferenças para os atributos. • Todas as tags devem ser escritas em letras minúsculas Errado: <DIV><P>Aqui um texto</P></DIV> Certo: <div><p>Aqui um texto</p></div> O desenvolvimento Web Folha de Estilo CSS ( Cascade Style Sheet ) • É uma linguagem de estilo utilizada para definir a apresentação de documentos escritos em uma linguagem de marcação, como HTML ou XHTML. Seu principal benefício é prover a separação entre o formato e o conteúdo de um documento. O desenvolvimento Web Linguagens de Programação Script: JavaScript JavaScript é uma linguagem de programação criada para atender, principalmente, as seguintes necessidades: • Validação de formulários no lado cliente (programa navegador); • Interação com a página. • Assim, foi feita como uma linguagem de script. JavaScript tem sintaxe semelhante à do Java, mas é totalmente diferente no conceito e no uso. • É interpretada, ao invés de compilada. • Interage com Formularios, CSS, Programação. O desenvolvimento Web Linguagens de Programação Script: JavaScript O desenvolvimento Web XML - eXtensible Markup Language • É um documento texto, assim como HTML, demarcado por tags; • É a evolução do documento texto, pois inclui não só o dado texto, mas também o que significa aquele dado; • Suporte a múltiplos idiomas; • Pode ser validado por um documento de regras de formatação (DTD Data Type Definition); • Tipicamente utilizado para troca de documentos entre instituições, documentos de configuração de aplicativos, entre outros. O desenvolvimento Web Comportamento Para aplicativos, tipicamente precisamos de conteúdo HTML com conteúdo dinâmico fornecido por um banco de dados; Para servir arquivos por HTTP, o seguinte processo é executado: servidor Arquivo HTML usuário JavaEE para Web • É a plataforma Java para desenvolvimento Web; • Tomcat, JBoss, Weblogic, JRun são servidores Web compatíveis com JavaEE; • É ao ISS da Microsoft; • A plataforma JavaEE para Web é consagrada e de baixo risco; • Desenvolvemos aplicativos Web com Java e JavaEE Através de: - Classes Java comunicam com banco de dados; - Classes Java que representam as entidades em objetos; - Classes Java que processam dados das entidades; - Arquivos Web: HTML / CSS / JavaScript - Páginas JSP’s - Arquivo de configuração XML Instalação JDK A seguir veremos os passos necessários para a instalação do JDK no Windows porém, antes de iniciarmos, vamos dar uma olhada nas variáveis de ambiente que devem ser atualizadas e criadas quando instalamos o JDK: JAVA_HOME: Indica o diretório onde foi instalado o JDK, muito utilizado por frameworks e por outros programas para localizar o JDK; PATH: Identifica o local onde encontram-se as ferramentas De desenvolvimento (compilador, interpretador, gerador de documentação e etc.), devemos adicionar o diretório JAVA_HOME\bin; CLASSPATH: Identifica diretório onde o ClassLoader pode encontrar classes que são utilizadas pela sua aplicação. Instalação Faça o download do JDK no site da SUN e execute o instalador http://java.sun.com/javase/downloads/index.jsp Instalação A seguir clique em Next> até que a instalação seja iniciada. Instalação Instalação Neste momento inicia-se a instalação do JRE, continue clicando em Next>. Instalação Nesta tela selecione todos os navegadores disponíves. Instalação Clique em Finish para terminar o processo. Instalação Configuração Após a instalação do Java nós devemos iniciar a configuração das variáveis de ambiente. 1. Clique com o botão direito em cima do ícone “Meu Computador”; 2. Vá em “Propriedades”; 3. Selecione a aba “Avançado”; 4. Clique no botão “Variáveis de ambiente”; 5. Clique no botão “Nova” em “Variáveis do sistema”; 5.1. Nome da variável: JAVA_HOME 5.2. Valor da variável: Coloque aqui o endereço de instalação neste caso = C:\Arquivos de programas\Java\jdk1.5.0_05 5.3. Clique em OK 6. Clique novamente no botão “Nova” em “Variáveis do sistema”; 6.1. Nome da variável: CLASSPATH 6.2. Valor da variável: .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME %\lib\dt.jar;%JAVA_HOME%\lib\htmlconverter.jar;%JAVA_HOME%\ jre\lib;%JAVA_HOME%\jre\lib\rt.jar 6.3. Clique em OK 7. Selecione a váriavel PATH em “Variáveis do sistema”; 7.1. Adicione o seguinte endereço ao campo Valor da variável: 7.2.%JAVA_HOME%\bin Instalação Testando o Compilador No prompt do MS-DOS vamos testar o interpretador, digite java -version deverá aparecer algo parecido com isto: Instalação JDK - Diretórios Instalação Web Service TomCat Download do Tomcat pode ser feito através da URL http://tomcat.apache.org/ • Recomendamos o uso da versão 5.x, evitar beta; • Não esquecer do pré-requisito de instalar o JDK Standard Edition... Instalação Web Service TomCat Instalação Web Service TomCat Instalação Web Service TomCat • Para iniciar o Tomcat utilize os serviços do Windows; • Por padrão o Tomcat utiliza a porta 8080, portanto para testarmos se está funcionando, acesse a URL: http://localhost:8080 Aplicação Web Aplicação Web Para criar um novo aplicativo, criar a seguinte estrutura de diretórios: Agora podemos acessar nosso aplicativo através da URL: http://localhost:8080/MeuAplicativoWeb Java Server Pages • É uma tecnologia Java para geração de conteúdo Web dinâmico (estático + banco de dados, por exemplo); • Permite mesclar código HTML com código Java: • Robusto, flexível e componentizável; • Permite a criação de aplicativos profissionais, utilizando técnicas avançadas de modelagem como M.V.C.; DEMONSTRAÇÃO Projeto Projeto Projeto Projeto Projeto Projeto MERCADO DE TRABALHO • Alexandre Faria [email protected] (11) 4457 - 4417