Самый вредный оператор — with :)
procedure TMainForm.ProcName;
begin
with Form10 do
begin
...
with TForm9.Create(nil) do
begin
...
Сaption := 'неизвестно чей';
ShowModal;
Free;
end;
end;
end;
Не знаю почему в некоторых кругах такой стиль моден.
Размер кода конечно сокращается, что полезно при распечатке на бумаге, но существенно усложняется последующий анализ, вероятнее всего где-нибудь какое-то свойство будет присвоено не тому экземпляру. Кроме того при отладке IDE без озрения совести будет показыват не те значения переменных, какие должны быть.
Если уж используете with do begin end, то в тех случаях, когда весь этот блок может быть полностью охвачен взглядом.