ORM , O/RM, O/R Mapping (Object Relational Mapping)
ORM aslında uzak olmadığımız bir teknik. Ne işe yaradığından kısaca bahsetmek gerekirse, sınıflarımızdan türettiğimiz nesnelerimizin ilişkisel veritabanımız ile daha iyi iletişim kurması anlamına geliyor. Veritabanları hala nesneye yönelik bir tasarımda olmadıkları için programlardaki nesneleri veritabanına tek hamlede değil de parça parça atıyorduk. ORM ile bu işi bir kere yapıp sonrasında veritabanından nesneler sorgulayıp veritabanına nesneler kayıt ediyoruz ve nesneler siliyoruz. ORM sadece tekniğin adı. Java ile haşır neşir olduğumda Hibernate terimini duymuştum. Aynı zamanda .net ile Linq kullanmış ve kolaylıklarını görmüştüm. Bu frameworklerin yaptığı işlem kısaca ORM olarak tanımlanıyor. Linq frameworkte de veriye erişim katmanı çok kolay ve görsel olarak tasarlanabiliyor. Bize kalan lambda ifadelerini öğrenmek ve nesnesel bakış açısına sahip olmak.
ORM üzerine tartışmalar da yok değil. 1 ayda bitecek çalışmayı 1 haftaya indiren teknik acaba performansı etkiler mi sorusu tartışılıyor. Tabiki arada bir çeşit çevirme işlemi olduğu için performans kaybı olacaktır ama bankacalık sistemlerinde bile java hibernate kullanılıyorsa sanırım Türkiye gibi işi bitir de nasıl biterse bitsin bakış açısında işlerin yaygın olduğu bir yerde sanırım ORM kullanmamak kendine haksızlık etmek olacaktır.
ORM ile deneyim ettiğim başka bir konu ise yazdığınız kodun güvenilirliği. Veri erişim katmanı kullanmış olduğunuz için yazdığınız kodun güvenilirliği de artıyor. Linq örneğinde olduğu gibi en küçük projede bile veri erişim katmanı kullanmanız kaliteyi artırıyor.
Aynı şekilde son zamanların yükselenlerinden biri de MVC frameworkler. Artık amaç profesyonelliği en alt seviyede bile gösterebilmek. Orta düzey bir kurum web sitesinde katmanlı bir mimariyi MVC framework sayesinde sağlayabiliyorsunuz. Bu da yaptığınız işin daha kalıcı ve yenilenebilir olmasını sağlıyor.
Son gelişmeleri merakla izliyorum ve bu tür kolaylıkların kullanılması gerektiğine inanıyorum. MS silverlight , linq , MVC framework gibi çalışmalarla hem yazılımcıların çalışmalarının -dolaylı olarak da kendi yazılımlarının- kalitesini artırıyor. Türkiye de sektörden beklenense biraz daha "iş bitsin , sistem çalışsın da nasıl çalışırsa çalışsın" anlayışının tersine kaliteye, mühendisliğe ve alt yapıya da önem veren işlere daha yüksek puan vermesi.
WİNDOWS SERVER 2008 İŞLETİM SİSTEMİNİ EVDE KULLANIN ASP.NET AJAX’A GENEL BAKIŞ: