Wirklich nützlich wird diese Trennung erst bei zirkulären Unitreferenzen:
Delphi-Quellcode:
unit UnitA;
interface
uses UnitB;
implementation
end.
//------------------------
unit UnitB;
interface
uses UnitA;
implementation
end.
--> Gibt einen Fehler!
Indem wir die Klausel in der einen
Unit in die nächste verschieben, können wir das umgehen:
Delphi-Quellcode:
unit UnitA;
interface
uses UnitB;
implementation
end.
//------------------------
unit UnitB;
interface
implementation
uses UnitA;
end.
Das ist meines Erachtens der einzige sinnvolle Grund, die Klausel im implementation-Teil zu nutzen.
Ansonsten finde ich es schöner, alles zentral im interface-Teil zu haben, weil dann jeder Leser sofort sehen kann, welche Abängigkeiten die
Unit hat.
Dies ist aber Geschmackssache.
Einen Performance- oder Resourcenunterschied kann ich mir nicht vorstellen.