O que é um Servidor de Aplicação ?

Posted Setembro 2, 2008 by Fernando Franzini
Categories: JEE

É importante consideramos o significado do termo “Servidor de Aplicação” para termos a certeza que sempre fazemos referência ao mesmo significado e que……frequentemente não é isso que tem acontecido . Então….o que tornaria um produto um “Servidor de Aplicação” ? quais seriam os atributos necessários que para realmente tal produto se encaixe nesta especificação ? Veja aqui um ótimo artigo desmistificando o assunto.

Vou aproveitar o post e colocar os meus mais novos questionamentos:

As implementações dos Web Containers serão agora considerados “Servidores de Aplicações” na versão do JEE 6, sendo que deveram disponibilizar os serviços de EJB 3.1 Little ?

O framework Spring vai perder muito espaço ? Sendo que umas das suas maiores justificativas de utilização que é a implementação de serviços fornecidos pelos EJB Containers que na versão do JEE 6 serão parcialmente disponibilizados pelos Web Containers ?

Sua opinião é bem vinda !
Que venha o JEE 6 !

Sun Tech Days 2008 - São Paulo

Posted Agosto 26, 2008 by Fernando Franzini
Categories: Artigos

Em setembro, começa um novo tour de um dos maiores eventos de desenvolvedores do mundo: o Sun Tech Days, que vai atingir 13 cidades no mundo todo!

A primeira parada será no Brasil, na cidade de São Paulo.

Se você desenvolve em Java, Scripting, MySQL, OpenSolaris, NetBeans ou RIA’s, a próxima geração de aplicações, esse evento é para você!

No Sun Tech Days Brasil, que já está em sua sexta edição, você vai conhecer de perto os principais experts do mundo, além de aprender, compartilhar informações, interagir, conhecer outros desenvolvedores e, principalmente, participar. Afinal, deixamos para trás a Era da Informação e mergulhamos na Era da Participação, onde todos trazem inovações, trocam conhecimentos e inspiram pensamentos!

Venha fazer parte desse evento, que conta com o apoio dos JUGs locais, das universidades e dos milhares de desenvolvedores!

Veja o link oficial aqui.

Use a Cabeça - Desenvolvimento de Software

Posted Agosto 15, 2008 by Fernando Franzini
Categories: Artigos

Para os fãs da serie Head First como eu, a livraria tempo real esta com a pré-venda aberta do mais novo livro traduzido em português Desenvolvimento de Software. Aproveite para comprar o seu com um ótimo preço. Veja a referência do site da Sun sobre o livro aqui.
Boa leitura a todos.

Referências JSF

Posted Agosto 11, 2008 by Fernando Franzini
Categories: JEE

Seguindo os post sobre materiais de referências, segue o de JavaServer Faces:

1. Core JavaServer Faces - Livro com conteúdo básico e fundamental indicado para aqueles que estão começando na tecnologia. O livro é muito bem estruturado, apresentando cronologicamente fundamentos, conceitos e recursos oferecidos pela tecnologia.

2. Mastering JavaServer Faces - Ótimo livro com conteúdo básico e fundamental e muito focado nas filosofia MVC com os conceitos que suportam a existência da tecnologia. Da mesma forma que o Core JSF, muito bem estruturado, apresentando todas as opções disponíveis na tecnologia e alguns exemplos de aplicações reais e um ótimo exemplo de conversão de aplicativos feitos em Struts 1.x em JSF.

3. JavaServer Faces in Action - Este livro foge um pouco da proposta padronizada pelas series “In Action” que sempre foi conhecido por ter livros de referências de projetos, sendo que na mairia dos casos não é recomendado para iniciantes. Este livro no entando, pode ser usado por aqueles que não possuim nenhum conhecimento do assunto, sendo que o mesmo traz um ótima introdução e overview da tecnologia suficiente para que mais tarde o leitor possa se aprofundar no conteúdo do com facilidade. Atualmente é uma das principais referências do assunto.

Eu não poderia deixar de dizer que independente da referência que se va comprar, é um muito importante lembrar que a tecnologia JSF foi concebida sobre as especificação dos componentes Servlets e JSP, sendo o conhecimento de ambos e suas vertentes indispensável como pré-requisito para qualquer livro de JSF.

Head First - Software Development

Posted Agosto 8, 2008 by Fernando Franzini
Categories: Artigos

Desenvolvimento de software…aquela sensação de criar alguma coisa que talvez possa mudar o mundo completamente…..bem na frente do seu computador. Se vc trabalhou em qualquer projeto de software na faculdade, acredito que tenha feito sozinho. Com isso, estava trabalhando por conta própria, seu projeto, sua implementação, seus testes (se é que vc resolveu fazer) e o mais importante…..vc era responsável pelo seu tempo e prazos.

Mas o dia que vc se formou e começou a trabalhar em uma verdadeira empresa de desenvolvimento de software…as coisas começaram a mudar. Daquele dia em diante, vc teve que começar a trabalhar dentro de uma equipe, implementando coisas que vc não projetou, escrevendo e fazendo manutenção em novas características e correções, e ainda se esforçando ao limite para cumprir prazos que serão cada dia menores e inalcançáveis. De repente, as coisas não pareciam tão fáceis como eram antes e agora vc terá um gerente abelhudo nas suas costas cuidando para verificar se as coisas estão caminhando como deveriam.

Este é conteúdo abordado pelo novíssimo livro da Head First - Software Development. Desenvolvimento de software é um processo complexo e os programadores sempre estão aprendendo a lidar com as coisas que realmente tem funcionado e o vivido amarga experiencia de outras que não funcionam.

Mais um vez, o principal site sobre Java (Sun Microsystem) elogiou e indicou mais este livro da Head Fisrt como referências sobre o assunto. Veja a referência aqui. E para aqueles que se interessarem pelo livro, podem verificarem o site oficial aqui.

Eu estarei comprando o meu mês que vem :D ! T+.

Promoção Livros Use a Cabeça

Posted Agosto 5, 2008 by Fernando Franzini
Categories: Artigos

A livraria Tempo Real esta com uma promoção temporária muito bacana nos livros da HEAD FIRST traduzidos em português como USE A CABEÇA. Aproveitem os descontos para comprar o seu :D !

Vulnerabilidades de Aplicações Web

Posted Julho 31, 2008 by Fernando Franzini
Categories: JEE

Independente da tecnologia utilizada, as aplicações web são atualmente as mais propensas a muitos tipos de diferente ataques que podem tornar o determinado software vulnerável e completamente inseguro. Isso acontece devido o fato dos desenvolvedores não dominarem as tecnologias selecionadas para o desenvolvimento e também por desconhecer uma série de circunstâncias e fatos sobre práticas de segurança em aplicativos web.
Veja neste artigo, onde Roberto Velasco e Gorka Vicente apresenta estes fatos, descrenvendo uma lista de TOP 10 Vulnerabilidades mais freqüentes não tratados ou ignorados pelos desenvolvedores. O artigo é muito interessante por que apresenta como os ataques são feitos, as conseqüências e a soluções que o evita. Após a toda descrição, são apresentadas as possiveis soluções para os fatos utilizando a tecnologia Java.

Boa leitura a todos ;)

Frameworks Web

Posted Julho 21, 2008 by Fernando Franzini
Categories: JEE

As tecnologias Servlets e JSP do JEE acabaram se tornando a base fundamental para suporte e o aparecimento continuo evolutivo de diversos frameworks bases para facilitar o desenvolvimento de aplicações web, sendo que a inevitável evolução positiva de java apontou que,…. fazer aplicativos puramente servlets/jsp é realmente improdutivo e trabalhoso. Desde então, temos visto o aparecimento, crescimento e a consolidação de diversos web frameworks baseados em diferentes filosofias (Web-MVC, RIA, Rad’s, Geradores de código, baseados componentes UI, etc….) todos com o objetivo exclusivo de suprir as lacunas abertas de produtividade e facilidades em geral. De tantos que eu já ouvi falar,……foi então que resolvi criar este post e apresentar as opções disponíveis que consegui encontrar na atualidade para que os projetistas possam fazer suas próprias avaliações, implementar seus testes de arquiteturas e selecionando assim aquele que melhor satisfaz suas necessidades:

TOP Populares:
Struts
Spring MVC
Tapestry
WebWork
Mentawai
JavaServer Faces
VRaptor
Google Web Toolkit

Outros Não populares:
Wicket
JPublish
Induction
WEB4J
Echo
Cocoon
Millstone
OXF
ThinWire
SOFIA
RIFE
Maverick
JAT
Jucas
JCatapult
Barracuda
wingS
Turbine
Macaw
Helma
WebOnSwing
SwingLets
SwingWeb
Click
JSenna
Neo
J2EESpider
jZonic
ActionFramework
Niggle
Expresso
Bento
Scope
JWAA
Jaffa
Jeenius
JWarp
Genie
Cameleon
JFormular
Xoplon
Dinámica

Outros que eu não consegui achar os links:
Canyamo
Folium
Bishop
Shocks
TeaServlet
OpenEmcee
Warfare
Jacquard
Chiba

Como podemos ver, existem diversas opções, e concerteza podem existir outros por ai,….mas fica a minha dica: Avalie com cuidado os TOP populares, uma que eles realmente possuem alguma maturidade e um verdadeiro diferencial. A minha opinião e escolha, vc pode conferir neste post.
Até a próxima ;)

Referências EJB

Posted Julho 14, 2008 by Fernando Franzini
Categories: JEE

Sempre estamos a procura de um bom material relacionado com alguma tecnologia. O pessoal em geral sempre tem me perguntando sobre boas referências (livros, sites e links) de várias tecnologias diferentes relacionado com java. Com isso, resolvi abrir uma série de post’s procurando apresentar e direcionar a galera para boas referências. Segue a primeira de EJB.

1. Head Fist EJB - Este é um livro consagrado pela head first e indiscutivelmente foi uma ótima referência. Atualmente eu acredito que não vale a pena compra-lo, sendo que o mesmo cobre a versão antiga 2.1 e componentes descontinuados com os antigos EntityBeans. Se alguem tiver acesso a ele, aconselho somente a leitura dos primeiros capítulos de introdução e apresentação da arquitetura de execução que seria uma das únicas coisas aproveitáveis que praticamente nunca mudaram da tecnologia. Talvez daqui alguns dias os mesmos autores façam o upgrade do livro para a versão mais atual que sem dúvida nenhuma poderá ser adquirida para estudos. Aconselho este livro somente na hipótese de trabalhar na manutenção de sistemas nas versões anteriores a 3.0.

2. Enterprise JavaBeans 3.0 - Ótimo livro de referência com renomeados autores da tecnologia como Bill Burke (JBoss) apresentando um bom e reduzido overview dos conceitos envolvidos pela tecnologia. Eu descreveria esse livro com curto, rápido e direto para aqueles que desejem aprender de forma bem objetiva. O livro contém alguns capítulos sobre o novo JPA, diversos exemplos, arquiteturas de projetos reais interessantes e um livro interno de exercícios gradual de fixagem. Ele também apresenta uma série de opções proprietárias para determinados casos de extensão do provedor da JBoss. Pelo preço, vale a penas estuda-lo.

3. Mastering Enterprise JavaBeans - Livro free disponibilizado no link citado. Este é um livro fora do comum apresentando o EJB de forma ampla e completa. É um livro realmente extenso pelo fato de apresentar e explicar todos os conceitos motivadores existentes por de traz da tecnologia EJB e seu histórico completo das versões anteriores, antes de entrar concretamente no conteúdo da 3.0 e JPA. Eu diria que este é o livro 100% completo para aqueles que não estão com pressa e que realmente tenham a vontade de entender, aprender e usar a tecnologia.

4. EJB In Action - Este livro como todos os da serie ‘in action’ não tem a proposta da ser muito didático pelo justo fato de ser uma referência de projeto. Esta série sempre apresenta um overview nivelador da tecnologia, mas parte do princípio de que o leitor já possui um conhecimento prévio e relevante do assunto, sendo que o objetivo do mesmo é apresentar casos e opções de usabilidade nas decisões de projetos em cima das mais diversas situações. Eu diria que é um livro com o objetivo de abrir a cabeça do leitor para casos de implementações de situações cotidianas e atípicas, apresentado soluções com padronizações, arquiteturas e design patterns. Não é um livro recomendado para aquele que não tem nenhum conhecimento prévio relacionado com EJB.

5. EJB 3 Professional - É a mais nova referência sobre a tecnologia cobrindo apenas a nova especificação de EntityBeans com JPA e seus relacionados como mapeamentos, EJB-QL, deploy e testes. Este livro não cobre todos os componentes da especificação (Stateless, Statefull e MessageBeans) se atendo somente no novos componentes do JPA. Para aqueles que desejam dar aquele upgrade exclusivo do assunto, podem estar investindo nesse novissímo livro.

O post fica aberto para opiniões de todos que desejem comentar algo sobre os livros ou/e indicar outras referências de complemento. Bons estudos para todos :D

Escalabilidade de Aplicações JEE

Posted Julho 8, 2008 by Fernando Franzini
Categories: JEE

Mais e mais aplicações de missão criticas são atualmente implementadas com JEE fazendo que a maioria dos desenvolvedores passem a realmente se preocupar com assuntos relacionados com a escalabilidade verticais e horizontais das aplicações. Veja nestes artigos parte 1 e parte 2 de Wang Yu a apresentação de casos reais, trazendo algumas formas de “como” escalar aplicações JEE baseado em suas próprias experiências em projetos de laboratórios e ao mesmo tempo, apresentando algumas praticas, raciocínios, algoritmos, frameworks e conclusões em casos de aplicações falhas na escalabilidade. O proposta do artigo é fornecer uma base inicial que norteara as decisões gerais para se construir aplicações com alta escalabilidade. O conteúdo esta bem detalhado, apresentando conceitos gerais e suas praticas que realmente é de grande valia e concerteza vale a pena reservar um tempinho de qualidade para dar aquela estudada.
Java here, java there….java is everywhere !!
T+ :D