sexta-feira, 13 de agosto de 2010

Tagged under: , , ,

JSR 303 - Bean Validations

Conhece a JSR303? Talvez a conheça como Beans Validation e o projeto que mais chama a atenção e que implementa esta JSR é o Hibernate Validator. Esta JSR traz ótimas novidades e foi lançada em 2009. A principal novidade é que agora é possível usar anotações para realizar validações em seus Beans. Mas, melhor ainda, você pode criar facilmente suas próprias anotações de validação. Cabe destacar que o JPA2 e o JSF2 já estão totalmente integrados a essa JSR. Enquanto o primeiro não vai permitir que uma entidade seja persistida com erros de validação, a segunda irá criar FacesMessages automaticamente para você contendo as mensagens de erro.
E aí? Gostou da ideia? Ah! Não sabe criar sua própria validação? Não se preocupe. Eu resolvi debutar em criação de "vídeos aula" e criei um rápido vídeo, pouco mais de 6 minutos, demonstrando a criação de uma validação. Você pode acessar no YouTube, ou pode ver logo abaixo. Ah sim! E está lá no meu blog também em http://marlon.silvacarvalho.net/.


quinta-feira, 12 de agosto de 2010

Tagged under: ,

Linguágil 2010

Linguágil 2010

O incremento na complexidade dos sistemas atuais tem gerado uma tendência na união de diversas tecnologias para o desenvolvimento de soluções. Java, PHP, Ruby on Rails e Python representam algumas das mais utilizadas linguagens de programação que, isoladamente, apresentam vantagens específicas para determinados contextos, porém, quando integradas, possibilitam resultados mais robustos e eficientes. O problema é que para se obter os melhores resultados com esta abordagem é necessário o conhecimento das diversas opções oferecidas.

Devido à velocidade no aparecimento de novas ferramentas e tecnologias, a disponibilidade de cursos é escassa. Mesmo o ambiente acadêmico tem dificuldades em acompanhar o dinamismo do mercado, são poucas as Universidades que oferecem uma visão do que está na vanguarda e com aplicação prática. Soma-se a isto o fato de que, quando surgem, as ínfimas oportunidades de aprendizado muitas vezes estarem limitadas aos estados de São Paulo e Rio de Janeiro, além de estarem atreladas a valores muito acima da realidade do mercado baiano.



Com base neste cenário, os grupos de usuários Java Bahia, PHP Bahia, Rails Bahia, Agile Bahia, Python Bahia e a Colivre unem-se a UniJorge  para promover a segunda edição do evento LinguÁgil. O principal objetivo é promover a divulgação, o debate e a troca de experiências entre especialistas nacionais e a comunidade baiana de profissionais e estudantes. Através de cursos práticos e palestras, as tendências de mercado e novidades das linguagens de programação Java, PHP, Ruby on Rails e Python, além de metodologias ágeis, como Scrum e XP, serão amplamente expostos e discutidos.

Período: 16, 17 e 18 de setembro de 2010.

Local:

Tagged under: , , , , ,

Groovy, meus primeiros passos - configurando o ambiente

Eu já simpatizava com o Groovy há algum tempo, por causa de leituras (principalmente da JavaMagazine), mas ainda não tinha tomado iniciativa de aprender. Por causa das sessões de Coding-Dojo, que o dojo-bahia vem realizando, a vontade de conhecer linguagens novas vem aumentando. O próximo Dojo está marcado para 25/08. E eu me comprometi em coordenar. Advinha qual será a linguagem?! :-D

Bom, eu poderia ir no caminho mais fácil que conheço. Baixar o NetBeans 6.9.1 que já vem com o suporte completo a Groovy. Até já usei e fiz uns testes (gosto bastante do NetBeans!), mas para a simplicidade do Dojo vou optar pelo prompt de comando e editor de texto simples. Vou relatar aqui os passos que segui para configurar o ambiente no Ubuntu 8.04, que é a versão atual usada no Serpro.

1) Instalando o Groovy
Supondo que você já tem Java instalado, vamos direto ao ponto. Abra o terminal e digite sudo apt-get install groovy. Quando concluir, digite groovy -v e pronto! E você verá a versão instalada (no meu caso, apareceu Groovy Version: JVM: 14.3-b01)

É só isso mesmo. Aqui uma referencia mais detalhada, que fala inclusive do Grails, que não vou tratar no momento.

Se você ficou entediado com essa forma de verificar se o Groovy está instalado, então experimente digitar isso na linha de comando: groovy -e "new File('.').eachFileRecurse { println it }". Ele vai listar todos os arquivos da sua pasta! Agora tente fazer isso em Java com uma única linha...

Ainda tá chato? Então vai no groovysh e tenha uma noção do que você pode fazer:


2) Configurando o Gedit para reconhecer o Groovy

Tem quem goste de vi, pico, nano, e por ai vai. Eu mesmo comecei minha carreira programando em Cobol, usando vi, num Cobra 3270 (e olha que nem sou tão velho assim). Na época era fera, mas tô enferrujado então melhor não arriscar. O Gedit já vem no Gnome, é conhecido e fácil de utilizar, então tá escolhido.

Depois do passo 1 já é possível criar programas Groovy, mas o Gedit por default não conhece sua sintaxe, então não deixa o código colorido o que já seria uma boa ajuda para os iniciantes que verão Groovy pela primeira vez no Dojo. Fui procurar como habilitar. É simples.

Baixa e descompacta o arquivo grails-gedit.tar.bz2. No prompt, executa o ./install.sh. Ele vai automaticamente copiar uns arquivos *.lang e *-mime.xml nas pastas /usr/share/gtksourceview-2.0/language-specs/ e /usr/share/mime/packages/. Depois, execute o comando sudo update-mime-database /usr/share/mime. E só! Descobri isso neste site.

Agora se você criar um arquivo qualquer com a extensão .groovy o Gedit já vai reconhecer. Veja:


3) Mais umas coisinhas legais pro Gedit

Eu também não sabia, mas o Gedit aceita plug-ins. Veja no site oficial do gedit que já existem tem alguns oficiais, outros de terceiros. Neste outro site tem uma lista bem legal em português. Para instalar os oficiais, comando sudo apt-get install gedit-plugins. Depois abre o Gedit, escolhe Editar/Preferências, aba Plug-ins e habilita os que achar interessante. Selecionei 3: Comentar código; Fechamento automático de parenteses; Comentário embutido. Neste post tem outras dicas para um ambiente de programação com gedit.

4) Executando uma aplicação Groovy

Vou adaptar o exemplo teste1.groovy, mostrado no passo 3. Para executá-lo você pode usar o próprio Gedit, pedindo para Ver/Painel Inferior (Ctrls+F9), e digitar groovy teste1.groovy. O resultado aparecerá logo abaixo.

Clique na imagem para melhor visualizar

No próximo post direi como configurar esse ambiente para permitir trabalharmos com teste unitários, afinal Coding-Dojo sem TDD é que nem cozido sem banana da terra. :-P

terça-feira, 10 de agosto de 2010

Tagged under: , ,

GWT

Com a evolução das técnicas de RIA (Rich Internet Application) que são aplicações que tem características e funcionalidades de softwares tradicionais do tipo Desktop. Existe um grandes frameworks que trabalham com isso entre eles existe o gwt, Google web toolkit, um framework do google que será discutido nesse pequeno artigo.




domingo, 1 de agosto de 2010

Tagged under: , , , , , , ,

Agile & Open Source & Bazedral

Foi na 2a edição do Maré de Agilidade, realizada em março/2009 em Salvador, que comecei minhas experiencias com Agile, aprendendo com pessoas extremamente experientes, competentes e prestativas. O JavaBahia começava a ampliar seus horizontes, a interagir com outros mundos, era lançada a pedra fundamental do que viria a ser o LinguÁgil, que chega a sua 2a edição em setembro próximo.

Na mesma época eu mudava de função no Serpro, passando a liderar o time técnico do Framework Demoiselle. Nada mais oportuno: trabalhar com Open Source, numa equipe nova, pequena (porém distribuída) e motivada, diretamente com Java e tendo a oportunidade de experimentar novas formas de desenvolvimento usando Agile. Juntar a fome com a vontade de comer. Maravilha.

A palestra Agile & Open Source - A Experiência do Framework Demoiselle, apresentada no FISL11, conta um pouco desta caminhada. Posso dizer que o prazer de trabalhar usando Agile nos faz (falo por mim e pela equipe) significa satisfação, alegria, bons resultados e muito aprendizado. Taí o slidecast, compartilhado com vocês.
Conviver com essa filosofia ágil tem me feito avançar nos estudos sobre trabalho colaborativo, que venho compartilhando no blog bazedral.blogspot.com, por isso aproveito também para colocar aqui os slides da palestra Bazedral - Pensamentos e Dicas para uma Empresa mais Colaborativa, também realizada no FISL. Essa ainda está sem áudio, mas em breve a TV Software Livre disponibilizará video.