SORU
8 Mart 2010, PAZARTESİ


Varlık Çerçevesi güvensizlik - ilgili .NET 4?

Büyük bir proje için bir ORM karar ediyorum ve ADO.NET Varlık için gidip belirlendi Çerçeve, gemi ile özellikle yeni versiyonu .NET 4. EF bilgi için benim arama sırasında nasıl üzerine emin değilim ADO .NET Entity Framework Vote of No Confidence tökezledi.

Hayır güvenoyu bazen, 2008 yılında Microsoft EF v1 için belirli bir eleştiri dinlemeye ikna etmek için yazılmıştır.

Açık olup olmadığını iddia güvensizlik Oyu hala geçerlidir (made in .Eğer başka çözümler kullanmak için yeterince ciddi olup olmadıklarını NET 4). Arabiriminin olgun bir alternatiftir, ama ne getireceğini bilmiyorum. Esas geliştirici destek, VS ile entegrasyon ve sayabiliyorum çünkü genellikle Ms çözüm yolunda daha fazla meyilli değilim.

Memnun olurumörneklersorunları Hiç Güven Oyu söz nasıl etkilediğini gerçek dünya projeleri.Daha da önemlisi, iddialarını orada yaptı hala EF ilgili .NET 4?

CEVAP
8 Mart 2010, PAZARTESİ


Her zaman güven "eğer Arabiriminin bir klon sanki EF kullanmak için bir girişim oldu." oy altlık ne bu kadar hissetmemiştim Biraz daha önce başarısız olsun olsa da olmasa da EF 4 çakma muhtemelen başarısızlık sonunda olacak bir Arabiriminin sanki EF kullanmaya çalışırken değil,. Önemsiz bir örnek olarak, çoğu insan EF verimli olabileceğini sanmıyorum, oysa asgari olarak Arabiriminin ETMENİZ halinde, eğer varsa, kullanınhiçETMENİZ oldukça yoğun kullanmadığınız sürece.

Diğer taraftan, oldukça başarılı kullanarak EF 1 kendi şartları ve yönetilen için izin talepleri, insanların içinde blog yazıları için yol yapım çalışması beni. İleri EF yeni özellikleri çok 4 ama iyi yapılandırılmış EF 1 Bir proje üzerinde herhangi bir zaman çalışmaktan mutluluk duyarım kullanarak için sabırsızlanıyoruz. (Bu konuda, Arabiriminin, çok çalışmaktan memnun olurum, ve EF gibi çalışmadığı için onu eleştirmek olmaz.)

Önermek, biraz hassas bir şekilde çalışıyorum, bu karar için önce "iddiaları gensoru Oylama yaptı hala geçerli (.NET 4)..." İlk eğer bu iddialar olsaydı karar vermelisinizsenin için geçerli bir yolsanaiş.Eğer O/R kişisel anlayış kablolu Arabiriminin, EF 4 muhtemelen hala sınıf bir saniye gibi gelecek. Diğer taraftan, çalışan EF şekilde öğrenmek için istekli iseniz, o zaman muhtemelen bile EF 1 duymuşsunuzdur daha iyi görünecek.

"Güven" iddiaları doğrudan ve ikisi de madde incelemek ve EF 4'de neler değişti: . adresine

OLAĞANDIŞI VARLIKLARI VERİ YÖNÜ BOZULMUŞ VARLIK MİMARİLERİ YOL AÇAR ODAK:

Bu Varlık yapısının varlık veri yanlış bir modeldir. (Ya da, bir fark görüşüm, Eğer isterseniz.) Ama her iki şekilde de, bir özellik, bir hata değil. Varlık Çerçevesi, veri hizmetleri, sadece özellikle O/R modelleme daha genel bir dava etrafında tasarlanmıştır. Varlıkları üzerine koyarak davranışları CORBA tarzı bir felaket veri hizmeti açar döndü. , ORM blackbox ne çıkarsa çıksın, Varlık Çerçeve modeli ile sıkışmış bir dereceye kadar, nereye ORMs aksine iş türleri üzerine proje bekleniyor. Bu durumdaeşlenmiş varlık türlerini bile hayata olacak.

Bu Varlık Çerçeve modeli ve diğer pek çok ORMs arasında önemli bir fark vardır. Şahsen, O/R ayırma iş davranışları onları bir araya koymasında daha biraz daha temiz haritalama buluyorum. Bu fikri kabul etmek zorunda değilsin, ama açıkça bir tasarım kararı, bu bir kusur değil.

FAZLA KODU TEMBEL YÜKLEME: EKSİKLİĞİ İLE BAŞA ÇIKMAK İÇİN GEREKLİ

EF iyi 4 ya da daha kötüsü, tembel yükleme vardır.

"Tembel yükleme çok kolay fazla veritabanı sorguları oluşturmak için yapar çünkü. "iyi yada kötü derim İyi kaputun altında neler olduğunu yakından devam ettiğin sürece çalışır, ama çoğu insan bunu yapmaz. projection tembel yükleme, istekli yükleme veya açık yükleme için daha iyi bir alternatif olmak çoğu zaman buluyorum.

Hala, tembel yükleme uygun olduğu zamanlar vardır. EF 4 belirtti gördüğüme sevindim.

PAYLAŞILAN, KANONİK MODELİ EN İYİ UYGULAMALAR YAZILIM ÇELİŞİYOR:

Destekleyen hatta bazı yazıları tutarlı İngilizce, örneğin değil gibi bu zor ve daha çok çalışmak

Bozulmaya meyilli kanonik model yaklaşımı Varlık Çerçeve çizgisinde ayrıntılı takım eksikliği için zor değildi.

Bu bölümdegörünüyorVarlık Çerçevesi karmaşık bir sistem için tek, standart bir veri modeli kullanarak doğru gereksinimi, ya da en azından güçlü bir önyargı, bir çeşit getiren öneririz. Katılıyorum emin değilim, ama zor, bu bölümde herhangi spesifik bir örnek olmadığı göz önüne alındığında. Sen bu konuda benim kendi önyargıları söylerim, kabul ya da benimle aynı fikirde

Genellikle büyük bir sistemi için tek bir model, ne kadar büyük bir sistem aslında bağlı olarak kullanmak için bir hatadır. Varlık hiçbir Çerçeve, tek bir model kullanmak gerekir, ancak. 1, Kolay çoklu modeller birleştirmek için yapmak için kendi yolumdan gitmez sürüm öte yandan, Varlık Çerçevesinde, özellikle üzerinde.

Şimdi, karmaşık bir sistem için büyük, tek bir uygulama, tek, büyük bir veri modeli olarak bir hata büyük olabilir. Varlık Çerçevesi kolay aşırı büyük bir uygulama içine birçok küçük modelleri birleştirmek için yapmak doğru olmaz; bu sadece başka bir sorun, yerini alacak.

Öte yandan, mantıklı ve kolay hizmetleri sorun alanı uygun bir şekilde bölümlenmiş büyük bir sistem inşa etmek için önemli olduğunu düşünüyorum. XML veri hizmetleri, Varlık çerçevesinden ayrı bir teknoloji, ama çok iyi Varlık Çerçevesinde destekleyen, bunun için yararlı olduğunu düşünüyorum.

Varlık Çerçevesi, bazı gelecek sürümünde, daha kolay gerektiğinde tek bir uygulama içine iki ya da üç model birleştirilmesine yardımcı olabileceğini düşünüyorum. Bu şimdi yapabilirsiniz, ama el ile bazı işler vardır. Ama yukarıda da dediğim gibi, "/aşırı geniş bir uygulama oluşturulmasını teşvik etmek. kolaylaştırarak aşırı büyük veri modeli" bir sorunu çözmek istemem

SEBAT CEHALET EKSİKLİĞİ İŞ MANTIĞI, OKUMA, YAZMA VE DEĞİŞTİRMEK İÇİN DAHA ZOR, GELİŞTİRME VE BAKIM MALİYETLERİ ABARTILI BİR ORANDA ARTMASINA NEDEN OLUR:

Bu bölüm hatalı buluyorum hangi iddialarda bulunuyor:

Varlık Çerçevesi Kansız Etki alanı Modeli anti-desen varlık sınıfları iş mantığı dahil cesaret kırıcı tarafından teşvik eder.

Yukarıya bakın. Varlık türlerinin işi nesne uzayda ilişkisel mekan arasında bir harita olduğunu düşünüyorum. Tek başına Sorumluluk Prensibi, bu tür sadece kendi işlerini değiştiğinde değiştirilmesi gerekir. Eğer iş süreçlerini değiştirmek, o zaman bu sorumluluğa O/R eşleme ile bir ilgisi yoktur. Belki de diğer ORMs sınırlamaları bu sorumlulukları ayıran teknik engel koyma. Eğer tasarım saflık maliyeti çok fazla ise güzel bir teknoloji dikte zaman kuralları yıkmak,. Ama ben şiddetle davranış-daha az varlık türleri yaklaşımı tercih eder.

Mevcut durumu, EF varlık sınıfları etkili birim bağımsız olarak veritabanı test edilemez.

This is just wrong. Bunu yazan her kimse ne konuştuklarını anlamadı. Birim testlerimiz hiçbiri DB touch, şimdiye kadar, ve birçok EF içerir.

Şu ana kadar bu bölümün Başlığı madde gider gibi, EF 4 için bir değişiklik yok. Şimdi mümkünse bu tasarım yardımcı olursa tamamen kalıcılık-cahil varlık türleri var. Ancak, sözcükleri Varlık Çerçeve sürümü, POCOs ' üzerine proje için mümkün olmuştur. Sebat cehalet her zaman gerekli zaman mevcut olmuştur. Varlık türleri üzerinde ısrar cehalet olan değişim sebat-cahil bir nesne ile izleme kendileri verir. Bazı durumlarda da yararlı olabilir. Ancak belge çok yapar noktasının etkisini azaltır, hangi birim testi hakkında sahte iddiaları, daha durumlarda oldukça küçük bir alt kümesi.

AŞIRI BİRLEŞTİRME TAKIM ORTAMLARDA KAYNAK KONTROLÜ İLE ÇATIŞMALAR:

Birleştirme XML aslında o kadar zor mu? Eğer öyleyse, belki de yeni bir birleştirme aracı içine bakmak gerekir. Bu sorunlu bulmuyorum.

Ancak, yine belge iddiaları daha çok dar olsa da burada gerçek bir sorun var. Yerine tekrar kendime, sadece my post on that subject doğru bir işaret edeceğim.

EF 4, bir çok farklı dosyalara bir model ayırmak için kod-ilk XML modelleri ziyade modellerini kullanabilirsiniz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Hudson Music

    Hudson Music

    13 Mart 2007
  • Kanál používateľa McsFuego

    Kanál použ

    12 EKİM 2011
  • Pál Zoltán Illés

    Pál Zoltán

    30 NİSAN 2007