"Pokud tvrdíte, že to jak jsou napsana Dema a jak je napsano VCL je svaté a bez chyb" Kdo to tvrdí?
"A to, že autoři umí programovat?" Můj názor je ten, že programovat umí. Jestli Vám z uvedených příkladů vyplývá, že tomu tak není, je to Váš názor. O tom ale diskuse není.
"To, že je to uvedeno v jednom demu neznamená, že je to správně a závazné. Ale ani to neznamená, že je to špatně. To jsem netvrdil." Já s Vámi plně souhlasím. Pokud tedy netvrdíte, že je to špatně, pak to asi bude dobře. Podle Vás je to tedy dobře a evidentně se nejedná o "přerušení" programu, ale o jeho normální ukončení. Pak mi promiňte, ale dost silně si protiřečíte.
"pravidelné používání Terminate místo Close hlavního formuláře může začátečníkovi způsobit více problémů než Close, až se bude divit, proč se mu nevykoná kód třeba v OnClose". Až se začátečník bude při ladění divit, proč se nevykoná kód v OnClose, patrně se podívá, kde se aplikace ukončuje. Uvidí-li Application.Terminate, bude mu hned vše jasné (předpokládám, že samozřejmě ví, jak která metoda funguje, protože bez znalosti funkce použitých metod nemůže programovat). Souhlasím s Vámi, že toto by si mohl ušetřit tím, že by aplikaci uzavřel Close.
Zaujalo mě např. použití Application.Terminate tam, kde nemáte formulář. Ne, že by tyto aplikace byly časté, ale jak je potom normálně ukončujete? Zřejmě Application.Terminate. Můžete to nazývat klidně "přerušení aplikace", já to nazývám "normální ukončení". A o tom to je.