NHibernate Mapping der Entitäten - Möglichkeiten

Wer sich mit DDD beschäftigt wird schnell darauf kommen, dass POCOs der ideale Einsatz für das Domänenmodel sind. Welche Möglichkeiten habe ich nun, aus meinem DomainModel das aus POCOs besteht zu meinem Mapping zu kommen?

Die Vor- und Nachteile liegen dabei für mich auf der Hand.

  1. NHibernates hbm.xml (per Hand)
    1. Refactoring ist fehleranfällig, oder anpassen des Domänenmodels nicht unterstützt wird. Änderungen müssen manuell im XML nachgezogen werden
    2. Keine grafische Unterstützung
    3. POCOs möglich
  2. ActiveRecord (per Hand)
    1. Keine POCOs. Entitäten werden mit Attributen dekoriert. Konfiguration wird automatisch erstellt.
    2. Keine grafische Unterstützung
    3. Übersichtliche Konfiguration und "inplace"
    4. Refactoring kann Fehleranfällig sein
  3. ActiveWriter (GUI für ActiveRecord)
    1. Keine POCOs. Entitäten werden mit Attributen dekoriert. Konfiguration wird automatisch erstellt.
    2. Übersichtliche Konfiguration und "inplace"
    3. Drag & Drop vom Server-Explorer möglich
    4. Refactoring über Designer einfach möglich
  4. Fluent NHibernate (per Hand, aber im Code)
    1. POCOs möglich
    2. Keine grafische Unterstützung
    3. Refactoring gut Unterstützt da im Code
    4. Nicht so verbose wie XML (leichter lesbar, verständlicher)
    5. Sehr leicht Testbar

Und dabei bin ich bei meinem Momentanen Favoriten: Fluent NHibernate, da dieses einfach zu testen ist! Demnächst folgen dann einfache Beispiele für den Vergleich.

Es gibt noch andere Tools. Aber das sind für mich die vier wichtigsten, die ich mir im Moment anschaue.

Published Montag, 6. Oktober 2008 18:31 von Rainer Schuster

Kommentare

Keine Kommentare

Kommentar abgeben

(verpflichtend) 
(verpflichtend) 
(optional)
(verpflichtend)