[Javalist] Segítség! Java7 compiler BUG???

Viczián István viczian.istvan at gmail.com
2012. Júl. 23., H, 11:02:50 CEST


Üdv,

Egy okos könyvben olvastam erre egy alternatívát, amelyik
kijelentette, hogy nem jó a return null, mint vezérlő érték, ugyanúgy,
ahogy ne adj vissza státuszkódot sem. Ehelyett egyrészt Exception-t
javasol, amit meg én nem szeretek, mert én az Exception-t mint
kivételes eseményt értelmezek, és az, hogy egy ellenőrzés elbukik, az
nem mindig kivételes esemény.
Ehelyett van egy olyan megoldás, hogy két szép metódust deklarálsz, és
úgy hívod, mert olvashatóbb a hívás helyén.

if (parameterekHibatlanok()) {
  csinaldMeg();
}

Csak mint alternatívát jelzem.

Üdv,
--
Viczián István


2012/7/22 Peter Verhas <peter at verhas.com>:
> No ha már ennyit rágjuk ezt a témát:
>
> A még egyszer ide már nem mellékelt kódot nem hirtelen felindulásból írtam.
> Először volt egy production kód, amiben felfedeztem, hogy valami nem kerek.
> Lokalizáltam a problémát, majd generáltam egy másik projektet, amelyikkel
> demonstrálni tudom. Végül a korábbi levélben mellékelt kód szintre
> egyszerűsítettem le demonstrációs céllal, hogy a levélbe be tudjam másolni.
>
> Ilyenkor azért az ennyire leegyszerűsített kódot is kipróbálom, és
> copy-paste kerül bele a levélbe, hogy ne legyen az, hogy ez nem produkálja a
> problémát, és akkor lehet azon rágódni, hogy "de nekem nem is produkálja,
> nekem meg igen".
>
> Btw: az "egy metódus egy return" ízlés kérdése is. Van amikor ettől el
> szoktam térni. Például ha van egy metódus, ami bizonyos speciális bemeneti
> értékek esetén null-t ad vissza, akkor a kód struktúrája nálam sokszor:
>
>
> modifiers metódus(paraméterek){
>
>   if( paraméterek vizsgálata azt mondja, hogy nem jók )return null;
>
>   végezzük az igazi számolást
>   return igazi eredmény;
> }
>
>
> Persze ez azonos azzal, hogy
>
> modifiers metódus(paraméterek){
>   deklaráljuk a returnVar-t;
>
>   if( paraméterek vizsgálata azt mondja, hogy nem jók )
>      returnVar = null;
>   else
>     végezzük az igazi számolást
>
>   return igazi eredmény;
> }
>
> (A {-t meg }-t ne keressétek, ez nem kód, hanem kód struktúra demo!) Ha
> production code (hobby) projektre kíváncsi valaki tőlem (mondjuk elég
> perverz), akkor aktuálisan a https://github.com/verhas/jScriptBasic
> projektet lehet nézegetni.
>
> --
> Verhás Péter
> peter at verhas.com
> +36(30)9306805
> skype: verhas
>
>
>
>
> On 2012.07.22., at 13:30, Suller Andras wrote:
>
> 2012/7/22 András Csányi <sayusi.ando at sayusi.hu>:
>
> 2012/7/22 Peter Verhas <peter at verhas.com>:
>
> Production kódban:
>
>
> - mindig be szoktam zárójelezni az if utáni utasításokat.
>
>
> - többnyire csak egy return-t használok
>
>
> - a válzotó nevek a feladatnak megfelelőek, és sokszor olyan hosszúak, hogy
>
> sonar (vagy checkstyle?) default beállításban már ugat is érte
>
>
>
> Egyéb?
>
>
> Psmith, ez egy "Nem" volt. :)
>
>
> Tudom :)
> Viszont a kerdes amit irtam 2 tagmondatbol allt, amelyen "es"-sel
> voltak osszekapcsolva. Na most ha erre "Nem" a valasz, akkor meg
> mindig kerdeses hogy melyik tagmondat a hamis ;)
>
> Andras
> _______________________________________________
> Javalist mailing list
> Javalist at lists.javaforum.hu
> http://lists.javaforum.hu/mailman/listinfo/javalist
>
>
>
> _______________________________________________
> Javalist mailing list
> Javalist at lists.javaforum.hu
> http://lists.javaforum.hu/mailman/listinfo/javalist
>


További információk a(z) Javalist levelezőlistáról