«c#» etiketlenmiş sorular

C #, .NET platformuna paralel olarak Microsoft tarafından oluşturulan çok parametreli, yönetilen, çöp toplanan nesne yönelimli bir programlama dilidir.

5
Ne zaman ve neden boşluk kullanmalısınız (örneğin, bool / int yerine)
Bazen bir geliştiricinin işlev için kritik olmayan bir şey döndürmeyi seçtiği yöntemler ile karşılaşıyorum. Demek istediğim, koda bakarken, göründüğü kadar güzel bir şekilde çalışıyor voidve bir an düşündüğümden sonra, "Neden?" Bu size tanıdık geliyor mu? Bazen bunun bir gibi bir şey dönmek daha iyidir çoğunlukla kabul ediyorum boolya intziyade sadece …


5
Yuvalanmış Sınıfları ne zaman ve neden kullanmalı?
Nesneye Yönelik Programlama kullanarak, bir sınıf (iç içe geçmiş sınıf) içinde bir sınıf oluşturma gücümüz var, ancak 4 yıllık kodlama deneyimimde asla iç içe geçmiş bir sınıf oluşturmadım. Yuvalanmış sınıflar ne işe yarar? Bir sınıfın yuvalanmışsa özel olarak işaretlenebileceğini ve o sınıfın tüm özel üyelerine içerik içeren sınıftan erişebileceğimizi biliyorum. …

7
İşlenmeyen istisnalar nasıl tedavi edilir? (Uygulamayı sonlandırın, canlı tutun)
Bir masaüstü uygulamasında işlenmeyen bir istisna olduğunda, en iyi uygulama nedir? Kullanıcıya bir mesaj göstermeyi düşünüyordum, böylece desteğe başvurabilecekti. Uygulamayı yeniden başlatması için kullanıcıya öneririm, ancak zorlamak değil. Burada tartışılana benzer: ux.stackexchange.com - Beklenmeyen uygulama hatalarını ele almanın en iyi yolu nedir? Proje bir .NET WPF uygulamasıdır, bu nedenle tarif …

4
C # 6.0'ın yeni boş koşullu operatörü Demeter Yasasına aykırı mı?
Demeter Kanunu şöyle der: Her ünite diğer üniteler hakkında sadece sınırlı bilgiye sahip olmalıdır: sadece mevcut ünite ile ilgili "yakından" olan üniteler. Her birim sadece arkadaşlarıyla konuşmalıdır; yabancılarla konuşma. Sadece yakın arkadaşlarınızla konuşun. C # 6.0 boş koşullu işleç adı verilen yeni bir işleç başlattı . IMHO, kodlamayı kolaylaştırır ve …


5
Java / C # neden RAII uygulayamıyor?
Soru: Java / C # neden RAII uygulayamıyor? Açıklama: Çöp toplayıcının deterministik olmadığını biliyorum. Dolayısıyla, geçerli dil özellikleri ile bir nesnenin Dispose () yönteminin kapsam çıkışında otomatik olarak çağrılması mümkün değildir. Ancak böyle belirleyici bir özellik eklenebilir mi? Benim anlayış: RAII uygulamasının iki gereksinimi karşılaması gerektiğini düşünüyorum: 1. Bir kaynağın …

11
Arabirimi temel sınıfla aynı dosyada bildirmek iyi bir pratik mi?
Değiştirilebilir ve test edilebilir olmak için normalde mantıkla hizmetlerin bir arayüze sahip olması gerekir, örneğin public class FooService: IFooService { ... } Tasarım açısından buna katılıyorum, ama bu yaklaşımla beni rahatsız eden şeylerden biri, bir hizmet için iki şeyi (sınıf ve arayüz) ve ekibimizde normalde iki dosya (bir dosya) bildirmeniz …

6
Birim testinde beklenen sonuçların kodlanması gerekir mi?
Bir birim testin beklenen sonuçları kodlanmış mı yoksa başlangıç ​​durumuna getirilmiş değişkenlere bağlı mı olabilir? Kodlanmış veya hesaplanmış sonuçlar birim testine hata verme riskini arttırır mı? Göz önünde bulundurmadığım başka faktörler var mı? Örneğin, bu ikisinden hangisi daha güvenilir bir formattır? [TestMethod] public void GetPath_Hardcoded() { MyClass target = new …
29 c#  unit-testing 

3
İsteğe bağlı parametreler veya aşırı yüklenmiş yapıcılar
Bir uygulama yapıyorum DelegateCommandve yapıcı (lar) ı uygulamak üzereyken, aşağıdaki iki tasarım seçeneğiyle karşılaştım: 1: Birden fazla aşırı yükleniciye sahip olmak public DelegateCommand(Action<T> execute) : this(execute, null) { } public DelegateCommand(Action<T> execute, Func<T, bool> canExecute) { this.execute = execute; this.canExecute = canExecute; } 2: İsteğe bağlı parametreli yalnızca bir kurucuya …

8
C # Generics - Gereksiz metodlardan nasıl kaçınılır?
Buna benzeyen iki sınıfım olduğunu varsayalım (ilk kod bloğu ve genel sorun C # ile ilgilidir): class A { public int IntProperty { get; set; } } class B { public int IntProperty { get; set; } } Bu sınıflar hiçbir şekilde değiştirilemez (3. parti meclisinin bir parçasıdır). Bu nedenle, …
28 c#  generics 

6
Genel Depoya Gerçek Bir Avantaj Var mı?
Yeni bir uygulama için Genel Depo oluşturmanın avantajları hakkında bazı makaleler okuyordum ( örnek ). Fikir güzel gözüküyor, çünkü aynı depoyu birkaç farklı varlık türü için aynı anda birkaç şey yapmak için kullanmama izin veriyor: IRepository repo = new EfRepository(); // Would normally pass through IOC into constructor var c1 …


4
Durdurma vs Enjeksiyon: Bir çerçeve mimarisi kararı
Tasarıma yardım ettiğim bu çerçeve var. Bazı ortak bileşenler kullanılarak yapılması gereken bazı ortak görevler vardır: Özellikle olayları günlüğe kaydetme, önbelleğe alma ve yükseltme. Bağımlılık enjeksiyonunu kullanmanın ve tüm bu bileşenlerin her bir servise (örneğin özellikler olarak) sunulmasının daha iyi olup olmadığından emin değilim veya hizmetlerimin her yöntemi üzerine yerleştirilmiş …

14
Genel olarak programlama konusunda tavsiyeler arayan Newbie [kapalı]
Programlamada kötü olabileceğiniz bir zamanı hatırlamak için bazılarınıza ihtiyacım var ... Birkaç aydır yeni işimde (yazılım geliştiricisi olarak) bulundum, deneme süresi doldu. Çok az programlama deneyimine sahip (yalnızca C ++) ve şu anda asp.net MVC ve silverlight ile çalışıyorum. Bu yüzden şirketin üzerinde çalıştığı bir web sitesi var ve daha …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.