2. Pendahuluan
• Architecture dan domain design
dalam Object-Oriented Model.
• Database (persistence) dalam
Relational Model.
• Terjadi object-relational impedance
mismatch antara dua paradigma.
TOT 2
5. Object-Relational Mapper
• ORM
• Tool/framework yang digunakan untuk
menukarkan data dari bentuk object-
oriented kepada relational, vice versa.
• Class -> Table
• Property -> Column
• Composition -> Relation
TOT 5
8. • http://nhforge.org
• Asal dari Hibernate, untuk Java
• Ported to .NET, menjadi NHibernate
• Jana SQL semasa runtime
• Ada banyak lain, tetapi pilih NHibernate
o Mature and stable
o Fleksibel dan berkuasa
o Database agnostic
o Banyak sokongan komuniti
o Open source
TOT 8
9. Kelebihan ORM
• Dapat guna teknik-teknik Object-Oriented
Analysis/Design/Programming
• Sistem lebih fleksibel dan resilient to change.
• Produktiviti
o Mempercepatkan pembangunan
o Bila tukar property, tak perlu mencari semua nama column
dalam SQL.
• Kurang kesilapan
• Keselamatan
o Parameterized query, kurang risiko SQL injection
TOT 9
10. Penggunaan
• Konfigurasi
o Mapping
• XML configuration
• Fluent NHibernate (http://www.fluentnhibernate.org/)
o Start-up
• Semasa application start
• Session management
• Query dan Insert/Update/Delete
o Session.Get(), Save(), Update(), Delete(), Flush()
o Criteria
o HQL/SQL
o LINQ to NHibernate
TOT 10