No Delphi 2009, o SysUtils.pas contém isso na linha 425:
EProgrammerNotFound = class(Exception);
- Isso é simplesmente um ovo de páscoa ou algo sério?
- Quando essa exceção deve ser levantada?
- Também existe no Delphi Prism e / ou Free Pascal?
P: Essa classe de exceção ainda está declarada no Delphi (atualmente XE7)? A: Sim, e até está documentado !
Maneira não padrão de indicar falhas de software.
Você pode usar o EProgrammerNotFound como uma alternativa para indicar falhas de software detectadas no tempo de execução.
Respostas:
É apenas o resultado de um longo dia e ficamos um pouco tontos. Por muitos e muitos anos (desde que eu fazia parte da equipe), sempre brincávamos em substituir alguma mensagem de erro no compilador por um dos erros mais comuns por uma mensagem semelhante. Internamente, sempre brincamos e zombamos de coisas e pessoas diferentes (principalmente do próprio time). Se você não tem senso de humor, está destinado a um túmulo precoce.
Foi uma conversa simples;
"Ah, você deveria ter gerado a exceção EProgrammerNotFound nessa função."
"LOL! Devemos adicionar essa exceção e ver quem nota."
"Eu me pergunto quanta especulação haverá sobre o porquê de estar lá?"
Então, acho que tudo o que posso dizer é: "Vocês todos jogaram direto em nossas mãos; -) ... Buwahahaha! Pwned!"
fonte
ENotImplemented
exceção.EProgrammerException
. Eu estava digitando o código para concluirEProgr...
quando o insight do código me mostrouEProgrammerNotFound
. Infelizmente eu não posso usarEProgrammerNotFound
, como meuEProgrammerException
descendeEInvisibleException
; pois isso significava um cruzamento entre uma falha de declaração e umaEAbort
exceção (eu peguei um programador estragando algo e vou parar por aqui).É usado em conjunto com a tecnologia "fix-inline", que requer que o programador seja vinculado ao arquivo exe ;-)
fonte
Foi introduzido no Delphi 2009, ainda presente no Delphi 2010, e recentemente recebeu mais atenção na internet .
Eu acho que é um ovo de páscoa, semelhante ao " EBCAK " (erro entre cadeira e teclado), e o pulo da versão número 13 do Delphi .
EProgrammerNotFound
Eu não acho que o EProgrammerNotFound realmente seja para ser usado, mas como ele está lá, as pessoas o brincam (de forma semelhante a colocar um "const False = True; True = not False;" perdido em alguém do código fonte).
--jeroen
fonte
A origem é discutível, mas já é conhecida há um tempo ...
Marco Cantu brincou sobre isso em uma sessão "Fun Side of Delphi".
IMO, deve ser usado com mais frequência ;-)
Leia em:
http://wings-of-wind.com/2010/01/12/best-programming-feature-ever/
http://blog.barrkel.com/2008/11/reference-counted-pointers-revisited .html
PS: Eu não acho que exista no Delphi Prism, FreePascal ou C # (mas deveria).
<G>
fonte
É o análogo do tempo de execução do "Erro de sintaxe: o programador é esperado". ;>
fonte
É uma espécie de piada auto-descritiva, você pode tentar este código
ou
O acima funciona em Delphi 10 Seattle.
fonte
Com o programador, não é o programador que está sentado atrás do Delphi que é referenciado. Eu acho que é usado pelo fato de que no D2009 e acima eles planejaram (nunca usaram, não sabem se funciona) que todos os objetos eram esperáveis.
fonte
TMonitor.Enter
eTMonitor.Exit
. E eu não tenho certeza se é um ovo de Páscoa ou não ...Eu sou um programador, sou uma exceção do que?
Marco Cantù também descreve isso em seu livro 'Manual do Delphi 2009' - página 242. Ele diz que nunca foi usado no código-fonte da VCL.
fonte