Ao usar vários objetos ou estruturas de big data, uma maneira de melhorar seu desempenho é usar o carregamento ou a atribuição de atraso (para implementar). As operações de tempo -de tempo foram reduzidas quanto possível, nunca realizadas. Uso alguns exemplos para explicar como a tecnologia de carregamento atrasada é usada no Java e fornece algumas diretrizes que podem ser mais fáceis (usadas) e como parte do idioma principal em outros idiomas.
Um cenário de uso é mostrar centenas de metadados e objetos de medição dignos de objetos de domínio por meio da JTable. Inicialize nossos objetos de domínio que podem salvar dois tipos de objetos na memória, mesmo que apenas alguns metadados sejam exibidos no formulário. Demora alguns segundos para construir esse formulário e (mas) podemos aceitar centenas de (dados) novamente. Depois de fazer algumas análises, melhoramos nossa realização, e parece esta:
Classe pública DomAinObject {Parser de DataPars de DataSer privado; = Aparsser;} public string getheaderfield (nome da string) {// aqui analisamos preguiçosamente e arquivamos o mapa do cabeçalho (header.isempl ()) {header.addall (parser.header ());} retornar cabeçalho (nome) ;} Public iterable <Data> getMeasulectValues () {// novamente Lazy-Load e analise os dados if (data.isempty ()) {data.addall (parser.measurements ());} retornar dados;}}
Essa melhoria melhora a entrada do tempo de exibição e melhora significativamente nossos (recursos) de nossos itens de processamento de big data. Toda a carga de dados ocorre apenas quando alguém deseja visualizar a medição da medição e clicar em um determinado item.
Um tipo de Java será adiado depois que a caixa for desmontada.
// preguiçoso e rápido porque a operação de despesas será executada apenas quando necessário (ACONDITION () && cararoperation ()) {...} // Ordem lenta (ainda lento ed!) Se (carooperation () && ACONDITION ()) {. ..}
A estrutura da camada de lastão longa, como o hibernato, geralmente se destaca para atrasar o carregamento, porque o acesso ao banco de dados e o preço de transmissão de dados são bastante altos em circunstâncias normais.
A maioria das funções de idioma é baseada na atribuição de atraso surround. O Scala Mixes Mixes -Funções de linguagem orientada para o objeto e apresenta palavras -chave atrasadas para simplificar o estilo Java.
Classe pública dom arinobject (analisador: dataparsser) {// avaliado no primeiro acesso privado val lento val cabeçalho = {parser.header ()} def getheadereld (name: string): s Tring = {header.get.get (name) .GeGorElse (" ")} // Avaliado no primeiro acesso preguiçoso valesurementValues: iterable [data] = {parser.measurements ()}}}
para concluir
O atraso no carregamento não é uma nova tecnologia revolucionária, mas é uma ferramenta muito útil ao lidar com os big data ou diminuir os recursos. Em muitos casos, você pode usá -lo para melhorar o desempenho ou você mesmo.
Pode reduzir o custo da implementação do código.