You are currently browsing the archives for the domain-driven design category


O que achei do workshop de DDD da Caelum?

Hoje participei do workshop de Domain-Driven Design que a Caelum promoveu junto com Phillip Calçado, consultor da ThoughtWorks.

O workshop foi excelente. Muito dinâmico, com conteúdo bastante abrangente, e muita mão-na-massa. Aliás, não tivemos nem computador. Fizemos tudo em cartões pautados, CRC-like, no melhor estilo free style!!!

Tenho praticado DDD há aproximadamente 1 ano e meio, na CVC Turismo, e confesso que ainda carregava comigo algumas dúvidas, tanto de abordagem quanto de implementação. Porque DDD não se aprende do dia pra noite, nem decorando um conjunto de padrões. DDD é muito mais do que isso. DDD é, fundamentalmente, sobre “melhorar a comunicação entre os envolvidos num projeto”. Incrível!

Com certeza esse é um treinamento que recomendo de mais. (Principalmente àqueles que vivem atormentados por DAOs e repositórios…. kkk)

Brincadeiras à parte, se você é um desenvolvedor sério, preocupado em produzir software de qualidade, que realmente atenda às expectativas do cliente, você precisa participar desse workshop.

Mais uma vez, ao Phillip e à Caelum, parabéns!

(Ah! Paulôôô, o coffe-break, como sempre, fantástico!)

Falando em Java 2008, eu fui!

Ontem estive no evento Falando em Java 2008, organizado pela Caelum, para trazer lenha à fogueira da tecnologia, e também comemorar seu 4o aniversário. Parabéns!

O evento foi ótimo. Organização, coffe break, brunch, palestras, logística. Tudo esta “nos conformes”.

(Os lanches estavam muuuuito bons, como em todos os treinamentos da Caelum. rsrsrs)

Sobre as palestras, um mais que rápido review:

1- Abertura, Paulo Silveira

Fui muito legal saber dos números da Caelum. Tudo que o Paulo Silveira falou, certamente, foi muito inspirador para todos que estão pensando em começar um negócio, ou mesmo já começaram.

2- Os 7 hábitos dos arquitetos altamente eficazes, Guilherme Silveira

A visão da Caelum para um arquiteto é bem na linha daquilo que eu também acredito, então, foi uma boa palestra para eu ganhar mais embasamento em minhas idéias, sabendo que mais gente (e neste casa, uma pessoa reconhecidamente capaz) pensa como eu penso. Não estou totalmente errado… Uff! =)

Basicamente, a palestra dele colocou o arquiteto no lugar onde ele realmente deve estar: Junto com os desenvolvemores, ajudando no desenvolvimento técnico/profissional deles. É papel do arquiteto estar sempre antenado quanto a tudo quanto é tecnologia que exista por ai. Mas é também papel do arquiteto capacitar (com workshops, coach, pair programming, enfim…) seus desenvolvedores nas tecnologias adotadas num dado projeto que estejam participando.

De que adianta um arquiteto conhecer de mais de uma dada tecnologia, se seu time não conhece, não tem fluência? Adianta se ele capacitar o time. Senão, adianta absolutamente nada. (Porque não adianta um arquiteto decidir por uma dada tecnologia se o time não conhecer essa tecnologia.)

Também é importante que todo arquiteto tenha plena certeza de que NÃO EXISTE A BALA DE PRATA. Entendeu? Não? Vou repetir: NÃO EXISTE A BALA DE PRATA!

Vou falar mais sobre os 7 Hábitos e o papel do arquiteto num próximo post.

3- JAP 2.0, Emmanuel Bernard

Esse cara é o líder da implementação Hibernate da JPA, e também um dos participantes da especificação 2.0 da JPA. Isto além de ser líder do projeto Hibernate Search – que também rendeu palestra.

A palestra dele foi bem legal, deu para ver que eles estão trabalhando numas coisas interessantes para a JPA 2.0. Vamos esperar que tudo dê certo… =)

Uma das principais idéias da JPA 2.0 é expandir a API de forma a padronizar coisas que JÁ EXISTEM no Hibernate, para que também outras implementações tenham compatibilidade entre si; e cada vez menos teremos que usar recursos específicos do Hibernate.

Que venham esses novos recursos, porque depender de TopLink… é… deixa pra lá…

4- Domain-Driven Desig, Sérgio Lopes

Cara, essa palestra foi muito divertida. Muuuuito engraçada mesmo. Parabéns ao Sérgio pela criatividade!

Em termos de conteúdo, ele não pode se aprofundar muito, por conta do curto tempo para sua palestra. Como já estou trabalhando com DDD [num grande projeto] há pelo menos 10 meses, tinha anseio de ouvir coisas um pouco mais avançadas. Mas tudo que ele passou, de maneira simples e didática, creio que toda a galera conseguiu entender.

Paulôôô, da próxima vez, dá mais tempo pro menino!

5- Hibernate Search, Emmanuel Bernard

Essa me surpreendeu, porque eu não fazia muita idéia do poder dessa API. Caraca! O negócio é muito bom mesmo.

A idéia do Hibernate Search é literalmente GOOGLEAR suas pesquisas ao seu modelo de domínio. O que é isso? É você fazer aquelas pesquisas que o Google faz (por exatidão, por proximidade, por relevância, etc, etc, etc) no modelo de domínio (sim, objetos!) da sua aplicação. Seria uma full textual search em cima de objetos persistentes.

Com certeza vou estudar dar um estudada nessa API.

Ah! Acho que vale dizer que Hibernate Search usa recursos do Apache Lucene.

6- JRuby, Fábio Kung

Esta era a palestra que eu estava mais interessado em ver. Por quê? Motivos óbvios, adoro Ruby. JRuby então, vixi! =)

O Fábio falou principalmente sobre a experiência de estar desenvolvendo o GUJ on Rails, que é a versão 3.0 do GUJ (a maior comunidade Java da América Latina) totalmente desenvolvida com JRuby on Rails. Chapante!

E o benchmark? Esse foi de matar… O GUJ 2.0 (Pure Java) atende 20 requisições por segundo; o GUJ 3.0 (JRuby on Rails) atende 140 requisições por segundo.

Hammm… Alguém ai disse que Ruby é lento? É… A história se repete…

Tinha expectativa de ver uns códigos, o processo de deploy, etc. Mas de qualquer forma, valeu bastante a palestra. (Se eu já estava doido para colocar alguma coisa Rails no ar, agora estou completamente maluko!)

Bom, depois dessa palestra tive que ir embora, pois tinha um outro compromisso inadiável.

Agora, fora as palestras que foram muito legais, o evento também serviu pro famoso network, ou troca de idéia, ou o que você queira chamar.

Conheci pessoas novas, como o Tony, que trabalha num time Scrum na Abril; o Guilherme Chapiewski, que é ScrumMaster/Tech Lead na Globo.com. E também reencontrei uns caras que não via há um tempo, como o Fábio Akita.

Enfim, valeu de mais o evento!

Mais uma vez, Caelum: Parabéns!

Fui…

Falando em Java 2008

Dia 18 de Maio acontece a 2ª edição do Falando em Java, evento promovido pela Caelum.

Esse ano, entre outras “atrações”, o evento traz [dos EUA] Emmanuel Bernard, líder da implementação JPA do Hibernate e membro do time de especificação da JPA 2.0. Sem dúvida alguma, uma palestra imperdível.

Além desse figura, outras também muito tarimbadas da comunidade brasileira: Paulo e Guilherme Silveira, Alexandre Magno, Fábio Kung, entre outros.

Com certeza, eu vou!

A gente se vê por lá…