То, о чем я говорю, это вложенные классы. По сути, у меня есть два класса, которые я моделирую. Класс DownloadManager и класс DownloadThread. Очевидная концепция ООП - это композиция. Однако состав не обязательно означает вложенность, правильно?
У меня есть код, который выглядит примерно так:
class DownloadThread:
def foo(self):
pass
class DownloadManager():
def __init__(self):
dwld_threads = []
def create_new_thread():
dwld_threads.append(DownloadThread())
Но теперь мне интересно, есть ли ситуация, когда гнездование будет лучше. Что-то вроде:
class DownloadManager():
class DownloadThread:
def foo(self):
pass
def __init__(self):
dwld_threads = []
def create_new_thread():
dwld_threads.append(DownloadManager.DownloadThread())