Şirin isimlendirme terimini buradan çektim (sayı 21). Sorun tanıdık değil kimseyi kurtarmak için, "Bir ile bitirmek böylece, Şirin adlandırma ortak bir önek ile ilgili sınıflar, değişkenler, vb bir demet prefixing eylemidir SmurfAccountView
bir geçer SmurfAccountDTO
için SmurfAccountController
" vb
Buna genel olarak duyduğum çözüm, bir şirin ad alanı yapmak ve şirin önekleri bırakmaktır. Bu genellikle bana iyi hizmet etti, ancak iki sorunla karşılaşıyorum.
Configuration
Sınıflı bir kütüphane ile çalışıyorum . Bu adlandırılan olabilirdiWartmongerConfiguration
ama Wartmonger ad alanında, bu yüzden sadece deniyorConfiguration
. Aynı şekildeConfiguration
çağrılabilecek bir sınıfa da sahibimSmurfConfiguration
, ancak bunun için Şirin olmalı. Benim kodunda yer vardırSmurf.Configuration
yanında görünürWartmonger.Configuration
ve tam isimlerini yazarak aksak ve kod az okunabilir hale getirir. Bir ile başa çıkmak daha güzel olurduSmurfConfiguration
(benim kodum olsaydı ve bir kütüphane değil)WartmongerConfiguration
.Service
Şirin ad alanımda denilen bir sınıf varSmurfService
.Service
Bir olan cephe Smurf işlerini çalışan bir kompleks Şirin kütüphanede üstünde. Şirin bir önek olmadan çok inanılmaz bir genelSmurfService
çünkü daha iyi bir isim gibi görünüyorService
. BununSmurfService
zaten genel, işe yaramaz bir isim olduğunu kabul edebilirim ve şirinleri uzaklaştırmak bunu daha belirgin hale getirdi. Ama isimlendirilebilirdiRunner
,Launcher
vb. Ve hala ne “SmurfLauncher
ne yaptığını bilmiyorumLauncher
, ama ne yaptığını biliyorumSmurfLauncher
. YaptıklarınınSmurf.Launcher
, tıpkı kadar belirgin olması gerektiğini savunabilirsin.Smurf.SmurfLauncher
, ama `Smurf.Launcher 'ın şirinleri başlatan bir sınıftan ziyade kurulumla ilgili bir tür sınıf olduğunu görebiliyordum.
Bunlardan biriyle başa çıkmak için açık ve kapalı bir yol varsa, bu harika olurdu. Olmazsa, sıkıntılarını hafifletmek için bazı yaygın uygulamalar nelerdir?
SmurfJob
s'yi başlatıyor veya teknik olarak Smurf belgelerinin dili ile tutarlı olmaları için çalıştırıyor. Bunun ve diğer cevapların ışığında, adını SmurfService
değiştireceğim SmurfJobRunner
. Görünüşe göre 1 numara beklediğim gibi hiçbir dilde agnostik en iyi çözünürlüğe sahip değil. Ile gitmek SmurfConfiguration
doğru çağrı olacağını örnekleri görebilirsiniz , ama benim durumumda Configuration
bile güçlük ile bile en iyisi olduğunu düşünüyorum Wartmonger.Configuration
.
Smurf.Configuration
ve SmurfConfiguration
farklı hissediyor? Elbette bu fazladan değil, değil mi? ( Config
Boy uzunluğu sorun ise kısalır .) Sorunu olmayan bir sorunu Smurf.Configuration
var mı SmurfConfiguration
?
Smurf.Launcher
Şirinleri fırlatıyor mu , yoksa fırlatıyor muSmurfJob
? Belki çağrılabilirdiSmurf.JobLauncher
?