Search

ORM(Object Relation Mapping) Nedir?



1 yorum

ORM Nedir?

ORM(Object Relational Mapping)
ORM(Object Relational Mapping) ilişkisel veritabanı (RDBMS) ile nesneye yönelik programlamanın (OOP) arasındaki ilişkiyi kuran ve ilişkisel veritabanındaki bilgilerimizi yönetmek için, nesne modellerimizi kullandığımız bir tekniktir. Basit bir ifadeyle kullandığımız nesnelerimizi(object) veritabanındaki tablomuza bağlayıp database bağlantılarını(alışveriş) yapan bir tekniktir. ORM tekniği belli bir programlama diline bağlı değildir ve her OOP dilinde yazılabilir/kullanılabilir.

ORM sayesinde veritabanında herhangi bir nesne yaratmamız halinde bizim için kod tarafında bir nesne oluşturmuş oluyoruz. Bu kodlar code generation tekniğini kullanarak bizim yazmamız gereken kodu otomatik üretiyor.

ORM ile Neler Yapabiliriz?

ORM yapısını kullanarak SQL sorguları ile gerçekleştirdiğimiz işlemleri SQL sorgusu kullanmadan gerçekleştirebiliriz. Örnek olarak SELECT ile getireceğimiz veriyi, ORM üzerinde oluşturulan nesneden kimlik numarası(ID) 'x' olanı getir diyebiliriz. Sonraki yazılarımda bu konuları ayrıntılı bir şekilde anlatacağım.

Neden ORM Kullanmalıyız?

  • Object Oriented Programming(OOP) için uygun ortam hazırlıyor.
  • SQL sorgusu yazmanıza gerek kalmadan veritabanına bağlanıp uygulama yazabiliyorsunuz.
  • Veritabanı türü ile bağımlılığı bulunmuyor.
  • ORM araçları genellikle Open Source(ücretsiz).
  • Test edilmesi kolay kodlar oluşturur.
  • Yazılım şirketleri tarafından destekleniyor.
  • Geleceğin programcılık mantığını şekillendiriyor.

Neden ORM Kullanmamalıyız?

  • Performans sorunları yaşanabiliyor.
  • Hakimiyet dereceniz azalabiliyor, bilgi alışverişinin ORM tarafından sağlanmasından dolayı.

ORM Araçları

.NET için ORM frameworkleri:
  • Entity Framework
  • Nhibernate
  • .Net Persistence
  • DataObjects.NET
  • DotNorm
  • FastObjects.NET
  • Norm
  • OJB.NET
Java için ORM frameworkleri:
  • Hibernate
  • JPA
  • OpenJPA
  • Toplink
  • EclipseLink
  • Apache Cayenne
  • MyBattis
PHP için ORM frameworkleri:
  • Propel
  • Doctrine
  • PHP-Activerecord
  • PdoMap
  • RedBean


1 yorum:

Adsız at: 21 Kasım 2012 01:12 dedi ki...

güzel bir çalışma olmuş elinize sağlık

Yorum Gönder

Check Page Rank
DMCA.com