Bu iki yeni IoC aracıyla ilgili bir yazıya rastlarken, bu sitedeki makaleleri okuyordum. İlk önce hangisini öğrenmeliyim? Hangisinin ne zaman kullanılması gerektiğine dair bir özellik var mı?Castle Windsor veya Spring.NET - avantajlar ve dezavantajlar
cevap
Ne Castle.Windsor veya Spring.NET yeni.
- Windsor Castle sonlarında 2004 yılından bu yana yaklaşık edilmiştir
- Spring.NET O kadar iki karşılaştırılabilir DI Konteynerleri temelde aynı hizmet vermeyi amaçlıyoruz olan 2006 başlarında
beri var olmuştur Biri diğerinden önce öğrenmenize gerek yoktur ve ne zaman kullanılacağı konusunda herhangi bir belirtime başvurmanız gerekmez.
Yaklaşık yarım yıldır Castle Windsor'u kullanıyorum ve genellikle onunla mutluyum. Spring.NET Henüz bakmam ama very closely tied to the configuration system gibi görünüyor ve programatik kaydı desteklemiyor, eğer bu doğruysa gözlerimde büyük bir sakınca olurdu.
Kale Windsor ve Spring.NET, .NET için kullanılabilen tek DI Konteyner değildir.
Ben committer biriyim: Burada daha büyük bir liste var Castle projesine (Windsor dahil) bu yüzden önyargılı olabilirim, ama.
Windsor çok genişletilebilir, ihtiyaçlarınıza göre ayarlamanıza ve eğmenize izin verir. Çok sayıda akıcı kayıt API'sı sağlar, böylece tonlarca XML yazmak zorunda kalmazsınız. Ayrıca Windsor'u, ORM'ler iletişim çerçeveleri (WCF, NServiceBus) vb. Gibi diğer çerçevelerle entegre etmek için kullanabileceğiniz birçok uzantı da vardır.
Ayrıca, çok etkin ve yanıt veren bir topluluğa sahiptir, bu yüzden herhangi bir sorunuz varsa Çoğu zaman oldukça hızlı bir şekilde cevaplanırsınız.
Sanırım her ikisi de yapılandırma açısından daha iyi. Çok fazla fark yok ama ikisi de Birlik çerçevesinden daha iyi. Neden bağımlılık kontrolünde marshalbyrefobject ilişkisine ihtiyacın var? Ama eğer spring.net ve Castle Windsor'u karşılaştırırsak, ikisi de iyidir. Ancak soru, hangisinin tam konteyner çerçevesi olduğu gelir. Bağımlılık konusunda doğrulama için gerekenlere ihtiyacımız var gibi. Yani Winsler yardımcı programı başarısız. String.net'i Castle Windsor'la veya bu gibi bir şeyle karşılaştırmak aptalca bir şeydir, çünkü hepsi yardımcı programlardır ve ilkbahar tam bir konteyner çerçevesidir. Ve ağır olduğunu söyleyen tüm insanlar lütfen bellek sızıntısı sorunlarını kontrol edin. Bahar ya da Castle Windsor değil, kod yazmanın aptalca yolu. Nihayet cevap vermek gerekirse sadece DI kullanımı Windsor'a ihtiyacınız varsa, ancak herhangi bir çözüm için tam bir çerçeveye ihtiyacınız varsa, spring.net'i kullanın.
- 1. Castle Windsor Resolve çalışma saatinde
- 2. Castle Windsor kurucu parametreleri iletiliyor
- 3. Castle Windsor: Resolve() tarafından atılan istisnaları bastırır()
- 4. Windsor Castle arayüz türleri dizisi enjekte edemez
- 5. Castle Windsor yapılandırma dosyasında şifreler mi saklanıyor?
- 6. Castle-Windsor XML yapılandırması yoluyla ForwardedTypes'i destekliyor
- 7. Windsor Castle: belgeler için iyi kaynaklar, öğreticiler
- 8. Windsor Castle ile dizinden DLL alınıyor
- 9. Castle Windsor bileşen kaydı bağlamında "ForwardedTypes" nelerdir?
- 10. Castle Windsor, adlandırılmış örneği ve adlandırılmamış örneği hatalı
- 11. Castle Windsor: Belirli uygulamalarla birlikte kongre kaydını kullanma
- 12. Castle Windsor ile çoklu servis uygulamalarını enjekte edin
- 13. Castle Windsor: Bir bileşen kaydedildiğinde en iyi yol nedir?
- 14. Castle Windsor IoC Mülk Enjeksiyon basit nasıl yapılır
- 15. Windsor Castle - yapıcı parametrelere dayalı bileşenleri nasıl çözüleceği
- 16. Test nhibernate Castle httpModules içinde Windsor haritaları kaydedilmedi
- 17. Castle Windsor: Bir liste parametresini kapsayıcıya programlı olarak nasıl geçiririm?
- 18. Bir Castle Windsor konteyner örneğiyle kaydedilen tüm türleri listele
- 19. Castle Windsor için intellisense sağlayacak bir .xsd dosyasını nerede bulabilirim?
- 20. Castle Windsor: Tüm kayıtlı bileşenlerin çözülebilir olduğu nasıl test edilir?
- 21. Windsor Castle benim global.axax içinde koduna sahip meclisleri
- 22. Castle Windsor: Koddan bir constructor parametresi nasıl belirlenir?
- 23. Castle windor Koşullu bağımlılık ekleme
- 24. Spring.NET ile Onayları Yapılandırma
- 25. Simetrik Anahtar ve Bouncy Castle
- 26. Spring.net Web servisimi nasıl çalıştırabilirim?
- 27. Entegrasyona AutoFixture kullanma tekniği Castle Windsor kullanarak bir uygulamayı test etme tekniği
- 28. Kale ile Serilog'u kullanma Windsor LoggingFacility
- 29. Castle Windsor, bileşen zaten kaydedildikten sonra seçici ile ara uygulayıcılar uygular
- 30. Castle Windsor: Çözümü bir çağrı olmadan tescil etmenin bir yolu var mı?
Kale projesinde yer alıyorsanız, aktif ve yanıt veren bir topluluğa sahip olmanızın bir numaralı sebebinin, muhtemelen belgelerinizin çok az olması nedeniyle farkında olmanız gerekir.İki çerçeve arasındaki belgelerin karşılaştırılması bir yarışma değil ... Spring.net'in, yazılımın mevcut sürüm sürümü için yazılan 500 sayfalık bir kılavuza bir bağlantısı var. Castle'ın nasıl çalıştığını anlamak bir acıdır (özellikle de Windsor'a kadar). – wllmsaccnt
@wllmsaccnt Windsor’da yeniyim ve katılıyorum. Windsor belgeleri korkunç. –
@ wllmsaccnt @theneoindian Burada açıklığa kavuşturmak için iki nokta. Birincisi, Windsor'un doco'yu 2010'dan bu yana yeniden yazıyor. Bir başkası, hayatınızı basitleştirmesi beklenen bir araç 500p el kitabı gerektiriyorsa, yanlış yapıyor olabilirsiniz. –