Delphi Hibernate


Objetivo

O projeto Jazz SDK precisava ser renovado, e desde que o publiquei, o Hibernate e o NHibernate se popularizaram e amadureceram, desta forma é natural a utilização do design e experiência existente nesta nova versão, para que os usuários e desenvolvedores utilizem toda a base de conhecimento já existente.

Deste ponto em diante, será utilizado à abreviação “XH” como referencia a “Hibernate e NHibernate”.

O desenvolvimento está sendo feito com o Delphi XE2, vários recursos utilizados só estão presentes a partir do Delphi 2010, mas somente após testar todo o framework em cada versão de Delphi, poderei dizer quais versões serão oficialmente suportadas, espero ter a ajuda de colaboradores para estes testes.

O framework DSharp será utilizado evitando duplicação de funcionalidades, restando mais tempo para focar nos recursos exclusivos do ORM.

Agradecimentos ao autor do DSharp, Stefan Glienke, por autorizar a utilização desta maravilhosa biblioteca.

Recursos

  • Uma versão futura com os recursos da versão mais atual do XH é planejada, no momento foi selecionado um subconjunto destes recursos que são os necessários para projetos atuais.
  • Todos os recursos selecionados seguirão o modelo já definido no XH sendo ajustado aos recursos do Delphi.
  • Qualquer outro recurso sugerido deverá primeiramente seguir o modelo XH, e outros qualquer outro caso será analisado antes de ser aceito.
  • Lista completa de Recursos da versão 1.0 http://code.google.com/p/delphi-hibernate/wiki/Features

Regras para colaboradores

O desenvolvimento será aberto e seguirá regras para manter a qualidade e o propósito:

  • O design deve seguir as especificações das API’s do XH, ajustadas aos recursos do Delphi.
  • Todo o código deve ser acompanhado de testes
    • DUnit
    • DSharp.Testing.Mock
  • Deverá ser criada a documentação correspondente ou pelo menos a referencia a documentação existente no XH.
  • A versão de desenvolvimento deve sempre ser compilável, mesmo que o recurso não esteja finalizado.
  • O código deve ser formatado de acordo com as regras definidas, um documento com  as regras será publicado junto com o arquivo de configuração de formatação do Delphi.
  • Para a colaboração ser aceita, deve ser solicitada a revisão do código, somente após os revisores aprovarem, o código será adicionado ao repositório principal.
  • Desejável um programa exemplo, compilável e com todas as dependências inclusas.

Projeto

O projeto está hospedado no Google Code no endereço: