As principais habilidades que qualquer desenvolvedor web precisa são as seguintes técnicas.
A tecnologia para desenvolvimento de aplicações Web tornou-se mais madura e complexa. Agora, construir uma aplicação web requer mais do que simples técnicas de HTML. Acesso a bancos de dados, linguagens de script e gerenciamento são habilidades que um programador Web precisa ter. Vamos dar uma olhada nas habilidades necessárias para se tornar um desenvolvedor web popular no mercado.
Desde que o CERN (Instituto Europeu de Física de Partículas), um centro de pesquisa em física de altas energias perto de Genebra, lançou a Web em 1991, a tecnologia da Web evoluiu do conteúdo estático e da Common Gateway Interface (CGI) para a tecnologia de servlet e JavaServer Pages. Porém, nesta sociedade mais competitiva, um programador web precisa de mais conhecimento. Por exemplo, se na entrevista você mencionar que está familiarizado com XML e tem alguma experiência com JNDI (duas tecnologias que à primeira vista podem não parecer muito relacionadas à programação Web), então você deixará uma impressão mais profunda em seu futuro chefe. impressão. Supondo que você já conheça a linguagem de programação Java e a programação orientada a objetos, aqui estão dois conjuntos de tecnologias que um desenvolvedor web precisa em seu trabalho diário. O primeiro grupo inclui técnicas que todo programador web deve possuir. O segundo grupo contém as técnicas que você deve dominar para se tornar um programador avançado.
Habilidades básicas Se você deseja se considerar um desenvolvedor web, aqui estão as habilidades que você deve ter.
HTML (linguagem de marcação de hipertexto)
HTML é a linguagem para quase tudo exibido no seu navegador. Não admira que o HTML seja como o instinto de sobrevivência de um programador web. Se você ainda precisa encontrar <tr> ou <b> em seu HTML, então você realmente precisa melhorar suas habilidades em HTML. A versão atual do HTML é 4.01, você pode aprender mais sobre ela em http://www.w3.org/TR/1999/REC-html401-19991224/ .
Servlets e JSPs
A tecnologia Java servlet é a principal tecnologia para o desenvolvimento de aplicativos Java Web. Foi desenvolvido pela Sun Microsystems em 1996 e a versão atual é 2.3, mas as pessoas estão se preparando para a versão 2.4.
JSP é uma extensão da tecnologia servlet e a versão atual é 1.2 (a versão 2.0 será finalizada em breve). Algumas pessoas pensam que JSP é um substituto para servlets, mas não é o caso. Servlets e JSP são usados juntos para aplicações web complexas.
Um bom começo para programação Web em Java é aprender a tecnologia servlet. Mesmo que você planeje usar apenas páginas JSP em seu aplicativo Web, ainda precisará aprender a tecnologia de servlet. Em aplicações Web mais complexas, as páginas JSP são usadas apenas para exibição, enquanto JavaBeans e bibliotecas de tags personalizadas são usadas para incorporar lógica de negócios. Ou seja: você também deve ter proficiência em JavaBeans e bibliotecas de tags customizadas.
JavaScript
JavaScript é uma linguagem de script executada em todos os principais navegadores. Você usa JavaScript para programação do lado do cliente. A tarefa mais importante na programação do lado do cliente é validar a entrada do usuário. O benefício de usar a validação de entrada do lado do cliente é reduzir a carga de trabalho do servidor e melhorar o tempo de resposta. Além disso, o JavaScript pode ser usado para redirecionamentos, manipulação de cookies, controle de miniaplicativos, criação de árvores de navegação, abertura de uma nova instância de um navegador e muito mais.
SQL (linguagem de consulta estruturada) e JDBC (conectividade de banco de dados Java)
Hoje, a maioria das aplicações web inclui acesso a dados em bancos de dados relacionais. Como programador web, você precisa saber como armazenar, recuperar e manipular dados em um banco de dados. Às vezes, você também precisa projetar o banco de dados e construir tabelas e outras estruturas no banco de dados. SQL é a linguagem usada para manipular dados no banco de dados. Normalmente, você precisa escrever instruções SQL (geralmente de forma dinâmica), passá-las para o servidor de banco de dados e recuperar os dados (se houver).
Usando a linguagem Java, você precisa usar JDBC para ajudar o aplicativo da web a se comunicar com o servidor de banco de dados. JDBC tem duas partes: API JDBC Core (Interface de Programação de Aplicativo) e API de Pacote Opcional JDBC. O primeiro grupo é usado para realizar operações básicas de dados, como criar uma conexão ou ler, atualizar e excluir registros em uma tabela. O segundo grupo fornece recursos de conexão de banco de dados mais avançados, como pool de conexões, transações e RowSet. A versão atual do JDBC é 3.0 e a API está incluída no J2SE v.
Gerenciamento de contêiner da Web e implantação de aplicativos Seus servlets e páginas JSP são executados em um mecanismo chamado contêiner de servlet/JSP ou contêiner da Web. Você precisa pelo menos saber como implantar seus recursos da web para testes e também para execuções de produção. Por exemplo, se você usa o Tomcat, uma coisa que você precisa saber é como mapear a aplicação no arquivo de configuração (server.xml) para que o Tomcat saiba como chamar sua página JSP. Além disso, você precisa saber onde salvar suas bibliotecas e como criar descritores de implantação de aplicativos.
XML (linguagem de marcação extensível)
XML é uma estrela em ascensão de sucesso no campo da informática. Desenvolvido pelo World Wide Web Consortium em 1996, o XML é hoje um padrão amplamente reconhecido para troca de dados e estruturas de dados extensíveis. XML desempenha um papel importante no desenvolvimento Java Web. Por exemplo, o descritor de implantação de cada aplicativo está no formato XML. Além disso, se você estiver desenvolvendo serviços Web, usará SOAP (Simple Object Access Protocol), que é baseado principalmente em HTTP e XML.
Além disso, em aplicações Web, o XML também pode ser usado para armazenar dados hierárquicos.
A arquitetura do Modelo 2 é a tecnologia mais avançada em sua categoria. Essa estrutura é recomendada para construir aplicativos Web Java bastante complexos. A estrutura do Modelo 2 é baseada no paradigma de design Model-View-Controller.
Técnicas Avançadas As técnicas a seguir irão diferenciá-lo dos iniciantes.
JSTL (JSP Standard Tag Libraries), projeto Jakarta Taglibs e outras bibliotecas Para acelerar o desenvolvimento de aplicativos, você deve reutilizar código com frequência. Simplificando, a reutilização de código significa que, se alguém já escreveu código para executar determinadas funções, é melhor usar esse código em vez de escrevê-lo você mesmo. Portanto, JSP permite usar tags personalizadas. Existem diversas bibliotecas que você pode usar, sendo as mais populares as do projeto Jakarta Taglibs do Apache. Este pacote pode ser baixado em http://jakarta.apache.org/taglibs/index.html , e você pode usar qualquer coisa que encontrar pronto neste pacote antes de começar a criar novas classes.
JSTL tornou-se recentemente um padrão. Outras bibliotecas de tags estão disponíveis gratuitamente ou comercialmente.
Projeto Apache Struts
Struts é um projeto de recurso público patrocinado pelo Apache que fornece uma estrutura para a construção de aplicativos Web Java Modelo 2. Struts fornece seu próprio componente Controller para a estrutura MVC, usa EJB, JDBC e JNDI para Model e usa JSP e outras tecnologias para View. Você pode encontrar informações mais detalhadas sobre este projeto em seu site: http://jakarta.apache.org/struts/index.html .
XHTML (linguagem de marcação de hipertexto extensível)
XHTML é uma tecnologia que busca combinar HTML e XML. Você pode pensar no XHTML como a próxima geração do HTML. Sua versão atual é 1.0 (a segunda versão foi lançada em 1º de agosto de 2002). XHTML não é tão popular quanto HTML, mas desempenhará um papel mais importante no futuro. De acordo com a especialista em web design Molly Holzschlag, o principal motivo que leva as empresas a mudar para XHTML são as leis dos EUA sobre acesso público (acessibilidade). Para mais informações sobre XHTML, veja a entrevista de Holzschlag.
DHTML (HTML dinâmico)
DHTML permite que as pessoas interajam mais em seu site. Por exemplo, usando DHTML, você pode criar e exibir facilmente um submenu quando o usuário move o mouse sobre um link. O maior desafio do uso de DHTML é a criação de páginas entre navegadores. Na verdade, em teoria, o design da página deveria ser feito por artistas, onde o HTML dinâmico é gerado por meio de uma ferramenta. Porém, um programador web geralmente é o responsável por integrar todas as peças, e se o código gerado na página estiver quebrado, você precisará entender de DHTML para consertar.
Programação de miniaplicativos
Os miniaplicativos costumavam ser importantes no fornecimento de interatividade, especialmente antes do advento do DHTML. Agora, o papel dos miniaplicativos foi reduzido e mais programadores não usam mais miniaplicativos. A decisão da Microsoft de não fornecer suporte padrão para miniaplicativos em seu novo navegador reduz significativamente o papel dos miniaplicativos em aplicações Web. No entanto, os miniaplicativos não estão mortos. Para certas tarefas, como exibir manchetes de notícias, os miniaplicativos ainda são insubstituíveis e não criam a dor de cabeça da compatibilidade entre navegadores.
Protocolo HTTP
Os programadores Java Web geralmente usam protocolos superiores ao HTTP, como o uso de servlets e APIs JSP. Essas APIs escondem a complexidade do protocolo HTTP. Portanto, você ainda pode criar aplicativos importantes sem saber muito sobre o protocolo HTTP. Somente se precisar lidar com dados brutos, como upload ou transmissão de arquivos como anexos, você precisará de mais conhecimento sobre o protocolo.
EJB (JavaBeans Corporativos)
EJB faz parte do J2EE e é importante quando escalabilidade e potência são os principais requisitos de sua aplicação web. Existem três tipos de EJBs na especificação atual (EJB 2.0): EJBs de sessão, EJBs de entidade e EJBs acionados por mensagens. Uma nova especificação, versão 2.1, está em desenvolvimento.
JNDI (interface de nomenclatura e diretório Java)
JNDI é importante quando você está desenvolvendo beans corporativos porque o acesso a um EJB é feito através do serviço de nomenclatura JNDI. Use um serviço de nomenclatura para localizar um objeto associado a um nome específico. Em um contexto EJB, um serviço de nomenclatura encontra um bean corporativo, dado o nome do bean. Portanto, compreender o JNDI é crucial no desenvolvimento de uma aplicação EJB. Além disso, o JDBC pode usar JNDI para acessar um banco de dados relacional.
Outras ferramentas Saber onde encontrar ferramentas de suporte específicas muitas vezes pode ajudar sua carreira a crescer. Por exemplo, se você for designado para realizar uma tarefa de benchmarking, ficará feliz em saber que pode baixar o Jmeter do Jakarta Project do Apache. Além disso, se você precisar enviar os resultados de saída em formato PDF, é recomendável usar a biblioteca Java-PDF, que pode ser baixada gratuitamente em http://www.lowagie.com/iText/ . A tecnologia da Internet é ampla e está se desenvolvendo rapidamente. Isso significa que, como programador Web, você deve sempre prestar atenção às novas tecnologias que estão surgindo na indústria e aos principais eventos que estão acontecendo. Não há maior recurso nesse sentido do que a própria Internet.
Sobre o autor:
Java para a Web
com Servlet, JSP e EJB
Budi Kurniawan é consultor de TI especializado em Internet e programação orientada a objetos e ensina tecnologias Java e Microsoft. Ele é o autor do best-seller Java para a Web com Servlets, JSP e EJB: um guia do desenvolvedor para soluções escaláveis (novos pilotos) e desenvolveu o Java Upload Bean mais popular, que você pode baixar em BrainySoftware com got. e muitas empresas importantes licenciaram-no e utilizaram-no em seus projetos. Budi pode ser contatado em [email protected] .