Ana içeriğe atla

ORM Nedir?

ORM Nedir?Yazılımla ilgilenen herkes acemilik aşamasını atlattıktan sonra karşılaşacakları kavramlardan bir tanesi ORM terimidir. ORM Object Relational Mapping sözünün ilk harflerinin kısaltması ile oluşturulmuştur.

ORM ilişkisel veri tabanındaki tabloların objelere dönüştürülmesi veya objelerden tabloların üretilmesi sağlayabilen ve bunun sonucunda SQL sorgularının objeler üzerinden sorgulamaya dönüştüren teknolojilere verilen genel isimdir. 


Genel olarak çoğu ORM yazılımları iki yönlü iletişimi de destekler. Yani veri tabanı bağlantısına göre tablolardan objeler oluşturulabilir veya objelerden tablolar oluşturulabilir. ORM teknolojilerin genel olarak amacı kodlama içinde bizi direkt sql'lerden kurtararak objeler üzerinde sorgulama yapmamızı sağlamaktır. 

Hemen hemen tüm ORM yazılımlarının bünyesinde oluşturulan objeleri sorgulamak için bir yapı mevcuttur. Örneğin C# için bir ORM uygulaması kullandığınızda genelde sorgularınız Linq To Sql sorgularına dönüşür.




ORM konusunu anlayabilmek için öncelikle Nesne Yönelimli Programlama konusunda bilgi sahibi olmalısınız. Bunun gerekliliğini, işin içine girdiğinizde daha iyi anlayacaksınız. Örneğin, tüm tablolarınızda OID, Created Time, Is Active gibi bir tasarım planladınız. Bunu her sınıfta yazmak yerine genel BaseObject sınıfında yazıp kalıtımla almak zorundasınız. Bu  güzel kod yazmanızın gerekliliğidir. Fonksiyonel programlama dillerinden birini de kullanmıyorsanız bunu mutlaka yapmalısınız... Özetle Nesne Yönelimli Programlama konusunda bilgi sahibi olmak ve nesne yönelimli programlama mantığını çok iyi uygulayabiliyor olmak çok önemlidir...

İkinci paragrafta verdiğim cümleler bu konuyla yeni tanışan insanlar için karmaşık gelebilir. Bu anlamda söylemek istiyorum ki bu makale yalın olarak ORM nedir konusuna odaklanmış olsa da, ORM konusunu tam olarak anlayabilmek için bunu uygulamaya koymanız gerekir. Hangi programlama dili kullanıyorsanız o programlama dili için geliştirilmiş ORM yazılımlarını inceleyin ve bir örnek uygulama yazın...

Örneğin .net frameworkunu kulanıyorsanız Entity Framework, Devexpress XPO, NHibernate en çok kullanılan teknolojiler arasında. Bunlardan başlangıç için en iyisi Entity Framework'dur. Daha sonrada profesyonelce işe yaklaşıyorsanız benim görüşüm tüm teknolojileri avantaj ve dezavantajları, özellikle sorgulama hızları performanslarını karşılaştırarak seçim yapın. 

Verdiğim örneğin sadece .net platformu içindi. Ama daha önce de söylediğim gibi hangi programlama dilini kullanıyorsanız konuya başlamadan önce detaylı araştırma yaparak önce kullandığınız programlama dili için seçenekleri ortaya koyun. Bundan sonra kullanacağını teknolojilerin artı ve eksilerini öğrenin ki bunun en iyi yolu da uygulamaktır.

ORM seçiminde bir diğer önemli nokta da geliştirici kitlesidir. Yani seçim yaparken kullandığınız yazılımın çok büyük bir kitle tarafından kullanılıyor olması karşılaşacağınız sorunlarla ilgili kolay çözüm bulabileceğiniz anlamına gelir...

Bu kısa makalemizde "ORM Nedir?" konusuna değinmeye çalıştım. Anlattığım konuların daha önce bu konuda bilgi sahibi olanlar için altyapı mahiyetinde çok yararlı olacağını düşünüyorum. Yazılıma yeni başlayanlar için biraz ağır bir konu olsa da zamanla bu konuda çok daha bilgi sahibi olmaları gerektiğini de vurgulamak istiyorum...

Umarım makalem faydalı olmuştur. Konuyla alakalı sorularınız olursa sormaktan çekinmeyin. Fırsat buldukça sorularınızı da yanıtlamaya çalışacağım...

Yorumlar

Bu blogdaki popüler yayınlar

Medyan (Ortanca) Nedir? Nasıl Hesaplanır? Nerelerde Kullanılır?

Medyan işlemi olasılık hesaplamalarında sıkça kullanılan bir sayı dizisinin ortalamasını hesaplamak için alternatif yöntemlerden bir tanesidir. Ortanca medyan işleminin diğer adıdır. Matematiksel olarak medyan işlemi bir sayı dizisi küçükten büyüğe sıralayarak ortada kalan elemanı medyan değeri olarak belirleme işlemidir. Örnek verecek olursak: 2, 1, 5, 4, 5, 1, 2, 3, 5 serisi sıralanırsa 1, 1, 2, 2, 3, 4, 5, 5, 5 serisi elde edilir. Bu seri 9 elemanlı olduğundan ortadaki, yani 5. eleman (medyan) olacaktır. 5. eleman 3 sayısıdır. Yani ortanca değeri 3'dür Eleman sayısı tek sayı olan bir seride medyan değerin sırasının hesaplaması şu şekilde formüle edilir. Medyanın Sırası = (Eleman Sayısı + 1) / 2 Bu formülü yukarıdaki örneği uygulayacak olursak; Medyanın Sırası = (9 + 1) / 2 = 5 Veri serisi eleman sayısı bir çift sayı ise bu durumda serinin 2 medyanı olacaktır. Örneğin 2, 1, 5, 4, 5, 1, 2, 3, 5, 4 serisi sıralandığında 1, 1, 2, 2, 3, 4, 4, 5, 5, 5 s

Ağaçlar Kireçle veya Badana İle Neden Boyanır?

Ağaçlar kireçle boyanmasının veya badana yapılmasının hem çevreye hem de doğaya, ağaçlara faydası var. Bu makalede bu geleneği enine boyuna tartışmaya çalıştık. Ağaca zarar veren mikrop ve bakterileri öldürür. Ağacı çok aşarı soğuk havalarda ve çok aşırı sıcak havalarda korur. Ağacın çürümesini ve kurtlanmasını önler. Ağacın gövdesinin alabileceği zararları en az düzeyde düşürmeyi sağlar. Hoş, güzel, hijyenik, temiz pırıl pırıl bir görüntü oluşturur. Ayrıca çok sıcak havalarda da ağacı yanmaya karşı korumak. En büyük etkisi soğuk havalarda ağacı don vurmalarına karşı korumak . Küresel ısınma göz önüne alındığında mevsim değişiklikleri ani don, ani ısı artışları ve azalışları sonucunun doğuracağı etkenler için yararlı etkin bir yöntem. Gövdeden obur dalların çıkmasını azaltmak için sürülür. Kireçleme ağaçları güneş yanığından korumak için yapılıyor. Ağaçlar da güneşten yanabiliyorlar. Bu arada odun dokudaki gözenekleri doldurarak kapattığı için, zararlıların yuv

Azərbaycan Dilində Vurğu Qəbul Etmeyen Şekilçiler

Sözlərdə hecalardan birinin digərlərinə nisbətən daha qüvvətli deyilməsinə heca vurğusu deyilir. Üzərinə vurğu düşən hecaya isə vurğulu heca deyilir. Azərbaycan dilində vurğu adətən söz sonuna düşür. Söz şəkilçi qəbul ederkən vurğu adətən şəkilçinin üzərinə keçir. Məsələn: çiç ə k - çiçəkl ə r - çiçəklərd ə n məkt ə b - məktəbl i - məktəblil ə r - məktəblilərd ə n Buna baxmayaraq dilimizdə bir sıra şəkilçilər var ki onlar vurğu qebul etmirlər. Bu məqalədə Azərbaycan dilində vurğu qebul etməyən şəkilçilər incələnəcək ve bu şekilçilərin hansı hallarda vurğu qebul edib hansı hallarda vurğu qebul etmediyi araşdırılacaqdır. Eyni zamanda bildirmək istəyirəm ki vurğu ilə bağlı daha geniş və ətraflı məlumat üçün Azərbaycan Dilində Vurğunun Praktik Məsələləri adlı məqaləyə də nəzər yetirə bilərsiniz.  1. İsimlərdəki şəxs(xəbərlik) şəkilçiləri Məsələn: müəli'məm müəli'msən müəli'mdir müəli'mik müəli'msiniz müəli'mdirlər Qeyd: -dır4