Bu sorunu aşmak için kesinlikle çok zaman harcayabilirsiniz.
Standart günlük uygulamalarına sahip diller için, standart günlük kaydını her sınıfta doğrudan başlatmanız yeterlidir.
Kurallı bir uygulaması olmayan diller için, bir günlük cephesi çerçevesi bulmaya çalışın ve buna sadık kalın. slf4j Java için iyi bir seçimdir.
Şahsen tek bir somut günlük uygulamasına bağlı kalmayı ve her şeyi syslog'a göndermeyi tercih ederim. Tüm iyi günlük analizi araçları, birden çok uygulama sunucusundan gelen sysout günlüklerini kapsamlı bir rapora birleştirebilir.
Bir işlev imzası bir veya iki bağımlılık hizmetinin yanı sıra bazı "gerçek" bağımsız değişkenler içerdiğinde, bağımlılıkları en son yerleştiririm:
int calculateFooBarSum(int foo, int bar, IntegerSummationService svc)
Benim sistemleri sadece beş veya daha az tür hizmetleri sahip olma eğilimi beri, hep emin hizmetler tüm işlev imzalar arasında aynı sırayla dahildir olun. Alfabetik sıralamalar herhangi bir şey kadar iyidir. (Kenara: Muteks işleme için bu metodolojik yaklaşımı sürdürmek de kilitlenme geliştirme şansınızı azaltacaktır.)
Kendinizi uygulamanız boyunca bir düzineden fazla bağımlılık enjekte ederken bulursanız, sistemin muhtemelen ayrı alt sistemlere bölünmesi gerekir (mikro servisler demeye cesaret edebilir miyim?).