Yalnızca bir kez başlatılacak olan bir Python sınıfı verildiğinde, yani sınıfın yalnızca bir nesnesi olacaktır. Hangi durumlarda doğrudan sınıfla çalışmak yerine tek bir sınıf örneği oluşturmanın mantıklı olduğunu merak ediyordum.
Benzer bir soru var , ama farklı bir odağı var:
- küresel değişkenleri ve fonksiyonları bir sınıfa ayırmak ve
- Python'a özgü değil. İkincisi, (Python'da) sınıfların da nesne olduğu gerçeğini dikkate almadığı anlamına gelir.
GÜNCELLEME:
Python'da, hem sınıflar hem de nesnelerle aşağıdakileri yapabilirim:
class A(object):
pass
A.some_state_var = True
# Then later
A.some_state_var = False
my_a = A()
my_a.some_state_var = True
# Then later
my_a.some_state_var = False
Yani bir sınıf ve o sınıfın bir örneği arasındaki seçim devlet (Python) hakkında nasıl görmüyorum. İkisinden biriyle durumu koruyabilirim.
Ayrıca, sınıf / sınıf örneğimi oluşturma motivasyonu bir Singleton gereksinimini uygulamakla ilgili değildir.
Ayrıca, yeni bir Tip oluşturmakla da ilgili değil.
Motivasyon, ilgili kod ve verileri gruplandırmak ve onunla bir arayüze sahip olmaktır. Bu yüzden başlangıçta bir sınıf diyagramında bir sınıf olarak modellenmiştim. Sadece uygulama söz konusu olduğunda bu sınıfı somutlaştırıp açmayacağımı merak etmeye başladım.