Trotzdem wäre es meiner Meinung nach schöner und übersichtlicher, wenn die Units nur einmal im gesamten Projekt per Uses eingebunden werden und dann allen Unterprogrammen bekannt wären.
Übersichtlicher? Wenn du z.B. 10.000 Units hast und die alle in einer einzigen
Unit eingebunden werden z.B., so dass niemand weiß welche
Unit nun wirklich welche benötigt?
Ich glaube du stellst dir das ganze gerade für sehr kleine Projekte vor. Überlege einmal was das für größere Projekte heißt, an denen viele Personen arbeiten.
Das widerspräche auch schon der Kapselung der einzelnen Teile einer Software. Im Gegenteil ist es besser, je weniger die einzelnen Teile voneinander abhängen und voneinander wissen, da man sonst kaum sinnvolle
Unit- und Integrationstests durchführen kann.
Davon ganz abgesehen solltest du dir einmal anschauen wie der Compiler die
Unit-Hierarchien parst und kompiliert. Das würde so nämlich gar nicht umsetzbar sein. Das geht schon beim Ausführen der initialization Abschnitte in der richtigen Reihenfolge los...