Padrão Generation Gap

O padrão Generation Gap surgiu da dificuldade de se manter código gerado automaticamente e código escrito manualmente em um mesmo arquivo.

Em primeiro lugar, precisamos contextualizar quando as duas abordagens tornam-se conflitantes.

A partir do momento que temos uma classe gerada automaticamente por alguma ferramenta (por exemplo: Entity Framework Database First) e precisamos adicionar a ela algum comportamento escrito manualmente (algum método, ou propriedade que não será persistida no banco de dados), corremos o risco de perder tais modificações manuais após qualquer atualização da classe gerada automaticamente. Isto é, qualquer modificação gerada a partir de uma atualização do modelo acarretará na perda de qualquer código escrito manualmente.

Sobre estes anúncios

Delegate Chain Invocation

Callback functions são blocos de código executável que são passados como parâmetro para outro código, que fica responsável por invocá-los quando apropriado.

O modo como callback functions são suportados em cada linguagem de programação é diferente, mas são frequentemente implementados como subrotinas, expressões lambdas ou ponteiros de função.

O tratamento das linguagens não-gerenciadas sobre os callback functions é limitada a apenas um endereço de memória. Este endereço de memória não contém nenhuma informação adicional sobre o tipo de retorno, o número de parâmetros ou os tipos de dados dos parâmetros.

Saiba mais

Gerando registros de log automáticos com o Entity Framework

Uma tarefa bastante recorrente durante o desenvolvimento de sistemas é a criação de rotinas de log. E o Entity Framework facilita a nossa vida quando temos de fazer isso.

Com o Entity Framework podemos criar uma customização que encapsule os comandos que serão enviados para o banco de dados e então adicionar uma lógica que gere os registros de log necessários para cada operação.

log de dados

Saiba mais

Construindo camadas de acesso a dados – Parte V – Unity of Work

O padrão Unit of Work mantém um rastreamento sobre todas as alterações que possam alterar sua fonte de dados durante uma transação. Assim, quando todas as alterações já tiverem sido executadas o padrão fica responsável por persistir todas na fonte de dados.

Geralmente, não somos responsáveis por implementar este padrão, acabamos por consumi-lo em ferramentas de persistência, como: Entity Framework, NHibernate e LINQ to SQL.

Saiba mais

Vídeo/Palestra – Patterns para criação de camadas de acesso a dados

Olá,

Foi publicado o vídeo da minha palestra no Visual Studio Summit 2013. O tema da palestra foi: “Patterns para criação de camadas de acesso a dados”.

Saiba mais

Visual Studio Summit 2013: Patterns para criação de camadas de acesso a dados

Olá!

No último sábado (25/05/2013) tive a honra de participar do Visual Studio Summit 2013.

Participei da edição de 2012 com o tema “Principais novidades do Entity Framework 5″ (http://ferhenriquef.com/2012/09/24/visual-studio-summit-2012-principais-novidades-do-entity-framework-5-0/).

Este ano apresentei um conteúdo mais próximo aos tópicos de arquitetura e modelagem de software, falei sobre o tema “Patterns para criação de camadas de acesso a dados”.

Saiba mais

Construindo camadas de acesso a dados – Parte IV – Padrão “Find or Create”

Continuando a série de posts sobre camadas de acesso a dados (se vc não sabe do que estou falando clique aqui: Camadas de Acesso a Dados). Existe um padrão que comumente utilizamos e que não fazemos ideia de que este realmente é um padrão documentado e utilizado por muitos, este é o padrão “Find or Create”.

Este padrão consiste da característica de: buscar um determinado dado na fonte de dados e, se o mesmo não for encontrado, então fazer a sua inclusão. Pode parecer simples, mas é um recurso bastante comum que utilizamos no nosso dia.

Saiba mais

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Junte-se a 66 outros seguidores