bugün
- 21 ekim 2026 lille galatasaray maçı51
- iş yok bahanesiyle bütün gün evde yatmak4
- sözlük erkeklerinin bicepsleri71
- kimsenin memleket takımı tutmaması13
- hesabını gizleyen erkek yazar11
- akplisin yani27
- sevgili olmanın çok saçma bir şey olması7
- duanın bir şeye yaramaması28
- eski sevgilinin bıraktığı iz8
- üzüntüsünü kimseye anlatmayan insan8
- aşk13
- ısparta da gece hayatı14
- kitap okumanın hiçbir faydasının olmaması2
- 21yy cehaletin yüzyılı olacak2
- introsu atlanılmayan diziler6
- x de çinliler ve türklerin kavgası11
- fon vurgunu52
- kürtaj hak mıdır sorunsalı11
- hiçbir şey yapmak istemediğinizde ne yapıyorsunuz7
- benim bileğim yamuk mu10
- twitter da türklerle çinliler arasındaki kavga2
- 26 ekim 2026 galatasaray fenerbahçe maçı15
- ajdar grup kursa muhtemel diğer üyeler6
- reddedilince öldürmek7
- kolye140
- berke özer7
- lezbiyen arkadaşınızı kız arkadaşınızla tanıştırma5
- ya aşkım senin neden bicepslerin yok diyen kız9
- gaye su akyol4
- vücut geliştirme ve eşcinsellik8
- sözlük erkeklerinin göğüs kasları12
- gönlü zengin kalbi güzel erkek12
- 1 kızın peşinden 10000 erkeğin koşması4
- kendine hayır demek4
- fatma betül sayan kaya22
- modacı erkeklerin top olması7
- keşke kadın olsaydım diyen erkek2
- bir oturuşta yarım ekmek tost yiyen erkek10
- samsun gece hayatı5
- sözlükteki fenerbahçeliler6
- aykirikadin13
- azerbaycan'ın 31 türk vatandaşını istememesi4
- anın görüntüsü23
- işçileri köle gibi çalıştıran türk patronlar7
- terlikle döven anne14
- götü güzel cüzdanı zengin sözlük erkekleri9
- akşamki tantana15
- sözlükte sevişilecek kız olmaması4
- hiç uçağa binmemek7
- arkadaşlar nerdesiniz4
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.
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.
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.
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.
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.
Gündemdeki Haberler
Güncel Önemli Başlıklar