bugün
- kız arkadaşının giyimine karışmayan erkek22
- son 20 yılın en gıcık lafı12
- yalnız yaşamak12
- kıyametin yaklaşıyor olduğu gerçeği5
- havalar da ısındı5
- yanlız o hareketi yalnış yapıyorsun3
- bir avukatın suçlu olduğu bilinen kişiyi savunması3
- hep kendini suçlamak4
- sadece bayan entrylerini okumak5
- ona bir şey söyle17
- çekyat kanepe kaplatma4
- iyi bakalım4
- 10 yıl sonraki haline bir mesaj bırak3
- pizzanın kenarını yememek4
- götü büyük kadın2
- aipac'tan iran müzakelerinde israil saldırı hakkı2
- 15 haziran 2026 ispanya yeşil burun adaları maçı13
- vazgeçmek2
- herşeyi boş verip pastör olmak3
- true'ya arkadan sahip olmak16
- dandik üniversite mezunlarının ortak özellikleri3
- eşek sucuğu3
- en son ne aldınız5
- hayatımın özeti3
- 16 haziran 2026 iran yeni zelanda maçı10
- kahvede muhabbet etmek3
- evlenmeyi başaramamış erkek5
- bornova2
- naber lan filozof denilen ülke2
- varoşluk göstergesi küçük detaylar5
- kadın olsaydım çok açık giyerdim22
- hazır mantı3
- okun düştüğü yere kamp'ya da şehir kurmak2
- kısa saçlı hatun çekiciliği7
- 14 haziran 2026 avustralya türkiye maçı58
- 15 haziran 2026 belçika mısır maçı9
- diamond bosphoruss denen yazar5
- modern hayaletli ev2
- bi kulağımızın arkası kaldı2
- 14 haziran 2026 hollanda japonya maçı8
- işyerinde oyun oynamak2
- avutan düşünceler2
- sohbet edilen kişinin sürekli telefonla uğraşması8
- kadınların romantik sözleri pek sallamaması3
- bir limon yarım dolar avrupadan pahalı3
- 0850 ile başlayan numaraları cevaplamayan tip2
- tanga neden giyilir11
- ali güven2
- namus takıntısı olan erkek17
- suudi arabistan uruguay maçı saat 1 de trt 1 de2
OBJECT RELATION MAPPING.
veri tabanın da yarattığımız her nesneye karşılık kod tarafında da bir nesne oluşturan uygulama. programlama süresini kısaltabilir, daha hızlı kod yazmamızı sağlayabilir fakat her gülün dikeni olduğu gibi bunun da bazı batan tarafları vardır. yazılımda olmaz ise olmaz olan performans bu teknolojinden pek haz etmez yalnız gelişen donanım kısmen bu derde de merhem olur. ayrıca bir miktar esnekliğimizi kaybeder kendimize sınırlar çizmiş oluruz. küçük projeler için kullanılabilir. "benim projem devasal, ben ne edeceğim?" diye soracak olursanız; .net için linq java için hibernate incelenebilecek, araştırılacak öncelikli konulardır fikrimce.
veri tabanın da yarattığımız her nesneye karşılık kod tarafında da bir nesne oluşturan uygulama. programlama süresini kısaltabilir, daha hızlı kod yazmamızı sağlayabilir fakat her gülün dikeni olduğu gibi bunun da bazı batan tarafları vardır. yazılımda olmaz ise olmaz olan performans bu teknolojinden pek haz etmez yalnız gelişen donanım kısmen bu derde de merhem olur. ayrıca bir miktar esnekliğimizi kaybeder kendimize sınırlar çizmiş oluruz. küçük projeler için kullanılabilir. "benim projem devasal, ben ne edeceğim?" diye soracak olursanız; .net için linq java için hibernate incelenebilecek, araştırılacak öncelikli konulardır fikrimce.
bağlantı açmak kapatmak gibi alt seviye işleri bizim yerimize yöneten, entity sınıfları üreterek programcıya hız kazandıran, bu sınıflar sayesinde veritabanındaki kayıtları nesnelerle eşleştiren ve bizim mümkün mertebe az sayıda veritabanı sorgusu yazmamızı sağlayan veri erişim araçlarıdır.
java da (bkz: jpa) standardı olarak geçen. (bkz: Hibernate) Php de (bkz: laravel) de bulunan. c# da (bkz: entity framework) e karşılık gelen yapıdır. çok kullanışlıdır. Mümkün oldukça az hatta bazen hiç sql kodu yazmadan tüm işlemleri gerçekleştirebileceğiz bir yapıdır.
crud sorgularını uzun uzun yazmaktan biz yazılım geliştiricileri kurtaran yapıdır. java da hibernate(jpa standardı), spring orm gibi frameworkleri mevcuttur. oldukça kullanışlıdır.
Olay şu. Elinizde bir tane facade var.
Bu facade ile temel insert, delete, update ve select işlemlerini yapacaksınız. ancak bu facade öyle olmalı ki eklediğiniz ne olursa olsun sorgu çalışmalı.
c# ile örnek vereyim. Eski usul yöntemde olay şuydu:
string sorgu = "INSERT INTO Persons(Name, LastName) VALUES('Ahmet', 'Durmaz');
sqlcommand cmd = new sqlcommand(sorgu, baglanti);
cmd.executenonquery();
Başlangıçta kısa görünüyor olabilir ancak bazı sıkıntılar var. Her işlem için bu sorguları tek tek yazacak mıyız? Bu sorular sorulabilir.
Adamlar şöyle düşünmüşler. Ben bir sınıf yaratayım. Adı Persons olsun. Bu sınıfın bazı property'leri olsun.
class Persons
{
public string name { get; set; }
public string lastname { get; set; }
}
Adam düşünmüş işte demiş ki ben bu sınıfa verileri şöyle yollayayım:
Persons p = new Persons();
p.name = "Ahmet";
p.lastname = "Durmaz";
Daha sonra bu adamlar durmamış tekrar düşünmüş
ORM adındaki Facade, oluşturulan Class türünden değer alsın. Olay şöyle:
ORM<persons>.Insert(p);
Yani Tip olarak yaratılan sınıfın adını alırken, crud işlemlerini instance üzerinden yapıyor.
Bu sayede de bu instance'da yer alan propların hem name hem de value'larını alıyor.
Şimdi düşününce her defasında INSERT gibi sorguları yazmak çok mu mantıklı? Hayır. Artık orm kullanmanın da zamanı geldi ülkemiz açısından da önemli. reflection bilmek önemlidir.
Sizi yoracak tek bir şey olabilir o da sınıflar ve sınıflara oluşturacağınız proplar. Ama ona da ne gerek var ki yanılmıyorum değil mi.
Yeni tür ORM'ler procedure ya da klasik sorguları da ayırt edebiliyorlar. Bu bakımdan şanslı bir development süreci bulunmakta.
Bu facade ile temel insert, delete, update ve select işlemlerini yapacaksınız. ancak bu facade öyle olmalı ki eklediğiniz ne olursa olsun sorgu çalışmalı.
c# ile örnek vereyim. Eski usul yöntemde olay şuydu:
string sorgu = "INSERT INTO Persons(Name, LastName) VALUES('Ahmet', 'Durmaz');
sqlcommand cmd = new sqlcommand(sorgu, baglanti);
cmd.executenonquery();
Başlangıçta kısa görünüyor olabilir ancak bazı sıkıntılar var. Her işlem için bu sorguları tek tek yazacak mıyız? Bu sorular sorulabilir.
Adamlar şöyle düşünmüşler. Ben bir sınıf yaratayım. Adı Persons olsun. Bu sınıfın bazı property'leri olsun.
class Persons
{
public string name { get; set; }
public string lastname { get; set; }
}
Adam düşünmüş işte demiş ki ben bu sınıfa verileri şöyle yollayayım:
Persons p = new Persons();
p.name = "Ahmet";
p.lastname = "Durmaz";
Daha sonra bu adamlar durmamış tekrar düşünmüş
ORM adındaki Facade, oluşturulan Class türünden değer alsın. Olay şöyle:
ORM<persons>.Insert(p);
Yani Tip olarak yaratılan sınıfın adını alırken, crud işlemlerini instance üzerinden yapıyor.
Bu sayede de bu instance'da yer alan propların hem name hem de value'larını alıyor.
Şimdi düşününce her defasında INSERT gibi sorguları yazmak çok mu mantıklı? Hayır. Artık orm kullanmanın da zamanı geldi ülkemiz açısından da önemli. reflection bilmek önemlidir.
Sizi yoracak tek bir şey olabilir o da sınıflar ve sınıflara oluşturacağınız proplar. Ama ona da ne gerek var ki yanılmıyorum değil mi.
Yeni tür ORM'ler procedure ya da klasik sorguları da ayırt edebiliyorlar. Bu bakımdan şanslı bir development süreci bulunmakta.
Gündemdeki Haberler
Güncel Önemli Başlıklar