Исключение EProgrammerNotFound в Delphi?

В Delphi 2009 SysUtils.pas содержит это в строке 425:

EProgrammerNotFound = class(Exception);
  • Это просто пасхальное яйцо или что-то серьезное?
  • Когда должно возникнуть это исключение?
  • Он также существует в Delphi Prism и/или Free Pascal?

Q: Этот класс исключений все еще объявлен в Delphi (в настоящее время XE7)? A: Да, и даже документально!

Нестандартный способ указания ошибок программного обеспечения.

Вы можете использовать EProgrammerNotFound в качестве альтернативы для указания программного обеспечения ошибки, обнаруженные во время выполнения.

Ответ 1

Это только результат долгого дня, и мы получили немного головокружение. На протяжении многих, многих лет (с тех пор как я был в команде) мы всегда шутили о замене некоторого сообщения об ошибке в компиляторе на одну из наиболее распространенных ошибок с похожим сообщением. Внутри мы всегда шутили и веселились у разных людей и людей (в основном на самой команде). Если у вас нет чувства юмора, вы обречены на раннюю могилу.

Это был простой разговор;

"О, вы должны были создать исключение EProgrammerNotFound в этой функции".
" LOL! Мы должны добавить это исключение и посмотреть, кто это заметит".
" Интересно, сколько будет спекуляций о том, почему оно есть?"

Итак, я думаю, все, что я могу сказать, это: "Ты все сыграл прямо в наши руки, -)... Бувахахаха! pwned!"

Ответ 2

Он используется в сочетании с технологией "исправления", которая требует, чтобы программатор был связан с файлом exe; -)

Ответ 3

Он был представлен в Delphi 2009, все еще присутствующий в Delphi 2010, и недавно получил несколько больше внимание на интернет.

Я думаю, что это пасхальное яйцо, похожее на "EBCAK "(ошибка между стулом и клавиатурой) и пропуск версии Delphi № 13.

EProgrammerNotFound

  • объявляется в ветки Win32 модуля SysUtils, но не используется нигде в RTL или VCL
  • нет в Delphi Prism
  • был представлен в Delphi 2009, поэтому не присутствует в VCL.NET
  • имеет в настоящее время (версия 3.5) ничего подобного в платформе .NET(не уверен, почему эти ребята имеют юмор)

Я не думаю, что EProgrammerNotFound на самом деле предназначен для использования вообще, но поскольку он есть, люди будут в шутку использовать его (подобно тому, как ставить бездомный "const False = True; True = not False;" у кого-то elses исходный код).

- Йерун

Ответ 4

Происхождение является спорным, но оно известно некоторое время...
Марко Канту пошутил об этом в "Fun Side of Delphi". ИМО, его следует использовать чаще ; -)

Читайте дальше: http://wings-of-wind.com/2010/01/12/best-programming-feature-ever/
http://blog.barrkel.com/2008/11/reference-counted-pointers-revisited.html

PS: Я не думаю, что он существует в Delphi Prism, FreePascal или С# (но он должен). <G>

Ответ 5

Это исполняемый аналог компилятора "Синтаксическая ошибка: ожидаемый программатор".; >

Ответ 6

С программистом, это не программист, который сидит за Delphi, на который ссылаются. Я думаю, что он используется для того, чтобы в D2009 и выше они планировали (никогда не использовали его, не знаю, работает ли он), что каждый объект был доступен.

Ответ 7

Это своего рода самооценка шутки, вы можете попробовать этот код

raise EProgrammerNotFound.Create('Jack is away');

или

raise ENotImplemented.Create('May be in future this will work');

Вышеупомянутые работы находятся в Дельфи 10 Сиэтле.

Ответ 8

Я программист, я исключение?

Марко Канту также описывает это в своей книге "Справочник Delphi 2009" - стр. 242. Он говорит, что никогда не был проиндексирован в исходном коде VCL.

Ответ 9

Кто-нибудь, пожалуйста, дайте мне руку.

_ Моя система в delphi + firebird прошла ошибку:

Ошибка Недействительная дата, пожалуйста, исправьте.

_ Я закрываю этот экран и открываю другое:

Ошибка исключения приложения EAbort в модуле SCP.exe при 006BF24C. Операция прервана.

_ Что делать, мне действительно нужна эта помощь

Ответ 10

Я думаю, что этот шаблон дизайна заслуживает официального названия. Я вижу это и здесь: YourCodeSucksException