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ğ oluşturma / dizeler / MVVM vb. İle ilgili olabilir ve başlangıçta yer aldığı projeye özgü olmayan genel olarak faydalı bir yöntemdir.
Bu kodu tekrar kullanmanın standart yolu, yeniden kullanılabilir kod için bağımsız bir proje oluşturmak ve ihtiyaç duyduğunuzda bu projeye başvuru yapmak olacaktır. Bununla ilgili sorun, idealden daha az iki senaryodan birinde sona ermemizdir:
- Her biri, tekrar kullanmamız gereken küçük sınıfları / yöntemleri barındıran onlarca / yüzlerce minik proje ile bitiyoruz.
.DLL
Sadece küçük bir kod parçası için tamamen yeni bir ürün yaratmaya değer mi? - İlişkisiz yöntem ve sınıflardan oluşan büyüyen bir koleksiyona sahip tek bir proje ile son buluruz. Bu yaklaşım, çalıştığım bir şirketin yaptığı şeydi;
base.common
Yukarıda bahsettiğim şeyler için klasörleri olan bir projeleri vardı: networking, string manipulation, MVVM vb. Son derece kullanışlıdır, ancak ihtiyaç duymadığınız tüm alakasız kodla gereksiz yere yönlendirilmişlerdir.
Yani sorum şu:
Bir yazılım ekibi projeler arasında küçük kod parçalarını yeniden kullanma konusunda en iyi sonucu nasıl veriyor?
Özellikle, bu alanda politikaları olan veya bu ikilemi karşılaştığım gibi şahsen karşı karşıya kalmış bir şirkette çalışan biri varsa özellikle ilgileniyorum.
not: "Project", "Solution" ve "Reference" kelimelerini kullanmam, Visual Studio'daki .NET geliştirme geçmişinden geliyor. Ancak bu sorunun dil ve platformdan bağımsız olduğundan eminim.