«dry» etiketlenmiş sorular

DRY, "Kendinizi Tekrarlama" nın kısaltmasıdır. Bu paradigma, kod ve veri yedekliliğinden kaçınmayı savunur.

12
Projeler arasında küçük kod parçacıklarını paylaşmak için en iyi yöntemler
Her zaman DRY prensibini kesinlikle iş başında takip etmeye çalışırım; her zaman tembellikten kod tekrarladığımda, bu kodu iki yerde tutmam gerektiğinde sonra tekrar ısırır. Ancak çoğu zaman , birbirine referans veremeyen iki projede tekrar kullanılması gereken küçük yöntemler (belki de 10 - 15 kod satırı) yazarım . Bu yöntem, ağ …

15
DRY neden önemlidir?
Oldukça basit, neden tüm ihtiyacım için çalışan kod ve tüm ihtiyacım olan aynı küçük birkaç tweaks ile birkaç kez tekrarlanırsa ölçeklenebilir veriler yazmak isteyeyim? Bunu daha sonra herhangi bir zamanda tekrar düzenlemem gerekmiyor. Sadece gitmek için daha az iş gibi görünüyor ... function doStuff1(){/*.a.*/} function doStuff2(){/*.b.*/} function doStuff3(){/*.c.*/} Ve eğer …
81 code-quality  dry 

3
“Mirasa ilişkin kompozisyon” “kuru ilke” yi ihlal ediyor mu?
Örneğin, diğer sınıfların genişletmesi için bir sınıfım olduğunu düşünün: public class LoginPage { public String userId; public String session; public boolean checkSessionValid() { } } ve bazı alt sınıflar: public class HomePage extends LoginPage { } public class EditInfoPage extends LoginPage { } Aslında, alt sınıfın geçersiz kılacak bir yöntemi …

1
DRY ilgisiz, ancak neredeyse aynı kod
Neredeyse aynı olan bazı kodlar var, ancak ana değişkende bunlar arasında kalıtım olmadan tamamen farklı türler kullanılıyor. Özellikle, C # ve VB.NET için Roslyn ile aşağıdaki türlerde bir analizör yazıyorum: Microsoft.CodeAnalysis.CSharp.Syntax.AttributeSyntax Microsoft.CodeAnalysis.VisualBasic.Syntax.AttributeSyntax Kodun aynı şeyi yaptığını merak ediyorum, mümkün olduğunca DRY'yi tutmalı, mümkün olduğunca az ayırmalı (ancak tür dışında aynı) …
34 c#  design  dry 

5
Mantıklı (ama) karmaşık kalıtımla ilgili pek çok küçük sınıf
Gelecekte iyi OOP tasarımı, temiz kod, esneklik ve kod kokularından kaçınmak açısından neyin daha iyi olduğunu merak ediyorum. Sınıf olarak temsil etmeniz gereken çok sayıda benzer nesneye sahip olduğunuz görüntü durumu. Bu sınıflar belirli bir işlevselliğe sahip değildir, sadece veri sınıflarıdır ve sadece adlarına (ve bağlamına) göre farklıdır Class A …

9
Yinelenen kodu kaldırmak için karmaşıklık ekleme
Hepsi genel bir temel sınıftan miras kalan birkaç sınıfım var. Temel sınıf, birkaç tür nesneden oluşan bir koleksiyon içerir T. Her alt sınıf, nesne koleksiyonundan enterpolasyonlu değerleri hesaplayabilmelidir, ancak alt sınıflar farklı türleri kullandığından, hesaplama sınıftan sınıfa küçük bir miktar değiştirir. Şimdiye kadar kodumu sınıftan sınıfa kopyaladım / yapıştırdım ve …

8
"Kullan" anahtar kelimesini kullanırken DRY prensibi nasıl uygulanır?
Bu yöntemleri göz önünde bulundurun: public List<Employee> GetAllEmployees() { using (Entities entities = new Entities()) { return entities.Employees.ToList(); } } public List<Job> GetAllJobs() { using (Entities entities = new Entities()) { return entities.Jobs.ToList(); } } public List<Task> GetAllTasksOfTheJob(Job job) { using (Entities entities = new Entities()) { return entities.Tasks.Where(t => …

3
Ayrılma REST'te KURU mu?
Varolan bir Java API'sinin işlevlerinin çoğunu ortaya çıkarmak için bir REST API oluşturuyorum. Her iki API da kuruluşumda dahili kullanım içindir; Harici kullanım için tasarım yapmak zorunda değilim. Her iki API üzerinde de etkim var ancak REST'i uyguluyorum. Java API yerel uygulamalar için kullanılmaya devam edecektir ("kullanımdan kaldırılmamaktadır"), ancak REST …
19 java  api  rest  coupling  dry 

4
İstemci tarafı ve sunucu tarafı doğrulamalarını tek bir yerden yönetme
Bir Bu durumda gemide% 100 değilim gerektiğini kesinlikle istemci tarafı ve sunucu tarafı veri doğrulama hem kullanın. Ancak çalıştığım çerçevelerde ve ortamlarda gördüğüm yaklaşımlar hiç KURU olmamıştı. Çoğu zaman bir plan veya kalıp yoktur - onaylar model spesifikasyonunda yazılır ve onaylar görünümde formda yazılır. (Not: İlk deneyimimin çoğu RaQ, Sinatra …

1
Üçüncülük Kuralı'nda üçüncü defaya kadar beklemek gerek mi?
Ben sadece wikipedia'da " Üç Kural " makalesine rastladım Üçüncüsü, çoğaltılan bir kod parçasının ne zaman yeni bir yordamla değiştirileceğine karar vermek için bir kod yeniden düzenleme kuralını belirtir. Kodun bir kez kopyalanabileceğini, ancak aynı kod üç kez kullanıldığında, yeni bir prosedüre çıkarılması gerektiğini belirtir. Kural, Yeniden Düzenleme'de Martin Fowler …

6
Arayandaki giriş parametresinin doğrulanması: kod çoğaltma?
Fonksiyonun giriş parametrelerini doğrulamak için en iyi yer neresidir: arayanda veya fonksiyonun kendisinde? Kodlama tarzımı geliştirmek istediğim için, bu konuda en iyi uygulamaları veya bazı kuralları bulmaya çalışıyorum. Ne zaman ve daha iyi. Önceki projelerimde, işlevin içindeki her giriş parametresini kontrol edip tedavi ederdik (örneğin, boş değilse). Şimdi, bazı cevaplarda …

5
DRY'yi kuplajı arttırmadan uygulamak mümkün müdür?
Bir F fonksiyonunu uygulayan bir yazılım modülümüz A olduğunu varsayalım. Başka bir B modülü F 'ile aynı fonksiyonu uygular. Yinelenen koddan kurtulmanın birkaç yolu vardır: A'nın B'den F 'kullanmasına izin verin. B'nin A'dan F'yi kullanmasına izin verin. F'yi kendi modül C'sine yerleştirin ve hem A hem de B'yi kullanmasına izin …

3
DRY ve OOD ile tanıtılan kod bağlantısı
DRY vs Code coupling hakkında rehberlik arıyorum. Kodumu çoğaltmayı sevmiyorum ve ayrıca ilgisiz modüller arasında kod bağlamayı sevmiyorum. Çoğaltma tanıtıldıktan bir yıl sonra aynı kod tekrar bulursam bu yüzden yinelenen kodu refactor. Ancak, gerçek dünyanın çok daha öngörülemez olduğu durumları giderek artan bir şekilde yaşadım ve kodu yeniden düzenledikten sonra, …
14 design  dry  coupling 

2
Sabit C ++ KURU Stratejiler
Önemsiz C ++ const ile ilgili yinelemeden kaçınmak için, const_cast'in çalışacağı ancak const olmayan dönen özel bir const işlevinin çalışmadığı durumlar var mı? Scott Meyers'ın Etkili C ++ öğesi 3'te, statik bir dökümle birleştirilen bir const_cast'in yinelenen kodu önlemek için etkili ve güvenli bir yol olabileceğini, ör. const void* Bar::bar(int …
14 c++  dry  const 

5
Veri doğrulamayı destekleyen bir ORM için, kısıtlamalar veritabanında da uygulanmalıdır mı?
(ActiveRecord) modellerime ek olarak her zaman veritabanı düzeyinde kısıtlamalar uyguladım. Ama bunun gerçekten gerekli olup olmadığını merak ediyordum? Biraz arka plan Son zamanlarda bir model için temel otomatik zaman damgası oluşturma yöntemini birim test etmek zorunda kaldım. Test normalde modelin bir örneğini oluşturur ve doğrulama yapmadan kaydeder. Ancak tablo tanımında …
13 database  orm  validation  dry 

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.