Results 1 to 7 of 7

Thread: NHibernate - enthusiasts wanted.

Threaded View

  1. #1

    Thread Starter
    PowerPoster Dave Sell's Avatar
    Join Date
    Mar 2004
    Location
    /dev/null
    Posts
    2,961

    NHibernate - enthusiasts wanted.

    I just did a search and noone has posted anything about NHibernate on this forum, so I thought I'd get the ball rolling.

    What is it?

    NHibernate is a .NET port of an open source technology known as Hibernate .

    Hibernate is a forward-thinking development environment, tailored to the Java Programming environment, intended to marry Object-Oriented Objects to Relational Database Objects. This is known as Object-Relational Mapping (ORM). It is also sometimes refered to as a Persistence Framework.

    Why do I care?

    The purpose of ORM, in my opinion, is to reap the high-performance persistence benefits from the RDBMS, while developing in Object-Oriented languages (and ignoring the RDBMS persistence details).

    I make the analogy of today's RDBMS to yesterday's disk subsystems. Once you had to know the hardware-level details of a disk-driven storage device in order to persist and retreive files to/from it. You had to know the head/sector/block information. You had to make low-level device calls in assembler. On mainframes, you had to know the begin and end sector of data partitions. Even as things advanced into C, you had to open and close file handles and keep track of them.

    You get the idea. Today you just tell some File Object to .Open a file and .Write to it. I'll grant you it's not as fast during run-time, but during design-time this can be a huge benefit to the lifecycle of a project. It also frees our minds from the shackles of tedium and allows our creativity to flourish as we endeavor to solve problems using computer technologies.

    In a similar way, the vast majority of us have learned the ins-and-outs of RDBMS subsystems. We can all write intelligent SQL statements, and design our table structures and Normalize them appropriately. We may have mastered the semantics, but we cannot escape the tedium it imposes on every aspect of an Object-Oriented Development project.

    Why use it?

    Object Oriented Design was intended to closely map computer languages to our natural ways of thinking (esp. creatively). Some may argue this has not been accomplished, and OOD is not for everyone. However, if you favor OOD then ORM is a natural extension. As OOD is a "next step" forward from procedural based development, so ORM is a "next step" forward from RDBMS details (CRUD).

    To choose ORM (NHibernate in the context of .NET) is specifically to let go of the old ADO/DOA paradigm. ADO is the pervasion of RDBMS details into the nooks and crannies of your development efforts.

    ORM implies that it is explicitly inappropriate to have SQL statements, Recordsets, Fields and MoveNext(s) in your code! ORM is intended to free your mind from the low-level details from RDBMS and make room for better Object Oriented Development, Patterns, and best practices.

    Where is it?

    I am not a Java guy, so Hibernate has been mostly inaccessible until recently. The .NET version is NHibernate. I am interested in pursuing the useage of NHibernate for myself, and can find no books on the topic!

    Why am I here?

    I am just sort of jumping on the Hibernate bandwagon now, so I am no expert on the topic, which brings me to the purpose of this posting. I am looking for interest on the topic on these forums. I realize there are many other products which implement ORM and Persistence Frameworks, but I am interested in NHibernate specifically.

    What do I want?

    I'm just looking for those who can post useful links to articles, books, and tutorials on NHibernate.

    This is an article written on the marriage of ADO.NET to NHibernate and I am starting there for a tutorial.

    This is another tutorial of sorts that I will be looking at.

    This is a decent intro to ORM.
    Last edited by Dave Sell; May 4th, 2006 at 10:01 AM.
    Nobody knows what software they want until after you've delivered what they originally asked for.

    Don't solve problems which don't exist.

    "If I had eight hours to cut down a tree, I'd spend six hours sharpening my axe." --- Abraham Lincoln (1809-1865)

    2 idiots don't make a genius.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width