[quote=luizinfo]Após estudar um pouco sobre arquitetura, realmente é relativo ao projeto que está trabalhando, tem que executar vários testes e ir validando com a equipe.
Mas finalizei com a seguinte decisão:
- Java
- EJB 3.1
- JPA (Hibernate)
- Jboss
- Grails
- Maven
Web Responsive para mobilidades com tablets até 7", para celular decidimos criar mais uma camada visual.
Entre usar Grails e JSF, o Grails trabalhando com as paginas GSP deu maior controle das paginas sem depender dos faces da vida, como primefaces, icefaces etc etc etc.
Ferramentas Ágeis
Git
Jekins
Sonar
Archiva
Jboss é como diz um colega meu: é igual a matar um mosquito com metralhadora. Vc vai conseguir matar o mosquito, mas tem que conhecer bem a metralhadora para não errar o alvo.[/quote]
Você foi rápido em dicidir, mas eu acho que está começado pela ponta errada do cajado.
Arquitetura é diferente de “escolher tecnologias”. Vc está escolhendo tecnologias, mas não está desenhando uma arquitetura.
Primeira coisa Plataforma Fisica: Sistemas Operacionais. quais e quantos OS vc precisa dar suporte ?
Mobile é o quê ? IOS , android, todos ? A sua aplicação “mobile” é na realidade uma casca para um browser ? Ou melhor o que vc quer é um site que também seja usável em mobile ?
Pelas suas escolhas acho que é mais esta ultima. Ora, isso é simples : crie dois sites o geral em www.seudominio e o mobile em mobile.seudominio. O geral deve ter estrutrua de reconhecer que está sendo acessado via mobile e redirecionar para o outro dominio.
Segunda coisa : Plataforma Virtual : Java ou .NET ou outro ?
Pelos vistos decidiu por java.
Terceira coisa : Plataforma de Aplicação: Java é um emaranhado de api. Como isso vira uma aplicação.
Primeiro ha que entender que vc tem dois stacks , duas aplicações. A mobile a normal. O que muda entre elas é a o Cliente e Apresentação. O resto das camadas é o mesmo.
Vc escolheu o grails para a UI , mas falta a interatividade . Não tem um JQuery faltando ai ?
Para o back end EJB 3.1 .Ok. Mas Hibernate para JPA ? Ou vc usa o EclipseLink ou vc não está usando a melhor ferramenta. O link é mais rápido que o hibernate para JPA 2 porque é a implementação de referencia.
JPA com EclipseLink se vc usar JPA puro. hibernate apenas se for usar features não padrão do JPA.
Servidor de Aplicação. JBoss é muito bom, mas se vc não gosta tem o Glassfish que é a implementação de referencia e é muito evoluido pela Oracle. Tem outros pagos, mas os free são mais evoluidos que os pagos neste momento. A Oracle até vai fundir o seu pago com o Glassfish ( não realidade é o glassfish , mas com o outro nome e outra licença). Usar apenas um webcontainer como o tomcat é suicídio.
A única coisa qe ficou esquisito é esse grails ai no meio ( usando groovy, portanto). O grail é uma ferramenta, não sei se será prático evoluir isso depois … acho que depende de outros fatores, mas não vejo como isso pode ser mais simples que um jsp da vida com uma boa tag lib , ou até mesmo usando freemarker, por exemplo, que é otimo para isolar a UI do controle.