Sto rifattorizzando un grande codebase in cui la maggior parte delle classi si trova in un unico pacchetto. Per una migliore modularità, sto creando sotto-pacchetti per ogni funzionalità.
Ricordo di aver appreso da qualche parte che un grafico di dipendenza del pacchetto non dovrebbe avere cicli, ma non so come risolvere il seguente problema: Figure è nel pacchetto figure , Layout è nel pacchetto layout , Layout richiede che la figura esegua il layout, quindi il pacchetto layout dipende dal pacchetto figure . D'altro canto, un Figure può contenere al suo interno altri Figure s, con il proprio Layout , che rende il pacchetto figure dipendente dal pacchetto layout .
Tuttavia ho alcune soluzioni, come creare un'interfaccia Container che Figure implementa e inserirla nel pacchetto Layout . Questa è una buona soluzione? Altre possibilità?
Grazie