Pessoal, gostaria de discutir nesse tópico algumas decisões de
arquitetura e tecnologia sobre o futuro do ExamCity.
=== CAMADA DE APRESENTAÇÃO ===
ICEFaces + Facelets
->
http://component-showcase.icefaces.org/component-showcase/showcase.iface
Já tenho uma enorme experiência com ele. Ele é muito poderoso e já tem
um monte de componentes. Entretanto, tive muitos problemas com a
quantidade de bugs ainda em aberto. Estão sendo tratados mas tem
demorado demais. A minha impressão que pelo simples fato de se usar
JSF uma enorme complexidade seria adicionada. Com esse certamente
conseguiríamos fazer uma aplicação muito boa. Possui licença Mozilla.
jQuery + SpringMVC:
->
http://i18n.2kminterativa.com.br/jquery/jquery-getting-started-pt_br.html
->
http://plugins.jquery.com/ [a lista é insana!!!]
Não trabalhei pessoalmente com nenhum deles. Sei que o Neto já usou
bastante o SpringMVC. Andei investigando o jQuery e fiquei
absolutamente impressionado com o que vi (falo sério). Me lembrou
muito o ExtJS. Possui licença MIT, que é muito tolerante.
ExtJS + SpringMVC:
->
http://extjs.com/deploy/dev/examples/samples.html
Na minha opinião o ExtJS é a melhor biblioteca JavaScript atualmente,
mas teríamos que mudar a licença do projeto para GPL, o que no momento
me deixa desconfortável. De repente GPL não seria assim tão ruim...
=== BANCO DE DADOS ===
Eu já adicionei suporte ao PostgreSQL (o melhor, IMHO) e o neto vai
adicionar ao HSQL (excelente pra testes automáticos). Acho que devemos
ainda suporta o MySQL, que é o mais usado (melhor pra "vender").
=== CAMADAS ===
DOMAIN: Objetos de domínio (entity objects, value objects,
repositories, aggregates, factories, services), JPA, Spring Container
APPLICATION: application services (sem regras de negócio, apenas
adaptação para UI), Spring Container
UI: <?>, Spring Container
---------------
Essas foram apenas algumas idéias... o que acham?
Comentários?
Podem mandar bala!