terça-feira, 27 de março de 2012

Plataforma JavaEE

O que é JavaEE?
JavaEE ou Java Enterprise Edition é uma plataforma para desenvolvimento Web na linguagem de programação Java. Essa plataforma se difere da plataforma JavaSE pela questão da atribuição de APIs para desenvolvimento Web, e características voltadas para o trabalho na internet pelo lado do servidor. Essa plataforma é também considerado como um padrão de desenvolvimento por necessitar algumas especificações para as regras para ser possível a criação do aplicativo nessa plataforma Java. Explicando de uma forma mais simples, seria Java para Web.



Diferenças entre JavaEE e JavaSE
A tecnologia Java é tanto uma linguagem de programação como uma plataforma. A linguagem de programação Java é uma linguagem de alto nível orientada a objeto que tem uma sintaxe particular e estilo. A plataforma Java é um ambiente particular em que as aplicações da linguagem de programação Java são executados.
Existem várias plataformas Java. Muitos desenvolvedores, mesmo desenvolvedores experientes na linguagem Java, não entendem como as diferentes plataformas se relacionam entre si, a plataforma JavaSE é focado no desenvolvimento para Desktop e a JavaEE como vimos é focada para a Web.
JavaEE estende o JavaSE  oferecendo recursos para o desenvolvimento de aplicações que rodam sobre um servidor.

API JavaEE

  • JDBC (Java Database Connectivity), utilizado no acesso a bancos de dados através do driver;
  • Servlets, são utilizados para o desenvolvimento de aplicações Web com conteúdo dinâmico. Ele contém uma API que abstrai e disponibiliza os recursos do servidor Web de maneira simplificada para o programador, as Servlets fazem o meio-campo entre a classe Java e a tela JSP.
  • JSP (Java Server Pages), uma especialização do servlet que permite que conteúdo dinâmico seja facilmente desenvolvido.
  • JTA (Java Transaction API), é uma API que padroniza o tratamento de transações dentro de uma aplicação Java.
  • EJBs (Enterprise Java Beans), utilizados no desenvolvimento de componentes de software. Eles permitem que o programador se concentre nas necessidades do negócio do cliente, enquanto questões de infra-estrutura, segurança, disponibilidade e escalabilidade são responsabilidade do servidor de aplicações.
  • JCA (Java Connector Architecture), é uma API que padroniza a ligação a aplicações legadas.
  • JPA (Java Persistence API), é uma API que padroniza o acesso a banco de dados através de mapeamento Objeto/Relacional dos Enterprise Java Beans.
Arquitetura de aplicações Web
Uma arquitetura muito comum em aplicações Web é o Modelo Arquitetural 3 Camadas. Nesse caso, temos uma Camada de Persistência (Servidor de Banco de Dados), onde ficará os bancos de dados da aplicação. Temos também a Camada de Lógica de Negócio (Servidor de Aplicação), onde rodará a aplicação Web (seja ela Java, PHP, ASP e etc) e uma camada de apresentação, que é representada pela máquina cliente que acessa a aplicação.
Essa é a forma básica de como funciona uma aplicação Web, começando pela camada de persistência, passando pela camada de lógica do negócio e por fim chegando a camada de visualização do aplicativo.
JavaEE funciona na camada de lógica do negócio, controlando todo aplicativo, desde inserindo novos dados dentro do banco de dados até colocando dinamismo dentro da camada de visualização, JavaEE faz esse meio termo e faz essa "magica" de funcionar todo o aplicativo a partir dele.

JavaEE Poderoso
JavaEE é uma plataforma extremamente poderosa para a criação de aplicativos pra web, podemos criar qualquer tipo de aplicativo, desde e-commerces até sites .gov. Essa plataforma junta a poderosa linguagem de programação Java com suas APIs e Frameworks pra dar grande produtividade em qualquer tipo de projeto, porém, é necessário muito estudo e dedicação pra trabalhar com essa tecnologia, ela não é tão simples, pelo contrario, ela é muito abrangente e composta, mas se conhecida a fundo pode te proporcionar uma grande produtividade qualidade no seu projeto.

Acesse o nosso site YaW Tecnologia, para mais informações sobre assuntos na área de desenvolvimento e veja os cursos disponíveis.