Benzersiz bir rôle sahip olmakla ilgili .
Her sınıfa bir rol adı ile devam edilmelidir. Bir rol aslında bir bağlamla ilişkili bir (fiil) fiildir.
Örneğin :
Dosya bir dosyanın erişimini sağlar. FileManager File nesnelerini yönetir.
Kaynak bir Dosyadan bir kaynak için veri tutma. ResourceManager tüm Kaynakları saklar ve sağlar.
Burada, "yönet" gibi bazı fiillerin başka bir fiil dizisini ima ettiğini görebilirsiniz. Tek başına fiiller, çoğu zaman sınıflardan çok fonksiyon olarak düşünülür. Fiil, kendi ortak bağlamı olan çok fazla eylem ifade ediyorsa, o zaman kendi içinde bir sınıf olmalıdır.
Dolayısıyla, fikir yalnızca sınıfın ne olduğu hakkında benzersiz bir rol tanımlayarak basit bir fikir edinmenize izin vermektir, bu, birkaç alt rolün (üye nesneler veya diğer nesneler tarafından gerçekleştirilir) anlaşması olabilir.
Sık sık içinde birkaç farklı sınıf daha olan Yönetici sınıfları yapıyorum. Bir Fabrika, Bir Kayıt Defteri, vb. Gibi Bir grup şefi, bir başka orkestra şefi gibi üst düzey bir fikir elde etmek için birlikte çalışmaya yönlendiren bir orkestra şefi gibi bir Yönetici sınıfına bakın. Bir rolü var ama içindeki diğer benzersiz rollerle çalışmak anlamına geliyor. Bir şirketin nasıl örgütlendiğini de görebilirsiniz: CEO saf verimlilik düzeyinde üretken değil, ancak o orada değilse, hiçbir şey birlikte doğru bir şekilde çalışamaz. Bu onun rolü.
Tasarlarken benzersiz rolleri tanımlayın. Ve her rol için başka rollerde kesilip kesilemeyeceğini tekrar görün. Bu şekilde, Yöneticinizin nesneler oluşturma şeklini değiştirmeye gerek duymamanız gerekiyorsa, yalnızca Fabrikayı değiştirin ve aklınızdakilere geçin.