5º 45á 54

Após analisar a fundo as implementações das atuais Session e EntiyManager do Hibemate viram que não retornar ArrayList nem LinkedList,nem nenhuma coleção do java util,estas implementações faz parte do seu próprio pacote.

Nas principais APIs do java é fundamental programa voltado á interface.

Caso não utilizar esses método dever receber uma referencia a inputStream sendo mais flexivel.

A vantagem de utiliza código de interface é que está sempre desacoplado de qualquer outro que as utilize.

Desta forma ,fica muito fácil trocar a implementação sem modificar todo o código,o mesmo ocorre devido interfaces.

O uso exagerado de reflection para invocar métodos depende de algumas condições que pode ser substituído por interfaces.

Este método invocado é o polimorfismo ,diminuindo a complexidade e aumentando a manutenibilidade ,além ganho de performance.Sendo possível extrair algum método da classe distintas como Retemlmposto, processa Estoque ,transferencia e confirmação.

A API serclets usar um design baseado em interfaces com um strategy pattern,evitando a herança.A ao substituir a herança por interface ,continuamos com o benefício do polimorfismo .

.O Joshua Bloch ,no effective Java, fala de Design for jnheritance com diversas pratica como evitar invocações entre métodos público, para que a sobescrita de um não mude o comportamento de outro.

6º 55á 64

Com a interface e composição foi possível criar um novo driver JDBC para determinar banco de dados ou facilitar trabalho ,com implementando diferentes critérios de comparação.

Este principio de manter as classes abertas para extensão sem a ter alteração no código original é chamado Opem Closed Principle.

Os próprios engenheiros ,como o Senhor Sun admitir alguns erros de design da APIs antigas com classe java util Calendar .

Por isso recorrermos ás APIs com terceira alternativa para o senhor Joda time onde encontrar entidade como datas ,horas e intervalos imutáveis, objetos imutáveis são mais simples de se lidar.

Enquanto que objeto mutáveis tem que um certo cuidado adicional ,cujo objetivo é evitar alterações inesperadas.Contudo o API da linguagem Java usa a imutabilidade como vantagem para fazer cache e reaproveita mento de instâncias.

O desgin pattern flvweight tem como objetivo diminuir o uso da memória .O estado inconsistente fica escondido na lógica da construção e o novo estado referência compartilhado por mais de uma thread.

Tendo duas linguagens puras como Ertang e Haskell,uma vez que a sua característica e de trabalhar com valores imutáveis,quando classe imutável implementada com calendasrs precisará trabalhar com as copias defensivas dois momentos.

Com calendar também o implementar cloneable ,caso contrário precisariamos fazer a copia manualmente ,criando um objeto e alterando os atributos pertinentes um a um.

Era recomendado criar getters e setters para serem invocados no preenchimento de cada campo visual da sua interface gráfica com o usuário ,cunhando o termo JavaBean.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *