A Semana Groovy #2

O Futuro do Groovy

Ao final da Gr8Conf Europe 2014 houve um encontro chamado Groovy DevCon  #10 que reune os responsáveis por diversos projetos que compõem o ecossistema Groovy. É um momento no qual se prioriza todas as melhorias que devem ser feitas nestes projetos, em especial no desenvolvimento do Groovy. As notas deste encontro foram publicadas por Guillaume LaForge.

É uma oportunidade bastante interessante para se saber o que vêm por aí: https://docs.google.com/document/d/18axejowbqSZuWF-06bEzx63FqhygmNHUuKx65i14EWU/edit?pli=1

Pontos interessantes:

  • O suporte a Android está confirmadíssimo para a versão 2.4 da linguagem. A primeira manifestação ocorrerá no release 2.4 beta.
  • Há uma forte discussão a respeito se a linguagem deve ou não ter elementos em sua sintaxe mais próximos do Java. Um bom exemplo é a ausência do try-with-resources que não está presente em Groovy pelo fato de já usarmos muito with*{}
  • Será feito um esforço para “tornar mais groovy” diversas APIs do Java 8.
  • Não haverão lambdas do Java 8 no Groovy por enquanto: o foco é manter as closures o máximo possível.
  • Haverá suporte para métodos em interfaces, tal como existe no Java 8 hoje.
  • Estão avaliando a possibilidade de incluir um sistema de macros em Groovy baseado no projeto MacroGroovy (https://github.com/bsideup/MacroGroovy). Confirmando-se este ponto, podem apostar que veremos o uso de AST Transformations se popularizar bastante. Na minha opinião isto é tão importante quanto o suporte a Android e Grails.

Ferramental Groovy/Grails: primeiros passos com Artifactory

Mais um vídeo adicionado à lista de reprodução “Ferramental Groovy e Grails” (https://www.youtube.com/playlist?list=PLc2foeLQlP8-HO0WcoBwNbIRXmXkTtYmZ). Entenda o que é o Artifactory, como instalá-lo e configurar seus projetos Grails para tirar proveito desta ferramenta. Você pode assistir este vídeo neste link: https://www.youtube.com/watch?v=Xw4DSm9BzmI

Links da semana

Hacking the Grails Spring Seucurity Plugins – Uma apresentação muito interessante sobre o Spring Security – Contribuição do Bruno Codeman – http://pt.slideshare.net/gr8conf/hacking-the-grails-spring-security-plugins

O novo site contendo a documentação do Groovy é excelente, já experimentou? Algo interessante nesta documentação é que está em um formato próximo ao de um livro: sendo assim é possível ler de cabo a rabo e aprender muito sobre a linguagem! http://beta.groovy-lang.org/docs/latest/html/documentation/

A documentação da API GORM agora está no novo formato Groovy Doc: http://grails.github.io/grails-data-mapping/current/api/

Grails: como incluir seu código JavaScript sempre no final das suas páginas – http://groovy.dzone.com/articles/grails-adding-javascript

ROME Tools – “All Feeds Lead to Rome” – Já precisou trabalhar na geração de feeds RSS? Uma poderosa biblioteca é ROME (é usada no Grails Brasil, por exemplo). Uma introdução interessante a esta biblioteca pode ser acessada neste link: http://www.intelligrape.com/blog/2014/05/28/rome-tools-all-feeds-lead-to-rome/

Lançamentos importantes

Groovy 2.3.3: lançada versão com uma série de correções importnates. Mais detalhes no release notes: https://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=10242&version=20415

Groovy 2.4.0-beta-1: a primeira versão do Groovy com suporte a Android!. Release notes: https://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=10242&version=20369 Você pode baixar estes dois releases do Groovy neste link: http://groovy.codehaus.org/Download

Spring Boot 1.1 GA liberado: para os desenvolvedores Grails é muito importante conhecer esta importante ferramenta, que será a base da versão 3.0 do Grails! – http://spring.io/blog/2014/06/10/spring-boot-1-1-ga-released Griffon 2.0-BETA: não conhece o projeto? Pense em um “Grails para desktop”. http://griffon.markmail.org/thread/cispnhhnwqo4z5n3

Plugins Grails

Plugin REDIS GORM para Grails: http://grails.org/plugin/redis-gorm CXF Client: muito útil para lidar com clientes de webservices baseados em SOAP: http://grails.org/plugin/cxf-client Spring Security REST – facilita aplicar o Spring Security em APIs REST Grails: http://grails.org/plugin/spring-security-rest

Entendendo programação funcional

Em outubro a EDX estará disponibilizando o curso “Introduction to Functional Programming”: este é um assunto que vêm ganhando bastante destaque nos últimos anos, além de ser um tópico corrente entre programadores Groovy: https://www.edx.org/course/delftx/delftx-fp101x-introduction-functional-2126#.U5iIuHUpgol

Dica: lidando com múltiplas versões do Grails

É comum termos mais de um projeto baseado em Grails, cada qual em uma versão distinta do framework. Ficar o tempo inteiro modificando variáveis de ambiente pode ser bastante chato.

Há alguma maneira de tornar sua vida mais simples? Yeap! Se estiver usando um sistema operacional baseado em Linux ou Unix (Mac OS X, por exemplo) uma excelente alternativa é o GVM: http://gvmtool.net/ (também funciona em Windows, basta ter o Cygwin instalado) Para usuários Windows a coisa pode ser meio complicada (o Cygwin pode ser um problema).

Então que tal resolver esta chateação com um único arquivo em lote? Experimente o Gravy: https://github.com/enterprise-grails/gravy Agora, se você usa o GGTS não há problema algum: basta ter workspaces separados para cada projeto. /dev/Kico fez um review do suporte a Grails desta IDE que pode ser visto em http://www.youtube.com/watch?v=JEQJDDnK62U

Assine nossa newsletter!

Gostou de nossa newsletter? Você pode recebê-la semanalmente por e-mail. Para tal, basta preencher este formulário.


Publicado

em

, ,

por

Tags:

Comentários

2 respostas para “A Semana Groovy #2”

  1. Avatar de Dyego
    Dyego

    Valeu Kiko, muito legal esses “resumos semanais”.
    Gostei bastante do video do Artifactory, parabéns.

    1. Avatar de Kico (Henrique Lobo Weissmann)
      Kico (Henrique Lobo Weissmann)

      Eu que agradeço, valeu Dyego!

      Estou pensando em gravar mais alguns sobre o Artifactory em breve. :)

Deixe uma resposta

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.