Hirdetés

Keresés

Új hozzászólás Aktív témák

  • floatr
    veterán

    Hát, én ilyen esetekben inkább kezelem a kivételt, végülis azt vállaltam az interfészen. Egyébként persze jogos, ha tudatos döntés eredménye és le is van kezelve ez a láthatatlan ág, akkor egy szavam nem lehet.

    Csak az utóbbi három alkalommal, amikor ilyet láttam, ez inkább az "elkussoltatom a fordítót, de különben szarok a hibára" szándék állt mögötte... Sőt, háromból egy az Xtend által generált csodás Java kód volt, úgyhogy sehol egy warning (@SuppressWarnings("all")), vagy egy ellenőrzött kivétel.

    Menet közben beugrott a triviális eset, amikor kell runtime kivétel. Van egy alkalmazásod, amihez AOP-t kell használni (pl. tranzakciókezelés, jogosultságkezelés). A megpatkolt metódusod nem tudhat róla, hogy milyen egyéb mechanizmusok ülnek a nyakába, ezért deklaráltan nem dobhat rajta kívül álló extra kivételeket -- ez sértené is a szuverenitási elvet. Ellenben az advise végrehajtása közben történhetnek olyan dolgok, amikor nem tudsz egyebet csinálni, mint dobni egy kivételt -- pl jogosulatlan hozzáférés esetén. Ezt a kivételt nem tudod sehol sem deklarálni, ezért nem ellenőrzött formában dobod el, amit max a framework konténere láthat

  • WonderCSabo
    félisten

    Hát, én ilyen esetekben inkább kezelem a kivételt, végülis azt vállaltam az interfészen. Egyébként persze jogos, ha tudatos döntés eredménye és le is van kezelve ez a láthatatlan ág, akkor egy szavam nem lehet.

    Csak az utóbbi három alkalommal, amikor ilyet láttam, ez inkább az "elkussoltatom a fordítót, de különben szarok a hibára" szándék állt mögötte... Sőt, háromból egy az Xtend által generált csodás Java kód volt, úgyhogy sehol egy warning (@SuppressWarnings("all")), vagy egy ellenőrzött kivétel.

    Értem, ilyen esetben tényleg tilos ezt hasznalni.

    floatr: Kifejtenéd a genericses utalásodat? A sima type erasurre gondolsz, és az ezzel járó rengeteg megkötéssel és rugalmatlnasággal pl a cpp megoldashoz képest?

Új hozzászólás Aktív témák