Es geht aus dem Code nicht hervor, das MyClientDataset ordentlich freigegeben wird. Um den Code zu verstehen, muss ich in fremden Code nachschauen, wobei sich hier Probleme ergeben:
* Habe ich den Quelltext? (hat nicht jeder)
* Existiert ein Manual? (ja ja, F1)
* Wird da wirklich etwas freigegeben? (hoffen wir mal)
Ich muss also ganz schöne Klimmzüge anstellen, um zu verifizieren, das das Objekt freigegeben wird. => Unnötige Arbeit => schlecht lesbar => schlecht wartbar.
Das sind nicht gerade Argumente für deine Version (aus Sicht der Lesbarkeit).
Von der Orthogonalität der verwendeten Klassen her hast Du natürlich Recht: "Das wird überall in der
VCL so gemacht, der Designer machts auch, also mach ich es auch. Und das ist auch gut so". Ein versierter Leser des Codes, der vorher anderen
VCL-Code gelesen hat, wird diese implizite (eigentlich: versteckte) Freigabe erkennen. Wir programmieren aber im Idealfall nicht für Gurus.