domingo, 9 de outubro de 2016

Groovy / Grails



Olá pessoal,

Depois de bastante tempo sem postar, resolvi escrever este post para começar a relatar um pouco da experiência que estou tendo utilizando as técnologias Groovy e Grails.

Onde tudo começou


Rencentemente, migrei de empresa e nesta nova empresa, começei a trabalhar em um projeto que utiliza Grails. Eu já conhecia a técnologia, mas nunca havia me aprofundado, e com esse projeto, mesmo que utilizando uma versão bem antiga, a 2.3.6, percebi o ganho de produtividade que podemos ter ao utilizar esse framework. Também pude observar que é preciso mudar a forma de pensar e se desapegar de velhos e maus hábitos, pois a técnologia te "força" a trabalhar utilizando suas convenções que na minha opinião e na de muitos profissionais, são boas práticas que na maioria das vezes não seguimos. Percebi também que a linguagem Groovy, na verdade é um Java melhorado, e tudo que falta no Java e que temos muito trabalho para fazer, no Groovy é extremamente simples.

Groovy


De uma maneira bem resumida, o groovy é uma linguagem de programação que roda sobre a máquina virtual Java (JVM), dinâmica, puramente orientada a objetos, possui carcateristicas funcionais, possui um vasto ecosistema, na qual o Grails faz parte, utilizada na construção de scripts e também está presente na ferramenta Gradle, hoje aparecendo como uma opção ao Maven.

Grails


Também falando resumidamente, o Grails é um framework web, fullstack, utiliza groovy como linguagem, possui influências no Ruby On Rails, ou seja, todas as suas funcionalidades praticamente também são encontradas no Ruby On Rails. Seu foco é no ganho de produtivade, trazendo ferramentas e padrões para chegar a esse objetivo, trabalha com Convention over Configuration (CoC), sendo esse um dos maiores fatores na minha opinião, para que tenhamos uma maior produtividade com o framework. Utiliza por baixo dos panos, técnologias conhecidas, tais como: Spring, Hibernate, Log4j, Tomcat, Sitemesh e outras, tornando a curva de aprendizado mais curta e fortalecendo a confiança no framework. No Brasil existe uma forte comunidade, chamada Groovy \ Grails Brasil, na qual seu fundador e na minha opinião, o maior evangelizador do Grails atua, o Henrique Lobo, mais conhecido com Kiko. Neste primeiro post, não foi a minha intenção abordar mais detalhes e no final coloco alguns links que utilizei, assim como todos os meios pelo qual aprendi e ainda uso para continuar estudando o framework e a linguagem Groovy.

Como comecei a estudar


Primeiramente, começei a buscar na internet e vi que no Brasil, existe um grupo dedicado a técnologia, o Grails Brasil, nele percebi que o seu fundador, o Kiko, havia escrito um livro falando sobre o assunto, comprei o livro e recomendo, pois o livro aborda tudo que precisamos saber para construirmos uma aplicação do zero em Grails, mesmo o livro abordando também uma versão antiga, ele apresenta pontos que mudaram na nova versão. Depois disso, começei a estudar também pela documentação oficial que sempre é atualizada e que devemos sempre recorrer em primeiro lugar.
O importante é continuar estudando e praticando bastante, pois tanto o groovy quanto o grails possuem uma infinade de novos recursos e funcionalidades talvez não utlizados pela maioria de nós e por isso, na minha opinião, a prática se torna indispensável.

Seguem os links para estudo e o link do livro


Groovy

http://www.groovy-lang.org/
http://www.groovy-lang.org/documentation.html
http://www.groovy-lang.org/ecosystem.html

Grails

https://grails.org/
https://grails.org/documentation.html

Groovy / Grails Brasil

http://www.grailsbrasil.com.br/

Palestra dada pelo Kiko na infoQ

https://www.infoq.com/br/presentations/grails-alta-produtividade-em-java

Livro Falando de Grails (Kiko)

https://www.casadocodigo.com.br/products/livro-grails

É isso pessoal, nos próximos posts, pretendo apresentar mais pontos que aprendi e demonstrar também com exemplos de código.