«code-contracts» etiketlenmiş sorular

4
Neden kod sözleşmelerini kullanmalıyım?
Geçenlerde Microsoft'un kod sözleşmeleri çerçevesine rastladım. Belgeleri biraz okudum ve sürekli şunu sorarak buldum: “Statik bir analiz yapıp yapamadığı ve sık sık yapamadığı için neden bunu yapmak isteyeyim?”. Şimdi, zaten bunun gibi istisnalar dışında bir çeşit savunma programlama tarzım var: if(var == null) { throw new NullArgumentException(); } Ayrıca NullObject …

2
Bir kurucuda [Saf] ne zaman kullanılır?
.NET'te kod sözleşmeleri hakkında bilgi ediniyorum ve saf yapıcılar fikrini anlamaya çalışıyorum. Kod sözleşmeleri belgelerine durumları: Bir sözleşme kapsamında çağrılan tüm yöntemler saf olmalıdır; yani önceden var olan herhangi bir durumu güncellememeleri gerekir. Bir saf yöntemin, saf yönteme girdikten sonra oluşturulan nesneleri değiştirmesine izin verilir. Ve PureAttributebelgeler şöyle diyor: Bir …

6
Sözleşmeye Dayalı Programlama ve Birim Testi
Ben biraz savunmacı bir programcıyım ve Microsofts Kod Sözleşmelerinin büyük bir hayranıyım. Şimdi her zaman C # kullanamıyorum ve çoğu dilde sahip olduğum tek araç iddialar. Bu yüzden genellikle böyle bir kod ile sonuçlanır: class { function() { checkInvariants(); assert(/* requirement */); try { /* implementation */ } catch(...) { …

2
kod sözleşmeleri / iddiaları: yinelenen kontrollerle ne olacak?
Ben büyük bir yazma hayranları, sözleşmeler ya da kullandığım dilde mevcut her türlü çekler hayranıyım. Beni biraz rahatsız eden bir şey, tekrarlanan kontrollerle uğraşmak için ortak uygulamanın ne olduğundan emin değilim. Örnek durum: İlk önce aşağıdaki işlevi yazıyorum void DoSomething( object obj ) { Contract.Requires<ArgumentNullException>( obj != null ); //code …

4
Olay güdümlü bir mikro hizmet mimarisindeki değişiklikleri işleme
Olay odaklı bir mikro hizmet mimarisindeki değişiklikleri ele almak için seçenekleri araştırdığım bir araştırma projesi yapıyorum. Diyelim ki dört farklı hizmet aldığımız bir uygulama var. Bu hizmetlerin her birinin yerel verileri depolamak için kendi veritabanı vardır. Bu kurulumda, dört hizmet bir Olay Veri Yolu kullanarak birbirleriyle iletişim kurar. Bir hizmette …
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.