Grails: simplicidade e poder.

Depois de comprar o livro (e ler inteiro) "The Definitive Guide to Grails", e depois de implementar dois projetos usando o Grails, cada vez mais fico impressionado com este framework. É muito simples. Tudo fica mais simples. A velocidade de desenvolvimento aumenta MUITO, sem comprometer a qualidade do que está sendo desenvolvido.

Ontem tive que dar manutenção num sistema feito usando SpringMVC, Hibernate, Sitemesh (ou seja, tudo que o grails usa), e foi muito penoso. E olha que o sistema está super bem feito, com as camadas tradicionais de Serviços, DAOs, todas as devidas interfaces, etc... O problema é que eu achava isso bom ( e continuo achando na verdade, caso não se tenha outra opção), mas depois do Grails, tudo fica muito complicado demais.

Para exemplificar a simplicidade, Glen Smith, um desenvolvedor participativo na lista do Grails, enviou um post em seu blog fornecendo um pequeno projeto grails que implementa um mecanismo de busca textual no sitema usando o Lucene. Para quem não conhece, o Lucene é um "Indexing and Search Engine". Ele fornece APIs que permitem implementar uma busca estilo Google no seu site/sistema.

Com esta ajuda do Glen, em apenas 15 minutos eu implementei a busca que eu precisava para um sistema que estou desenvolvendo. Ficou perfeito. Foi extremamente simples de implementar, e ficou extremamente podereoso, pois utiliza o que há de melhor e robusto em search engine em Java.

Glen vai empacotar o que ele fez num Grails Plugin, para facilitar ainda mais seu uso.

Para quem gosta e conhece o Compass (que usa o Lucene por baixo), Maurice Nicholson enviou um outro post com um excelente tutorial de integração Compass + Grails. É uma outra forma de implementar um mecanismo de busca em seu sistema, usando Grails.

Dá vontade de reimplementar todos os sitemas que eu dou manutenção (em Java ou PHP), pois fica tudo mais simples, divertido, e podereoso. E sobra tempo para pensar na aplicação em si, no que é melhor para solucionar o problema do cliente, ao invés de ter que ficar se debatendo com APIs de baixo nível, difíceis de serem integradas, usadas, etc, mas que são poderosas e são elas que temos que usar.

2 comentários:

Paulo 9 de maio de 2010 23:19

Felipão,
cara sempre entro no teu site para dar uma olhada nas novis no Grails,mas esses posts estão muito vagos, incompletos.Exemplo:

O exemplo do download do pdf não funciona o do login está incompleto, cara uma iniciativa muito boa sua,mas está frustando ao invés de ajudar.Mas é muita válida atentativa.Abraços cordiais.

Felipe Nascimento 10 de maio de 2010 22:47

Olá Paulo

obrigado pela mensagem. Há muitos exemplos com versões muito antigas do Grails. Algumas coisas mudaram e meus exemplos antigos daqui do Blog podem deixar de funcionar mesmo.
Mesmo assim, vou tentar melhorar e colocar exemplos funcionais, ok?
De qualquer forma espero que as dicas sirvam ao menos de ponto de partida.
Abcs