Arquivo por ano 2006

Design Patterns: um mau sinal?

Postado em 17. dez, 2006 por .

8

Uma semana atrás estava em Moçambique, próximo a África do Sul, ministrando três treinamentos da Caelum. Conheci muita gente e muitos desenvolvedores, incluindo dois escoceses: Cameron Smith, formado em ciências políticas (!) e mestre em engenharia de software pela Univerdade de Glasgow, e Colin Fairless, bacharel e mestre em Matemática Aplicada pela Imperial College de more »

Continue Lendo

Como impressionar seus amigos com Java

Postado em 05. dez, 2006 por .

18

Olá, já estou a algum tempo na Caelum mas só agora estreando no blog e, para compensar a demora, resolvi fazer um pouco diferente. O título deve estar chamando a atenção e antes de colocar o assunto de verdade (está bem, sei que estou valorizando um pouco), vou apenas lembrar da pessoa que me mostrou more »

Continue Lendo

Entidades Managed, Transient e Detached no Hibernate e JPA

Postado em 23. nov, 2006 por .

22

Distinguir entre os estados de uma entidade no JPA/Hibernate é difícil no início. Um objeto é dito transiente quando não tem representação no banco de dados e nem o EntityManager o conhece, como abaixo: Aqui, qualquer mudança no objeto referido por c não gerará nenhum tipo de insert ou update no banco de dados. O more »

Continue Lendo

Ajax no VRaptor: JSON da maneira fácil

Postado em 08. nov, 2006 por .

15

Vamos falar um pouco de web antes que o Paulo Silveira transforme esse blog em um livro de Hibernate! O Fabio Kung deu a idéia de usar JSON para fazer a estrutura básica de Ajax do VRaptor. O Paulo, que detesta(va) trabalhar com JavaScript e interfaces com o usuário, gostou bastante da maneira simples de more »

Continue Lendo

TransientObjectException, LazyInitializationException e outras famosas do Hibernate

Postado em 01. nov, 2006 por .

10

Para quem desenvolve com Hibernate, sem dúvida as exceptions que aparecem mais são a TransientObjectException (TOE), LazyInitializationException (LIE) e a PersistentObjectException (POE). Semana passada tive o prazer de ministrar um treinamento de EJB3 e JSF para o pessoal da Petrobras de 5 cidades diferentes e durante o curso várias TOEs, POEs e LIEs apareceram. Vamos more »

Continue Lendo

Brincando com Generics: o BizarreGenericDao

Postado em 29. out, 2006 por .

12

Conversando com o Orseni Campos, ele me contou de uma sacada muito interessante que teve juntamente com seu colega Alexandre Bitencourt para resolver um clássico problema do generics: em tempo de execução você não consegue descobrir o tipo parametrizado que foi passado como argumento. Em outras palavras, repare no código do Dao genérico que foi more »

Continue Lendo

Entendendo Unicode e os Character Encodings

Postado em 22. out, 2006 por .

15

Todo mundo já passou por problemas com character encodings. Quem nunca abriu uma conexão JDBC com o MySQL e puxou do banco um monte de caracteres onde em vez de acentos só se viam pontos de interrogação e caracteres estranhos? O blog do Joel Spolsky já publicou um post sobre esse assunto, que é bem more »

Continue Lendo

Como não aprender orientação a objetos: Herança

Postado em 14. out, 2006 por .

27

Já falei sobre os problemas que os getters e setters podem trazer, caso usados de maneira indiscriminada. A bola da vez é a herança. Lembro quando comecei a programar profissionalmente em Java, no final de 2000. Estava em um projeto juntamente com o Tiago Silveira, e algo que eu adorava fazer era que meus beans more »

Continue Lendo

Lidando com Exceptions

Postado em 07. out, 2006 por .

8

Pequena Revisão Sabemos que as exceções em Java são classificadas em dois tipos: Checked Exceptions: seguem a regra do handle-or-declare. O desenvolvedor é obrigado a tratar (try-catch) ou relançar (throws), caso não saiba como tratar. Unchecked Exceptions: não é obrigatório tratar nem relançar, apesar de ser possível. Caso não haja try-catch adequado à exceção gerada, more »

Continue Lendo

Performance: HashSet em vez de ArrayList

Postado em 04. out, 2006 por .

15

Quando um programador começa com Java, ele rapidamente desiste das arrays para trabalhar com a ArrayList, que encapsula algumas rotinas comuns e trabalhosas. Depois o programador começa a se preocupar mais com o encapsulamento e passa a se refernciar as ArrayLists como List. Um último passo que é mais díficil do programador tomar é de more »

Continue Lendo

Apache HTTP server e Tomcat, o HowTo fácil sem o mod_jk

Postado em 25. set, 2006 por .

9

Migramos os nossos sitemas do servidor compartilhado da locaweb para um servidor dedicado, porém enfrentamos o clássico problema: responder php e java na mesma porta de acordo coma URL. O nosso blog é gerenciado pelo wordpress, que precisa do PHP, já os nossos outros serviços precisam de Java 5 e tomcat 5.5. Eu e o more »

Continue Lendo

Livros: escolhendo a trindade do desenvolvedor Java

Postado em 22. set, 2006 por .

10

Muitas pessoas costumam me perguntar se o livro X é bom, se o livro Y cobre bem Java EE, assim por diante. Alguns desses livros são super específicos de uma determinada tecnologia Java, como por exemplo Struts in Action que só aborda a versão 1.x.y do Struts. Em um curto espaço de tempo você vai more »

Continue Lendo

Como não aprender Java e Orientação a Objetos: getters e setters

Postado em 14. set, 2006 por .

78

Muitas pessoas perguntam “como aprender OO?“. Há várias maneiras de aprender OO, creio que não tenha uma melhor, mas existem maneiras de não aprender. Uma das práticas mais controversas que aprendemos no início é a geração indiscriminada de getters e setters. Os exemplos básicos de centenas de tutoriais java estão recheados com getters e setters more »

Continue Lendo