Introdução ao NHibernate ORM Framework

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    1 Event

    Introdução ao NHibernate ORM Framework - Presentation Transcript

    1. http://netponto.org
      3ª Reunião Presencial - 17/10/2009
      Introdução ao NHibernateLuís Amorim
    2. Luís Amorim
      7 anos de experiência profissional em TI
      Licenciado em Engenharia de Sistemas e Informática
      Experiência profissional no desenvolvimento de software
      Utilização de tecnologias Microsoft .NET e Java
    3. Agenda
      Introdução
      O que é o NHibernate?
      Funcionamento do NHibernate
      NHibernate na prática
      Conclusão
    4. Introdução: DAL
      Persistir dados e disponibilizar operações de CRUD
      Permitir a execução de queries avançadas
    5. Introdução: DAL
      Disponibilizar uma semântica transaccional
      Garantir integridade da informação em cenários de concorrência
    6. Introdução: O/RM
      API para operações de CRUD
      Querymodele querylanguagepara a definição de queries
      API para mapear metadados (classes e tabelas, propriedades e colunas)
    7. NHibernate: O que é?
      Framework O/RM
      Permite mapear classes .NET para tabelas de uma base de dados
      Permite expressar queriesutilizando HQL, SQL, objectos Criteria/Example
    8. Classes persistentes
      PlainOldCLR Objects (POCOs)
      Propriedades read/write para todos os campos persistentes
      Definição de um constructorpor defeito (sem argumentos)
    9. Classes persistentes
      Definição de uma propriedade que guarde a chave primária (opcional)
      Preferência por classes não sealed e métodos virtuais (opcional)
      Implementação dos métodos Equals() e GetHashCode()
    10. Classes Persistentes
      demonstração
    11. Mapeamento
      Mapeamentos object/relational são definidos num documento XML
      A linguagem para mapeamento é centrada em objectos
      Declaração de classes persistentes e não de tabelas
    12. Mapeamento
      demonstração
    13. Arquitectura
    14. API (Parte 1)
      ISession
      ITransaction
      ISessionFactory
    15. API / ISession
      Principal interface .NET/NHibernate
      Representa uma conversação entre a aplicação e a base de dados
      Disponibiliza métodos para executar operações de CRUD
    16. API / ISession
      Implementação implícita do patternUnitofWork
      Alterações às entidades persistem nos limites de uma transacção
      Factory para instâncias da interface ITransaction
    17. API / ITransaction
      Permite que as aplicações definam operações atómicas (transacções)
      Uma transacção está associada a uma sessão
      Uma sessão poderá iniciar várias transacções
    18. API / ISessionFactory
      Factory para instâncias da interface ISession
      Comportamento é controlado por propriedades de configuração
      Tipicamente, uma aplicação tem uma única ISessionFactory
    19. Operações de CRUD
      demonstração
    20. API (Parte 2)
      ICriteria
      ICriterion
      Restrictions
      IProjection
      Order
    21. API / ICriteria
      Representa uma query sobre uma classe persistente
      Permite obter entidades compondo objectos do tipo ICriterion
      A interface ISession é uma factory para instâncias de ICriteria
    22. API / Restrictions
      Disponibiliza métodos factory para obter instâncias ICriterion
      ICriterion representa uma condição numa cláusula WHERE (SQL)
      São classes utilizadas para aplicar restrições na construção de queries
    23. Queries
      demonstração
    24. NHibernate: Vantagens
      • Facilita a implementação do patternDomain Model
      • Independência da base de dados
      • Redução de código e abstracção da semântica SQL
      • Query language orientada a objectos
    25. NHibernate: Vantagens
      • Navegação transparente entre objectos relacionados
      • Lazy loading (configurável)
      • Cache das entidades (objectos) em memória
      • Gestão de transacções e isolamento
    26. NHibernate: Desvantagens
      Menor performance se comparado com ADO.NET
      Mapeamento de chaves primárias compostas não é simples
      Produtividade depende da utilização de geradores de código
    27. CodeSmith
      Gerador de código baseado em templates (configuráveis)
      CodeSmith IDE, CodeSmith API e integração com o Visual Studio
      Inclui templates para o NHibernate, entre outros
    28. Alternativas O/RM
      Entity Framework
      EntitySpaces
      Genome
      LINQ to SQL
      LLBLGen Pro
    29. Dúvidas?
    30. Referências
      http://nhforge.org
      http://www.hibernate.org
      http://www.ayende.com
    31. Patrocinador desta reunião
    32. Obrigado!
      Luís Amorim
      luis.g.amorim@gmail.com
      http://www.linkedin.com/in/lgamorim

    + Comunidade NetPontoComunidade NetPonto, 1 month ago

    custom

    193 views, 0 favs, 0 embeds more stats

    Apresentação sobre o framework NHibernate com div more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 193
      • 193 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 0
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories