Identidade da Entidade

Defina a identidade da sua entidade

Um dos princípios básicos da orientação objetos é que toda entidade deve ter um identidade. Esse princípio é tão importante que se não o levarmos a sério podemos ter problemas nas nossas lógicas de negócio e muitas vezes nos frameworks que trabalhamos, como JSF ou JPA/Hibernate.

Na linguagem Java a identidade de um objeto é definida através do métodos equals e hashCode. Implementá-los de forma correta pode evitar problemas quando trabalhamos com componentes de seleção no JSF (como h:selectOneMenu ou h:selectManyMenu) ou quando implementamos nossos conversores genéricos de entidades, por exemplo!

Para melhor entender a necessidade de definir a identidade de suas entidades, você pode ler meu post no blog dos desenvolvedores e instrutores da TriadWorks! Lá além de abordarmos temas como design de classes e Domain-Driven Design (DDD), nós também comentamos sobre algumas boas práticas quanto a maneira correta de implementar os métodos equals e hashCode ao trabalhar com Hibernate!

Suavizando o load de páginas no Internet Explorer

Esta semana acabei entrando em um site por indicação de uma amigo (Ivan), no site percebi um efeito muito bacana que ocorre somente no browser Internet Explorer (IE), é um efeito de tranparência (estilo fade) que ocorre na mudança de páginas, com isso o “load” de páginas fica mais suave e perde aquele efeito de brancão antes de abrir a próxima página.

Então comentei com outro amigo sobre tal efeito, Christiano Milfont, ele é um dos caras mais safos em aplicações ricas e WEB2.0 que conheço, assim ele acabou descobrindo e ensinando-me como inserir esse efeito nas páginas.

No final das contas nós só ficamos chateados pelo efeito ser proprietário do IE, ou seja, não funcionará em outros browsers, talvez abstraindo com algo no estilo bridge poderemos deixar o efeito cross-browser. Se souberem de algo não deixem de comentar!

O Milfont como é um exímio blogueiro já escreveu sobre o assunto no seu blog. Deem uma olhada, lá ele explica todo o processo da coisa.

Enfim, o efeito é muito bacana de se usar em sistemas intranets que rodem somente no IE, ele deixa o “load” de páginas com uma aparência mais leve :)) E o melhor, é super fácil de inserir, basta inserir estas duas linhas no início da jsp:

<meta http-equiv=“Page-Enter” content=“blendTrans(Duration=1.0)”/>

<meta http-equiv=“Page-Exit” content=“blendTrans(Duration=1.0)”/>

Se você usa algum framework ou método de templating então é super fácil inserir isso na sua aplicação.

Faça o teste, comprove :))