Dev (Back & Front)ARTIGO

Atributos de armazenamento de dados como longs primitivos? – #Melhores2013

Vamos falar sobre o uso de longs primitivos, que realmente parece ser uma ideia muito interessante.

Eu estava lendo o item 24 deste livro e, em um dos últimos parágrafos, o autor comenta sobre o armazenamento de objetos de dados como um long primitivo. O texto é sobre como fazer cópias defensivas de objetos em seus construtores e métodos de acesso.

Então, em vez de usar

public void setDate(Date date) {

    this.date = date;

}

você deve utilizar:

public void setDate(Date date) {

    this.date = new Date(date.getTime());

}

Isso é bastante óbvio, depois de anos desenvolvendo o software OO, e explicar isso está fora do alcance deste artigo. Agora, vamos falar sobre o uso de longs primitivos. Realmente parece ser uma ideia muito interessante. Desde que você tivesse que usar o valor long dos dados locais (privado) o tempo todo para criar as cópias defensivas, armazenando-o como um long primitivo, imediatamente nos levaria a um código mais limpo e legível.

O construtor simplesmente armazenaria o dado long, e o acessor seria tão simples quanto

public Date getDate() {

    return new Date(myDateAsLong);

}

Além disso, seria mais fácil armazenar os dados no banco de dadosBanco de dados134 conteúdosSQL ou NoSQL: eis a questão!!Data · mar 2020Banco de dados: como organizar e dar segurança para milhões de dados de loteriasData · mai 20215 serviços gratuitos na cloud para bancos de dados PostgresData · fev 2025Ver tudo em Data , desde que não tenhamos que converter um objeto Date para um formato que o banco de dados entenda.

Agora, a grande questão: por que não pensei nisso antes?

***

Texto original disponível em http://jcranky.com/2009/02/10/store-date-attribute-as-primitive-longs/

 

é desenvolvedor Java e Scala há vários anos. É apaixonado pelo JVM e encontrou em Scala uma grande oportunidade de alavancar o potencial da plataforma Java. Também é instrutor na Globalcode, co-fundador dos scaladores (grupo de usuários Scala de SP) e tecladista nas horas vagas.

Ver perfil