ГММ>Статья:
ГММ>Неудачные решения в DelphiАвтор(ы): Гумеров Максим Маратович
Дата: 07.08.2012
После приобретения прав на продукт Delphi компанией Embarcadero Technologies, примерно с 2009 года предпринимаются попытки актуализировать язык, внедрив в него возможности, недостаток которых стал ощущаться особенно сильно. Вероятно, эта совокупность нововведений укрепит позиции Delphi в качестве средства разработки, выбираемого для запуска новых проектов. На основе своего опыта работы с версиями Delphi для Win32 от Borland Delphi 3.0 до Embarcadero Delphi XE автор обозначает некоторые специфичные для Delphi трудности, которые могут встретиться при разработке новых проектов, и примеры решений, которых по определенным причинам следует избегать, и открывает исследование с целью рекомендовать обходные пути и более эффективные решения.
Зря вы назвали статью "Неудачные решения в Delphi".
Это просто особенности, которые нужно знать. Там таких еще очень много, как и в любой сложной среде разработки. Например выравнивание полей записей:
Запись в качестве ключа TDictionary.
ГММ>ProcessMessages
Лучше не использовать совсем. А если нужна кнопка "Отмена" и прогресс выполнения, то есть
IProgressDialog. Тоже конечно без проблем не обойтись, но решения описаны:
The progress dialog box object.
Кстати, сообщения WM_PAINT теперь и COM-рантайм в новых версиях Windows присылает:
WM_PAINT во время ожидания вызова COM-сервера.