Forum Delphi.cz

Delphi => Obecné => Téma založeno: Stanislav Hruška 18-07-2019, 21:18:46

Název: musím uviesť raise ak ho nepotrebujem?
Přispěvatel: Stanislav Hruška 18-07-2019, 21:18:46
Kód: Delphi [Vybrat]
  1. procedure TfrmsubFiSe.actDeleteExecute(Sender: TObject);
  2. const
  3.   RecordCount = 2;
  4. begin
  5. {$IF isDemo}
  6.   if adoipv(TADOTable(oGlobalVar.ActualObject.DBBasic.Dataset), RecordCount) then
  7.     Exit;
  8. {$IFEND}
  9.   try
  10.     oGlobalVar.ActualObject.DeleteRecord(True);
  11.     oGlobalVar.UpdateVSTAndCbBx.FiSe := True;  // Len v prípade úspechu. Preto try...except
  12.   except //on E: Exception do
  13. //  Mám tu uviesť raise?
  14.   end;
  15. end;
Název: Re:musím uviesť raise ak ho nepotrebujem?
Přispěvatel: Jirka 18-07-2019, 23:45:15
Zalezi co chces delat dal. Volani raise uvnitr except bloku vyvola odchycenou vyjimku vne takoveho bloku. Pokud toto nechces, raise nevolej.
vyvola odchycenou vyjimku "vne" takoveho bloku.
Jak tomu mám rozumět ?
Nemá být spíše : Vyvolá odchycenou vyjimku "uvnitr" takoveho "chráněného" bloku.
Název: Re:musím uviesť raise ak ho nepotrebujem?
Přispěvatel: pf1957 19-07-2019, 06:30:39
vyvola odchycenou vyjimku "vne" takoveho bloku.
Jak tomu mám rozumět ?
Propaguje odchycenou vyjimku dal (vne)
Název: Re:musím uviesť raise ak ho nepotrebujem?
Přispěvatel: Jirka 19-07-2019, 08:47:14
vyvola odchycenou vyjimku "vne" takoveho bloku.
Jak tomu mám rozumět ?
Propaguje odchycenou vyjimku dal (vne)
To je asi otázkou semantiky co znamená "vyvolá" a co "propaguje".
Ale mě to vysvětlení stačí  ;)
Název: Re:musím uviesť raise ak ho nepotrebujem?
Přispěvatel: Stanislav Hruška 19-07-2019, 09:55:32
Ja som sa viackrát stretol s "zdvihne/povýši výnimku". Zdá sa mi, že to je aj v manuáloch Embarcadera.
Název: Re:musím uviesť raise ak ho nepotrebujem?
Přispěvatel: Jirka 19-07-2019, 09:58:58
To je asi otázkou semantiky co znamená "vyvolá" a co "propaguje".

A jak bys prelozil sloveso raise do programatorske cestiny? Mam obavu kdybych napsal propaguje tak se nekdo zepta co to znamena ;)

Já to chápu asi takto :
Vyvolá -  definuje vzniklou vyjimku v chraněném bloku  a já si to mohu  budto ošetřit vlastní rutinou nebo nedělat nic  případně zařadit raise
Propaguje  vně (pošle vyjimku dál)  - v případě zařazení raise

Ale jak jsem psal, už chápu jak jste to mysleli  ... 
Název: Re:musím uviesť raise ak ho nepotrebujem?
Přispěvatel: pf1957 19-07-2019, 10:28:30
Osobne bych rekl, ze se vyvola (na miste vytvorena) vyjimka EMyException.
Ja to sice taky studoval z anglictiny, ale rekl bych, ze vyvola je spravny cesky termin.

V C-like jazykach to maji se throw slozitejsi, ale tam, kde se slangove pouziva
"ze to zahodi", tak mam dojem ze se to taky prekladava jako "vyvola vyjimku".
Název: Re:musím uviesť raise ak ho nepotrebujem?
Přispěvatel: Jirka 19-07-2019, 10:28:41
Pravdou je, ze jsem mel radeji napsat "Volani raise uvnitr except bloku propaguje odchycenou vyjimku vne tento blok." Omlouvam se za zmateni :)
Takto bych to pochopil hned  :).  Ale zřejmě to zmátlo jen mě  ;)
Jen na závěr debaty - význam slova propaguje je pro mě osobně úplně jiný než zde myšlený - ale nemám problém si to "přeložit"
Název: Re:musím uviesť raise ak ho nepotrebujem?
Přispěvatel: pf1957 19-07-2019, 10:35:37
Jen na závěr debaty - význam slova propaguje je pro mě osobně úplně jiný než zde myšlený - ale nemám problém si to "přeložit"
Zrejme ho vnimas jen v politickem/marketingovem smyslu, ale obecne to zmanena šíření, rozšiřování, množení, rozmnožování
Název: Re:musím uviesť raise ak ho nepotrebujem?
Přispěvatel: Stanislav Hruška 19-07-2019, 12:35:37
Tak som sa schválne pozrel do slovenského slovníka: rozširovať poznatky o niečom a odporúčať to: propagovať vegetariánsku stravu, propagovať šport
To slovo som teda takto nevnímal ;)