Quello di cui sto parlando qui sono classi annidate. In sostanza, ho due classi che sto modellando. Una classe DownloadManager e una classe DownloadThread. L'ovvio concetto di OOP qui è la composizione. Tuttavia, composizione non significa necessariamente nidificazione, giusto?
Ho un codice che assomiglia a questo:
class DownloadThread:
def foo(self):
pass
class DownloadManager():
def __init__(self):
dwld_threads = []
def create_new_thread():
dwld_threads.append(DownloadThread())
Ma ora mi chiedo se ci sia una situazione in cui la nidificazione sarebbe migliore. Qualcosa di simile a:
class DownloadManager():
class DownloadThread:
def foo(self):
pass
def __init__(self):
dwld_threads = []
def create_new_thread():
dwld_threads.append(DownloadManager.DownloadThread())