bugün
- türk erkeklerindeki iğrenç detaylar9
- sokak hayvanları uyutulacak73
- 23 mayıs 2024 beşiktaş trabzonspor maçı25
- icardi190538
- mert hakan yandaş17
- e f e8
- aydinoglu bombala21
- kocaeli de asansöre sıçan adam8
- 6 ayda yazılımcı olmak11
- ismail kartal19
- mecidiyeköy metrosunda intihar eden kız10
- 23 mayıs 2024 ali koç basın toplantısı11
- kızlar kendi aralarında ne konuşuyor11
- türk kızları neden gülümsemiyor11
- dünya türkiye'nin neyini kıskanıyor13
- sjsjsjsjsjsjsjsjsjsjsj sjs8
- bik bik için diktiğim etek17
- akpnin hala bedava kek vaadini tutmaması13
- insan olmaya ceyrek kala8
- anın görüntüsü9
- galatasaray20
- türkiyedeki rusların gövde gösterisi yapması12
- geldi yine deli8
- age of empires'in üstüne oyun var mı12
- afganistan yardımlaşma derneği başkanı16
- 22 mayıs 2024 atalanta bayer leverkusen maçı9
- rusların en iyi olduğu şeyler25
- erkeklerin hep fotoğraf istemesi15
- iran'ın teşekkür mesajında türk bayrağı koymaması14
- erkeklerin sözlükte durma nedeni10
- hangi sözlük erkeğiyle evlenmek istersin8
- spor salonuna gitsem erkekler popoma bakar mı26
- unutulan ünlüler11
- işid'in bütün yaptıkları meşrudur10
- karınızla gratise gider misiniz11
- sokak köpeklerini isteyen evinde baksın9
- fazla bilinmeyen harika şeyler8
- ankarayı öven tip17
- manyak olmaya karar verdim9
- kitap okumanın zararlı ve gereksiz olması13
- kaza yerinin tespiti iran ihası tarafından yapıldı8
- bugün üike olarak resmi yastayız11
- bir galatasaraylının kulağına fred diye fısıldamak12
- insanlara olan inancınızı ne zaman kaybettiniz9
- icardi1905'i silip atmak19
- escort ile evlenmek10
- şişmanlar ölünce nereye gider8
- ellerim bos gonlum hos9
- kilo almak için bik bikle evlenmek10
- alex de souza vs fred9
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