Nicht grundlos schrieb ich "Sinnvoll angewandt" ! Bei komplexen Strukturen würde ich das nie machen und wahrscheinlich sogar eher was in Unterprozeduren auslagern. Wenn man sich aber z.B. auf eine Komponente bezieht und dann beispielsweise schreibt "with StringGrid do begin" gibt das mehr Sinn, als jedesmal "StringGrid" davor zu schreiben. Vor allem bei vollständig gekapselten, kompakten Methoden ...
Aber jeder wie er mag und es ihm sinnvoll scheint. Mich hat eigentlich eher gestört, daß jemand einem anderen indirekt Vorschriften machen will, nur weil ihm selbst was mißfällt. Solange etwas programmiertechnisch umsetzbar ist, sind selbst die umständlichsten Methoden zielführend. Wirklich von Interesse sollte für uns doch letztlich nur sein, was schneller zum Erfolg führt. Wer umständlich programmiert und dann Vorschläge für kürzere unmd übersichtlichere Lösunmgsansätze findet, wird immer dafür dankbar sein.
Auch wenn das nicht ganz hierher gehört :
Mit Schrecken denke ich gerade an die Leute, die sich über lange Assembler-Quelltexte aufgeregt haben und sich dann wunderten, daß ihre absurden Quelltexte aus C-Abarten im Gegensatz zu reinen Assembler-Lösungen extrem aufgeblähte EXE-Dateien ergaben. Ich vergleiche das jetzt einfach mal mit den aufgeblähten Ergebnissen, die das unflexible Lazarus zuwege bringt - so daß ich lieber bei meinem bewährten Delphi 5 blieb. (Aktuelle Delphi-Versionene sind mir einfach zu teuer.)
Nachtrag : Wer seine Quelltexte nicht ausreichend kommentiert, kann natürlich leicht Schwierigkeiten bei der Fehlersuche bekommen. Gegliederte Strukturen kommentiere ich z.B. so :
Delphi-Quellcode:
// procedure xy
procedure xy;
var
...
begin { Procedure xy }
with bla do begin // with bla
end; // with bla
end; { Procedure xy }
// nächste Prozedur oder was auch immer
...